As a vocabulary developer, I would like to use class expressions to express semantics more precisely.
Detailed Description
Case I
If hasLevel is a string-valued scalar property and System is an aspect or concept, the OML notation
aspect System [
restricts scalar property hasLevel to "system"
]
ensures that every individual of type System will have "system" as the value of hasLevel. There is no notation, however, to express the converse, i.e., that every individual with hasLevel "system" is a System.
Case II
The OML notation
aspect SubsystemOrAbove
aspect System :> SubsystemOrAbove
aspect Subsystem :> SubsystemOrAbove
indicates that SubsystemOrAbove is a superclass of both System and Subsystem (and consequently of their union). There is no notation, however, to say that SubsystemOrAboveis the union of System and Subsystem.
Discussion
We should consider adding support for the full range of class expressions in OWL 2. We might not allow anonymous expressions every place OWL 2 does (e.g., property domains), but they are useful for range restrictions.
Acceptance Criteria
[ ] Ability to define class expressions in OML
[ ] Ability to employ class expressions in selected OML axioms
User Story
As a vocabulary developer, I would like to use class expressions to express semantics more precisely.
Detailed Description
Case I
If
hasLevel
is a string-valued scalar property andSystem
is an aspect or concept, the OML notationensures that every individual of type
System
will have "system" as the value ofhasLevel
. There is no notation, however, to express the converse, i.e., that every individual withhasLevel
"system" is aSystem
.Case II
The OML notation
indicates that
SubsystemOrAbove
is a superclass of bothSystem
andSubsystem
(and consequently of their union). There is no notation, however, to say thatSubsystemOrAbove
is the union ofSystem
andSubsystem
.Discussion
We should consider adding support for the full range of class expressions in OWL 2. We might not allow anonymous expressions every place OWL 2 does (e.g., property domains), but they are useful for range restrictions.
Acceptance Criteria
Sub-task List