W3C home > Mailing lists > Public > www-rdf-logic@w3.org > October 2000

basic decisions underlying DAML-ONT

From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
Date: Thu, 12 Oct 2000 09:30:40 -0400
To: www-rdf-logic@w3.org
Message-Id: <20001012093040B.pfps@research.bell-labs.com>
I think that it would be very useful to get some sort of information on the
basic decisions underlying DAML-ONT.  For example, I would like to know
whether there is a basic decision in DAML-ONT to not allow necessary and
sufficient conditions for classes.

The reason that I ask this is that DAML-ONT does not have a direct
mechanism to allow such ``defined'' classes.  However, in many cases, one
can indeed create classes that contain exactly those individuals that meet
a particular condition. 

For example, suppose we want to create the class of individuals who have a
rich friend.  We start by defining the property ``friend'' and
the class ``Rich''.

<Property ID="friend"/>

<Class ID="Rich"/>

Then we create the complement of ``Rich''.

<Class ID="notRich">
 <complementOf resource="#Rich>
</Class>

Now we define a subclass of the desired class, ``SomeRichFriend''.

<Class ID="SomeRichFriend">
  <qualifiedBy>
    <Qualification>
      <onProperty resource="#friend"/>
      <toClass resource="#Rich"/>
    </Qualification>
  </qualifiedBy>
</Class>

Finally we create a subclass of complement of the desired class, which we
can do because the complement of a qualification to a class is a
restriction to the complement of the class, and assert that it and
``SomeRichFriend'' are complements. 

<Class ID="AllNotRichFriends">
  <restrictedBy>
    <Restriction>
      <onProperty resource="#friend"/>
      <toClass resource="#notRich"/>
    </Restriction>
  </restrictedBy>
  <complementOf resource="#SomeRichFriend">
</Class>

Because ``AllNotRichFriends'' is a subset of the complement of the desired
class, therefore its complement, ``SomeRichFriend'', is a superset of the
desired class.  However, ``SomeRichFriend'' was already defined as a
subset of the desired class, therefore ``SomeRichFriend'' is precisely the
desired class.

So, it now follows from 

<Rich ID="DaddyWarbucks"/>

<Thing ID="Annie">
  <friend resource="DaddyWarbucks">
</Thing>

that ``Annie'' belongs to ``SomeRichFriend''.


More complicated examples can be created using unionOf and the other
``[t]erms for building classes from other classes''.



Peter Patel-Schneider
Received on Thursday, 12 October 2000 09:32:02 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:52:37 GMT