SKOS concepts and OWL classes

SKOS is an RDF/OWL vocabulary. The SKOS schema defines skos:Concept is defined as an OWL class:

    skos:Concept rdf:type owl:Class .
    ex:Painting rdf:type skos:Concept .

Thus, instances of skos:concept (e.g. ex:Painting in a art vocabulary) are in OWL terms individuals. This raises the question whether a SKOS instance such as ex:Painting can be treated as a class in its own right. For example, can users define properties of ex:painting such as ex:title:

    ex:title rdf:type owl:DatatypeProperty .
    ex:title rdfs:domain ex:Painting .

One might ask the question: why would someone want to do this? Well, conceptually a class such as skos:Concept is a metaclass: its instances are the concepts occurring in a vocabulary. So, it is conceivable that SKOS users want to specify class-level characteristics of SKOS concepts, for example that paintings have titles or that cheese has a country of origin.

It should be pointed out that SKOS does not take a stance with respect to the flavor of OWL to be used together with SKOS. OWL Full users will be able to handle the situation above by treating skos:Concept explicitly as a metaclass, e.g. by adding the statement of the form:

    skos:Concept rdfs:subClassOf owl:Class .

In OWL Full owl:Class and rdfs:Class are equivalent, so using the latter would have had the same meaning.

Instances of owl:Class are classes, so we can treat ex:Painting now as both a class and an individual. OWL Full does not require the sets of classes and individuals to be disjoint. People who wish to use the DL flavor of OWL cannot use the metamodeling mechanism, as the disjointness condition between classes and individuals must hold for any OWL DL ontology. It However, it should be pointed out that the (at the time of writing) recently started OWL 1.1 Working Group is chartered to handle (some forms of forms of metamodelling) within a description-logic framework.

Summarizing, the relationship between SKOS concepts and OWL classes/individuals is as follows: