-
Notifications
You must be signed in to change notification settings - Fork 2
2.2. Possible Expressions for each Type of Descriptor
We use the term expression to be in line with the following W3C publication. The publication presents the semantics of all possible axioms in OWL-DL, i.e, class expression axioms, object property expression axioms, data property expression axioms and individual expression axioms (also known as, assertions).
In OWLOOP, for each type of Descriptor, there are a few possible expressions that can be associated. This aspect is shown in the following tables:
For a Class Descriptor these are the possible expressions:
Ground | Expression | EntitySet |
---|---|---|
OWLClass |
Equivalent (semantic: isEquivalentTo) |
set of OWLClass
|
OWLClass |
Disjoint (semantic: isDisjointWith) |
set of OWLClass
|
OWLClass |
Sub (semantic: isSubClassOf) |
set of OWLClass
|
OWLClass |
Super (semantic: isSuperClassOf) |
set of OWLClass
|
OWLClass |
Instance (semantic: hasAnInstance) |
set of OWLNamedIndividual
|
OWLClass |
Definition (semantic: hasADefinition) |
set of SemanticRestriction (some, only, exactly, min, max) |
For an ObjectProperty Descriptor these are the possible expressions:
Ground | Expression | EntitySet |
---|---|---|
OWLObjectProperty |
Equivalent (semantic: isEquivalentTo) |
set of OWLObjectProperty
|
OWLObjectProperty |
Disjoint (semantic: isDisjointWith) |
set of OWLObjectProperty
|
OWLObjectProperty |
Sub (semantic: isSubClassOf) |
set of OWLObjectProperty
|
OWLObjectProperty |
Super (semantic: isSuperClassOf) |
set of OWLObjectProperty
|
OWLObjectProperty |
Domain (semantic: hasDomain) |
set of SemanticRestriction (Some, Only, Exactly, Min, Max) |
OWLObjectProperty |
Range (semantic: hasRange) |
set of SemanticRestriction (Some, Only, Exactly, Min, Max) |
OWLObjectProperty |
Inverse (semantic: isInverseOf) |
set of OWLObjectProperty
|
For a DataProperty Descriptor these are the possible expressions:
Ground | Expression | EntitySet |
---|---|---|
OWLDataProperty |
Equivalent (semantic: isEquivalentTo) |
set of OWLDataProperty
|
OWLDataProperty |
Disjoint (semantic: isDisjointWith) |
set of OWLDataProperty
|
OWLDataProperty |
Sub (semantic: isSubClassOf) |
set of OWLDataProperty
|
OWLDataProperty |
Super (semantic: isSuperClassOf) |
set of OWLDataProperty
|
OWLDataProperty |
Domain (semantic: hasDomain) |
set of SemanticRestriction (Int, Bool, String, Double, Float, Long) |
OWLDataProperty |
Range (semantic: hasRange) |
set of SemanticRestriction (Int, Bool, String, Double, Float, Long) |
For an Individual Descriptor these are the possible expressions:
Ground | Expression | EntitySet |
---|---|---|
OWLNamedIndividual |
Equivalent (semantic: isEquivalentTo) |
set of OWLNamedIndividual
|
OWLNamedIndividual |
Disjoint (semantic: isDisjointWith) |
set of OWLNamedIndividual
|
OWLNamedIndividual |
Type (semantic: isSubClassOf) |
set of OWLClass
|
OWLNamedIndividual |
ObjectLink (semantic: isSuperClassOf) |
OWLObjectProperty and set of OWLNamedIndividual
|
OWLNamedIndividual |
DataLink (semantic: hasDomain) |
OWLDataProperty and set of OWLNamedIndividual
|
Each type of descriptor can implement one or more expressions. This flexibility in creating a descriptor, enables the developer to have control over the number of axioms being synchronized between the internal state of a descriptor and in-memory representation of an OWL ontology. This way the developer deals with only that knowledge (from an ontology) that is interesting for the application at hand.
You may want to use Protege to add sophisticated axioms or rules, that do not change in the ontology at run time and load that ontology as a starting point for your system.