Search code examples
alignmentrdfsemantic-webowlontology

Using OWL to assign classes from properties


Is it possible to represent with OWL(Web Ontology Language) something like this: All resources at the end of a specific property are a specific class.

Example by using Vehicle Sales Ontology:

All resources at the end of vso:height are also a class ex:Height :

ex:ModelA vso:height [ a ex:SomeRandomClass . ]


Solution

  • The simplest way would be to use rdfs:range to achieve this.

    Example, consider the following OWL knowledge base (pseudo Manchester syntax):

    ObjectProperty: has-height
        Range: Height
    
    Class: Height
    
    Individual: heightA
    
    Individual: modelA
        Facts: has-height heightA
    

    When a reasoner is run over it, it will deduce that the individual heightA has rdf:type Height (in other words heightA a Height).

    Alternatively, a more expressive solution can be based on existential quantifications. See example by following the link.