owlbidirectionalobject-property

OWL object property bidirectionel


I need to say that an object property is bidirectionnel. I know that we can use the inverseOf attribute to link 2 property but is it possible to say that the inverseOf an objectProperty is himself?

<owl:ObjectProperty rdf:about="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo">
    <owl:inverseOf rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
</owl:ObjectProperty>

Or I have to do so :

<owl:Class rdf:about="http://micorr.ig.he-arc.ch/vocab#artefacts_alloy">
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
            <owl:allValuesFrom rdf:resource="http://micorr.ig.he-arc.ch/vocab#artefacts_metal"/>
        </owl:Restriction>
    </rdfs:subClassOf>
</owl:Class>

<owl:Class rdf:about="http://micorr.ig.he-arc.ch/vocab#artefacts_metal">
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
            <owl:allValuesFrom rdf:resource="http://micorr.ig.he-arc.ch/vocab#artefacts_alloy"/>
        </owl:Restriction>
    </rdfs:subClassOf>
</owl:Class>

Thanks for your help.


Solution

  • You can indeed make a property the inverse of itself, that's fine. However, a more explicit way of expressing that a relation is bidirectional is by defining the property being symmetrical:

    <owl:SymmetricProperty rdf:about="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>