SKOS | |
Long Name: | Simple Knowledge Organization System |
Status: | Published (W3C Recommendation) |
Version: | Core, Reference, RDF, Primer |
Organization: | World Wide Web Consortium (W3C) |
Committee: | Semantic Web Deployment Working Group |
Base Standards: | RDF |
Related Standards: | RDFa, OWL, ISO 25964, Dublin Core |
Abbreviation: | SKOS |
Domain: | Semantic Web |
Authors: | Alistair Miles, Sean Bechhofer |
Simple Knowledge Organization System (SKOS) is a W3C recommendation designed for representation of thesauri, classification schemes, taxonomies, subject-heading systems, or any other type of structured controlled vocabulary. SKOS is part of the Semantic Web family of standards built upon RDF and RDFS, and its main objective is to enable easy publication and use of such vocabularies as linked data.
The most direct ancestor to SKOS was the RDF Thesaurus work undertaken in the second phase of the EU DESIRE project . Motivated by the need to improve the user interface and usability of multi-service browsing and searching, a basic RDF vocabulary for Thesauri was produced. As noted later in the SWAD-Europe workplan, the DESIRE work was adopted and further developed in the SOSIG and LIMBER projects. A version of the DESIRE/SOSIG implementation was described in W3C's QL'98 workshop, motivating early work on RDF rule and query languages: A Query and Inference Service for RDF.[1]
SKOS built upon the output of the Language Independent Metadata Browsing of European Resources (LIMBER) project funded by the European Community, and part of the Information Society Technologies programme. In the LIMBER project CCLRC further developed an RDF thesaurus interchange format[2] which was demonstrated on the European Language Social Science Thesaurus (ELSST) at the UK Data Archive as a multilingual version of the English language Humanities and Social Science Electronic Thesaurus (HASSET) which was planned to be used by the Council of European Social Science Data Archives CESSDA.
SKOS as a distinct initiative began in the SWAD-Europe project, bringing together partners from both DESIRE, SOSIG (ILRT) and LIMBER (CCLRC) who had worked with earlier versions of the schema. It was developed in the Thesaurus Activity Work Package, in the Semantic Web Advanced Development for Europe (SWAD-Europe) project.[3] SWAD-Europe was funded by the European Community, and part of the Information Society Technologies programme. The project was designed to support W3C's Semantic Web Activity through research, demonstrators and outreach efforts conducted by the five project partners, ERCIM, the ILRT at Bristol University, HP Labs, CCLRC and Stilo. The first release of SKOS Core and SKOS Mapping were published at the end of 2003, along with other deliverables on RDF encoding of multilingual thesauri[4] and thesaurus mapping.[5]
Following the termination of SWAD-Europe, SKOS effort was supported by the W3C Semantic Web Activity[6] in the framework of the Best Practice and Deployment Working Group.[7] During this period, focus was put both on consolidation of SKOS Core, and development of practical guidelines for porting and publishing thesauri for the Semantic Web.
The SKOS main published documents — the SKOS Core Guide,[8] the SKOS Core Vocabulary Specification,[9] and the Quick Guide to Publishing a Thesaurus on the Semantic Web[10] — were developed through the W3C Working Draft process. Principal editors of SKOS were Alistair Miles,[11] initially Dan Brickley, and Sean Bechhofer.
The Semantic Web Deployment Working Group,[12] chartered for two years (May 2006 – April 2008), put in its charter to push SKOS forward on the W3C Recommendation track. The roadmap projected SKOS as a Candidate Recommendation by the end of 2007, and as a Proposed Recommendation in the first quarter of 2008. The main issues to solve were determining its precise scope of use, and its articulation with other RDF languages and standards used in libraries (such as Dublin Core).[13] [14]
On August 18, 2009, W3C released the new standard that builds a bridge between the world of knowledge organization systems – including thesauri, classifications, subject headings, taxonomies, and folksonomies – and the linked data community, bringing benefits to both. Libraries, museums, newspapers, government portals, enterprises, social networking applications, and other communities that manage large collections of books, historical artifacts, news reports, business glossaries, blog entries, and other items can now use SKOS[15] to leverage the power of linked data.
SKOS was originally designed as a modular and extensible family of languages, organized as SKOS Core, SKOS Mapping, and SKOS Extensions, and a Metamodel. The entire specification is now complete within the namespace http://www.w3.org/2004/02/skos/core#.
In addition to the reference itself, the SKOS Primer (a W3C Working Group Note) summarizes the Simple Knowledge Organization System.
The SKOS[16] defines the classes and properties sufficient to represent the common features found in a standard thesaurus. It is based on a concept-centric view of the vocabulary, where primitive objects are not terms, but abstract notions represented by terms. Each SKOS concept is defined as an RDF resource. Each concept can have RDF properties attached, including:
Concepts can be organized in hierarchies using broader-narrower relationships, or linked by non-hierarchical (associative) relationships.Concepts can be gathered in concept schemes, to provide consistent and structured sets of concepts, representing whole or part of a controlled vocabulary.
The principal element categories of SKOS are concepts, labels, notations, documentation, semantic relations, mapping properties, and collections. The associated elements are listed in the table below.
Concept | prefLabel | note | broader | broadMatch | Collection |
ConceptScheme | altLabel | changeNote | narrower | narrowMatch | orderedCollection |
inScheme | hiddenLabel | definition | related | relatedMatch | member |
hasTopConcept | notation | editorialNote | broaderTransitive | closeMatch | memberList |
topConceptOf | example | narrowerTransitive | exactMatch | ||
historyNote | semanticRelation | mappingRelation | |||
scopeNote | |||||
The SKOS vocabulary is based on concepts. Concepts are the units of thought—ideas, meanings, or objects and events (instances or categories)—which underlie many knowledge organization systems. As such, concepts exist in the mind as abstract entities which are independent of the terms used to label them. In SKOS, a Concept
(based on the OWL Class
) is used to represent items in a knowledge organization system (terms, ideas, meanings, etc.) or such a system's conceptual or organizational structure.[17]
A ConceptScheme
is analogous to a vocabulary, thesaurus, or other way of organizing concepts. SKOS does not constrain a concept to be within a particular scheme, nor does it provide any way to declare a complete scheme—there is no way to say the scheme consists only of certain members. A topConcept is (one of) the upper concept(s) in a hierarchical scheme.
Each SKOS label
is a string of Unicode characters, optionally with language tags, that are associated with a concept. The prefLabel
is the preferred human-readable string (maximum one per language tag), while altLabel
can be used for alternative strings, and hiddenLabel
can be used for strings that are useful to associate, but not meant for humans to read.
A SKOS notation
is similar to a label, but this literal string has a datatype, like integer, float, or date; the datatype can even be made up (see 6.5.1 Notations, Typed Literals and Datatypes in the SKOS Reference). The notation is useful for classification codes and other strings not recognizable as words.
The Documentation or Note properties provide basic information about SKOS concepts. All the concepts are considered a type of skos:note
; they just provide more specific kinds of information. The property definition
, for example, should contain a full description of the subject resource. More specific note types can be defined in a SKOS extension, if desired. A query for <A> skos:note ?
will obtain all the notes about <A>, including definitions, examples, and scope, history and change, and editorial documentation.
Any of these SKOS Documentation properties can refer to several object types: a literal (e.g., a string); a resource node that has its own properties; or a reference to another document, for example using a URI. This enables the documentation to have its own metadata, like creator and creation date.
Specific guidance on SKOS documentation properties can be found in the SKOS Primer Documentary Notes.
SKOS semantic relations are intended to provide ways to declare relationships between concepts within a concept scheme. While there are no restrictions precluding their use with two concepts from separate schemes, this is discouraged because it is likely to overstate what can be known about the two schemes, and perhaps link them inappropriately.
The property related
simply makes an association relationship between two concepts; no hierarchy or generality relation is implied. The properties broader
and narrower
are used to assert a direct hierarchical link between two concepts. The meaning may be unexpected; the relation <A> broader <B>
means that A has a broader concept called B—hence that B is broader than A. Narrower follows in the same pattern.
While the casual reader might expect broader and narrower to be transitive properties, SKOS does not declare them as such. Rather, the properties broaderTransitive
and narrowerTransitive
are defined as transitive super-properties of broader and narrower. These super-properties are (by convention) not used in declarative SKOS statements. Instead, when a broader or narrower relation is used in a triple, the corresponding transitive super-property also holds; and transitive relations can be inferred (and queried) using these super-properties.
SKOS mapping properties are intended to express matching (exact or fuzzy) of concepts from one concept scheme to another, and by convention are used only to connect concepts from different schemes. The concepts relatedMatch
, broadMatch
, and narrowMatch
are a convenience, with the same meaning as the semantic properties related
, broader
, and narrower
. (See previous section regarding the meanings of broader and narrower.)
The property relatedMatch
makes a simple associative relationship between two concepts. When concepts are so closely related that they can generally be used interchangeably, exactMatch
is the appropriate property (exactMatch
relations are transitive, unlike any of the other Match relations). The closeMatch
property that indicates concepts that only sometimes can be used interchangeably, and so it is not a transitive property.
The concept collections (Collection
, orderedCollection
) are labeled and/or ordered (orderedCollection
) groups of SKOS concepts. Collections can be nested, and can have defined URIs or not (which is known as a blank node). Neither a SKOS Concept
nor a ConceptScheme
may be a Collection, nor vice versa; and SKOS semantic relations can only be used with a Concept (not a Collection). The items in a Collection can not be connected to other SKOS Concepts through the Collection node; individual relations must be defined to each Concept in the Collection.
All development work is carried out via the mailing list which is a completely open and publicly archived[18] mailing list devoted to discussion of issues relating to knowledge organisation systems, information retrieval and the Semantic Web. Anyone may participate informally in the development of SKOS by joining the discussions on public-esw-thes@w3.org – informal participation is warmly welcomed. Anyone who works for a W3C member organisation may formally participate in the development process by joining the Semantic Web Deployment Working Group – this entitles individuals to edit specifications and to vote on publication decisions.
There are publicly available SKOS data sources.
The SKOS metamodel is broadly compatible with the data model of ISO 25964-1 – Thesauri for Information Retrieval. This data model can be viewed and downloaded from the website for ISO 25964.[40]
SKOS development has involved experts from both RDF and library community, and SKOS intends to allow easy migration of thesauri defined by standards such as NISO Z39.19 – 2005[41] or ISO 25964.
SKOS is intended to provide a way to make a legacy of concept schemes available to Semantic Web applications, simpler than the more complex ontology language, OWL. OWL is intended to express complex conceptual structures, which can be used to generate rich metadata and support inference tools. However, constructing useful web ontologies is demanding in terms of expertise, effort, and cost. In many cases, this type of effort might be superfluous or unsuited to requirements, and SKOS might be a better choice. The extensibility of RDF makes possible further incorporation or extension of SKOS vocabularies into more complex vocabularies, including OWL ontologies.