oml icon indicating copy to clipboard operation
oml copied to clipboard

OML needs to support the creation of defined classes

Open mprather opened this issue 2 years ago • 1 comments

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

mprather avatar Oct 05 '22 04:10 mprather

This ability is coming up in OML v2 (https://www.opencaesar.io/projects/2023-2-1-OML-v2.html).

In particular, you will be able to specify the following:

concept Sailboat = Boat [
    restricts ...
]

This says that Sailboat is equivalent to the intersection of Boat and the restriction.

melaasar avatar Mar 22 '23 19:03 melaasar