Database Reference
In-Depth Information
Following on from this, we can also make the statement that one class is a subclass
of another, such as “Every Freehouse is a kind of Pub”.
Class:Freehouse
SubClassOf:Pub
These statements are part of the Tbox as they are statements or axioms about a class.
In OWL, a class can also be constructed by enumerating all its allowable instances,
using the OWL property owl:oneOf . For example, we can describe beer by listing
the types of beer 1 :
Every Beer is one of Mild, Pale Ale,
Brown Beer, Barley Wine, Old Ale,
Porter, Stout or Lager.
Class:Beer
EquivalentTo: {Mild, PaleAle,
BrownBeer, BarleyWine, OldAle,
Porter, Stout, Lager}
The owl:oneOf construct can also be used to define a range of data values,
known as an enumerated datatype. For example, the Merea Land Management
Agency could specify that the datatype property hasTaxCode can only take one
of a fixed number of numeric tax codes. As you can see from the rather contrived
example, this is likely to be used only rarely in reality.
Two classes can be denoted as equivalent through the use of
owl:equivalentClass ; for example, Gas Station is equivalent to Petrol Station.
This is quite a strong logical assertion because it means that every individual in one
class is also an individual in the other class, and all the statements made about each
class apply to the other class.
Gas Station and Petrol Station are
Equivalent.
Class: GasStation
EquivalentTo: PetrolStation
Conversely, owl:disjointWith states that no member of one class is a mem-
ber of the other. For example, Field and Barn are mutually exclusive:
Field and Barn are mutually exclusive. Class: Field
disjointWith: Barn
If you think about it, there are thousands of examples for which this is true
(although be careful of the edge cases, where it may not always be true, such as
River and Stream). However, the decision of whether to clutter up your ontology
with such statements should be made based on the stated purpose of the ontology.
Including many disjoint statements can slow inference and make the ontology less
readable, more error prone, and potentially less useful for data integration purposes.
Disjoint statements should only be included when they are necessary for the purpose
of the ontology: to answer a specific competency question, or to make it clear when
something really is not allowed, for example, if the tax rules in Merea are such that
a property must be either a business premises or a residential one. In this case, you
would want to make these two classes disjoint to flag any discrepancies in the data if
a premises had been misclassified as both.
Search WWH ::




Custom Search