A property with a Transitive stereotype
Ontology(<http://example.com/ontology/Transitive> Declaration(Class(:BiologicalMother)) Declaration(Class(:Mary)) Declaration(ObjectProperty(:hasBiologicalGrandmother)) Declaration(ObjectProperty(:hasBiologicalMother)) ############################ # Object Properties ############################ # Object Property: :hasBiologicalGrandmother (has biological grandmother) AnnotationAssertion(rdfs:label :hasBiologicalGrandmother "has biological grandmother"^^xsd:string) TransitiveObjectProperty(:hasBiologicalGrandmother) ObjectPropertyDomain(:hasBiologicalGrandmother :Mary) ObjectPropertyRange(:hasBiologicalGrandmother :BiologicalMother) # Object Property: :hasBiologicalMother (has biological mother) AnnotationAssertion(rdfs:label :hasBiologicalMother "has biological mother"^^xsd:string) FunctionalObjectProperty(:hasBiologicalMother) ObjectPropertyDomain(:hasBiologicalMother ObjectUnionOf(:BiologicalMother :Mary)) ObjectPropertyRange(:hasBiologicalMother :BiologicalMother) ############################ # Classes ############################ # Class: :BiologicalMother (Biological Mother) AnnotationAssertion(rdfs:label :BiologicalMother "Biological Mother"^^xsd:string) SubClassOf(:BiologicalMother ObjectExactCardinality(1 :hasBiologicalMother)) # Class: :Mary (:Mary) SubClassOf(:Mary ObjectExactCardinality(1 :hasBiologicalGrandmother)) SubClassOf(:Mary ObjectExactCardinality(1 :hasBiologicalMother)) )