Database Reference
In-Depth Information
10.4.5.4 Property Chains
One thing that can also be done with properties is the construction of property chains
(also known as subproperty chains). To understand what these are and what they do,
it is easiest to use an example. The traditional example to use is stating the relation-
ship between an aunt and a niece (or uncle and nephew), and this is the example we
use as we would hate to break with tradition. A niece is the daughter of someone's
brother or sister. Without property chains, we have no way of expressing this rela-
tionship in OWL. In OWL, we can say
Emma has Parent Miranda.
Miranda has sister Emily.
And we can also say that
Emma has aunt Emily.
But really, we ought to be able to infer this rather than have to state it explicitly.
This is where property chains come in. Property chains enable you to connect two
or more properties and associate them to another property. The Manchester syntax
to link to properties is the lowercase letter o . So, we can create the property hasAunt
as follows:
hasParent o hasSister
We can now automatically infer the “has Aunt” relationship between Emma
and Emily just by knowing that Emma's parent is Miranda, and Miranda's sister
is Em i ly.
One place where we can apply this is to remove the problem we came across
previously with the definition of Places. 12 To recap, the problem was that we had
described a Property as follows:
Every Place is a kind of Feature.
Every Place has part a Feature
that is intended for a Purpose.
Every Place is intended for a
Purpose.
Class:Place
SubClassOf: Feature, (hasPart
some Feature that isIntendedFor
some Purpose), isIntendedFor
some Purpose
So, we are saying that a Place has a Purpose, and that a Place has a feature that also
has a Purpose. What we would like to do is enforce the fact that the Purpose of the
Place overall was the same as the Purpose of is main part. We can do this with a
property chain by specifying isIntendedFor as follows:
Everything that has a Part that
is intended for something will
also be intended for that Thing.
ObjectProperty: hasPart
ObjectProperty: isIntendedFor
SubPropertyChain: hasPart o
isIntendedFor 13
Search WWH ::




Custom Search