-
Notifications
You must be signed in to change notification settings - Fork 311
Open
Description
This issue is about inconsistent behavior when using ObjectInverseOf in OWL functional syntax.
I'm on ROBOT version v1.9.7 / OWL API v.5.29
Examples
Explicit type declaration inside SubObjectPropertyOf
# test1.ofn
Prefix(a:=<https://example.org/a:>)
Ontology(<https://example.org/ontology_2.ofn>
SubObjectPropertyOf(a:ope1 ObjectInverseOf(a:ope2))
)
generates the following turtle with robot convert -i test1.ofn -o test1.ttl (note, this output is abridged to the relevant parts):
# test1.ttl
a:ope1 rdf:type owl:ObjectProperty ;
rdfs:subPropertyOf [ owl:inverseOf a:ope2
] .
a:ope2 rdf:type owl:ObjectProperty .
No explicit type declaration inside EquivalentObjectProperties
# test2.ofn
Prefix(a:=<https://example.org/a:>)
Ontology(<https://example.org/ontology_1.ofn>
EquivalentObjectProperties(a:ope1 ObjectInverseOf(a:ope2))
)
generates the following turtle with robot convert -i test2.ofn -o test2.ttl (note, this output is abridged to the relevant parts):
# test2.ttl
a:ope1 rdf:type owl:ObjectProperty ;
owl:equivalentProperty [ owl:inverseOf a:ope2
] .
Desired Behavior
I would like the EquivalentObjectProperties to also output a:ope2 rdf:type owl:ObjectProperty .. More generally, I would like to assume any time ObjectInverseOf(a:ope2) is used, regardless of where in the structure, that this type declaration gets made
Metadata
Metadata
Assignees
Labels
No labels