W3C home > Mailing lists > Public > www-webont-wg@w3.org > October 2002

Re: Issue: Add hasValue to OWL Lite

From: Jim Hendler <hendler@cs.umd.edu>
Date: Wed, 30 Oct 2002 08:56:26 -0500
Message-Id: <p0511170db9e5919f8c3a@[]>
To: Dan Connolly <connolly@w3.org>, Ian Horrocks <horrocks@cs.man.ac.uk>
Cc: Deborah McGuinness <dlm@ksl.stanford.edu>, webont <www-webont-wg@w3.org>

At 7:56 PM -0600 10/29/02, Dan Connolly wrote:
>On Tue, 2002-10-29 at 18:34, Ian Horrocks wrote:
>>  The problem with adding hasValue to OWL Lite is that it wouldn't be
>>  Lite any more. The lack of hasValue in Lite is, from an implementation
>>  point of view, the main thing that differentiates it from fast -
>>  hasValue is very tough to deal with, and is responsible for pushing
>>  the worst case complexity of reasoning in fast OWL from ExpTime to
>>  NExpTime.
>Could you unpack that a bit?
>Could you give an example, maybe?

A typical use of #hasvalue that I see often in class is something like

:Restaurant a owl:class;
     ...                       # the subclassOf/restriction stuff
    :foodtype :Anyfoodtype.

:ChineseFood a :Anyfoodtype.

:ChineseRestaurant a :Restaurant;
   :foodtype ...
     owl:hasValue :ChineseFood.

This would mean
     ChineseRestaurant(X)  <-> Restaurant(X) and foodtype(X,ChineseFood)
(assuming no other properties anywhere)

By the way, note that in the frame-based world, the tendency would be 
to use classes as instances i.e.

:ChineseRestaurant a owl:class;
   :foodtype :ChineseFood.

but note that this means:
  ChineseRestuarant(X) -> Restaurant(X) and foodtype(X,:ChineseFood)

so these are not identical although they are often used the same way 
in many applications (where the "only if" inference is not needed).

Professor James Hendler				  hendler@cs.umd.edu
Director, Semantic Web and Agent Technologies	  301-405-2696
Maryland Information and Network Dynamics Lab.	  301-405-6707 (Fax)
Univ of Maryland, College Park, MD 20742	  240-731-3822 (Cell)
Received on Wednesday, 30 October 2002 08:56:31 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:56:48 UTC