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

Re: SEM/GUIDE: subclasses of classes of Properties? (5.3)

From: Jos De_Roo <jos.deroo.jd@belgium.agfa.com>
Date: Fri, 9 Aug 2002 11:26:36 +0200
To: "Christopher Welty" <welty@us.ibm.com>
Cc: Dan Connolly <connolly@w3.org>, www-webont-wg@w3.org
Message-ID: <OFB3095CA1.A426E98E-ONC1256C10.0032945D@agfa.be>

well, then at least for machines it's simpler -
as this is plain RDFS entailment of [1] from [2]
  rdfsMT:rule9 .
    rdfsMT:rule3 .
    db:key rdfs:range db:KeyProperty.
    fred:Order db:key fred:customer} log:implies
  {fred:customer a db:KeyProperty}} log:implies
{fred:customer a owl:FunctionalProperty}.

-- ,
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/

[1] http://www.w3.org/2002/03owlt/dbC
[2] http://www.w3.org/2002/03owlt/dbP

"Christopher Welty" <welty@us.ibm.com>
Sent by: www-webont-wg-request@w3.org
2002-08-08 05:46 PM

        To:     Dan Connolly <connolly@w3.org>
        cc:     www-webont-wg@w3.org
        Subject:        Re: SEM/GUIDE: subclasses of classes of Properties? (5.3)

Dan, et al,

You said from this:

  my:KeyProperty rdfs:subClassOf owl:FunctionalProperty.
  db:key rdfs:range db:KeyProperty.
  fred:Order db:key fred:customer.

It should follow that:


This example is so confusing, you couldn't have picked a better way to
show that there are huge misconceptions going on here.  We really need a

There are a number of problems with this example:
- You are using db:key but you are not getting a database key
- Clearly an order shouldn't have customer as a database key
- You have exposed *exactly* the kind of incompleteness that making the
language too expressive introduces.

The real source of the confusion is the symbols you have chosen and what
they mean outside of this example.  key, order, and customer all have
real-world meanings, and here you are giving them a semantics that is not
consistent with that real-world meaning.

Even if there was a reasoner which could conclude this (which there never
will be), if your goal from this example is simply to conclude
FunctionalProperty(fred:customer), all you are saying is that an order has
only one customer.  You are NOT saying that it is a "key" in the database

As I have said in the description of the functionalProperty feature,
functionalProperty is weaker (less constrained) than the notion of a
database key.  In the database sense of "key", it is a 1:1 relationship
which, *for a specific table* uniquely identifies a row in the table,
however the "same" "property" could be used in another table and not be a
key. Since  owl:functionalProperty is a global restriction, concluding
FunctionalProperty(fred:customer) would mean that anywhwere fred:customer
is used, it is functional, even if it is used in instances of other
classes than fred:Order.

What you want is some sort of local restriction on fred:Order for the
fred:customer relation, and a restriction on the inverse of fred:customer
that it can have only one fred:Order.

Dr. Christopher A. Welty, Knowledge Structures Group
IBM Watson Research Center, 19 Skyline Dr.
Hawthorne, NY  10532     USA
Voice: +1 914.784.7055,  IBM T/L: 863.7055
Fax: +1 914.784.6078, Email: welty@us.ibm.com

Dan Connolly <connolly@w3.org>
Sent by: www-webont-wg-request@w3.org
08/02/2002 06:17 PM

        To:     Jonathan Borden <jonathan@openhealth.org>
        cc:     www-webont-wg@w3.org
        Subject:        Re: SEM/GUIDE: subclasses of classes of 
Properties? (5.3)

On Fri, 2002-08-02 at 07:23, Jonathan Borden wrote:
> Dan Connolly wrote:
> >
> > Sorry, that example didn't make the point...
> To clarify, we want to be able to make the sorts of conclusions:
> email:cust24 owl:sameIndividualAs phone:cust34.
> given,
> FunctionalProperty(fred:customer)
> and
> fred:order24 fred:customer email:cust24.
> fred:order24 fred:customer phone:cust34 .

We want that, but that's not the point I'm making.

The point I making is that I (we?) also want to



  my:KeyProperty rdfs:subClassOf owl:FunctionalProperty.
  db:key rdfs:range db:KeyProperty.
  fred:Order db:key fred:customer.

> wouldn't something like this be the case under _any_ implementation of
> FunctionalProperty?
> (I am assuming that owl:sameIndividualAs is our term for '=')

Dan Connolly, W3C http://www.w3.org/People/Connolly/
see you in Montreal in August at Extreme Markup 2002?
Received on Friday, 9 August 2002 05:27:23 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:04:33 UTC