-
Notifications
You must be signed in to change notification settings - Fork 6
Description
User Story
OWL supports 3 kinds of classes: primitive, defined, and anonymous. Anonymous classes are created as needed by reasoners (and not relevant to this issue).
OML only directly supports primitive. There is no support for defined classes.
Detailed Description
Various upper ontologies as well as custom topologies often use defined classes. OML needs a way to allow users to create defined classes (which use the owl:equivalentClass instead of owl:subClassOf element).
<owl:Class rdf:about="http://fqdn/example#Sailboat">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://fqdn/example#Boat"/>
<owl:Restriction>
/* restriction omitted for clarity */
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
In order to make OML (and openCAESAR) easier to adopt, OWL users will most likely expect the ability to create the same OWL constructs using OML as they would if they had directly authored items in OWL. Otherwise, reliance on upper topologies will be seen as a major blocker to the adoption of OML.
References
https://en.wikipedia.org/wiki/Upper_ontology
https://www.w3.org/2003/01/owl-guide/Overview.html#owl_equivalentClass
https://drive.google.com/file/d/1A3Y8T6nIfXQ_UQOpCAr_HFSCwpTqELeP/view