- From: Tim Berners-Lee <timbl@w3.org>
- Date: Wed, 18 Jul 2001 23:05:23 -0400
- To: "Richard Fikes" <fikes@KSL.Stanford.EDU>, "Ian Horrocks" <horrocks@cs.man.ac.uk>
- Cc: "www-rdf-logic" <www-rdf-logic@w3.org>
Having just caught up on this thread I feel the basic diconnect is in the question, "How do we know what is the sufficient condition to be a member of restriction R"? You never do know. You are only given some *necessary* conditions. You have to replace the question "is this consistent with the restriction R?" with "is this consistent with the document D?". As you point out, R is just an abstract thing, a class. And anyone can say anything about anything, you don't know whether there are any other constraints on it. But that doesn't matter - the purpose of the restriction is to restrict the main class, not to be exactly specified itself. The Restriction does not define a set of data with which one can talk about being consitent. The document does. So it *is* iuseful to ask "what is the sufficient condition for X to be consitent with everything in this document?" Tim ----- Original Message ----- From: "Richard Fikes" <fikes@KSL.Stanford.EDU> To: "Ian Horrocks" <horrocks@cs.man.ac.uk> Cc: "www-rdf-logic" <www-rdf-logic@w3.org> Sent: Tuesday, July 03, 2001 10:41 AM Subject: Re: A Problem With The Semantics of DAML+OIL Restrictions > > This "problem" was discussed at length when we were designing the > > language (if I did around in the mail archive I can find some examples > > similar to the one you provide above). Like it or not, this is what > > you get when you use rdf, as it provides no way to specify structural > > constraints on the kinds of thing you can write (you can "say anything > > about anything"). > > > > Having said that, and although the above style of multiple constraints > > are probably best avoided (in the interests of human > > read/understandability at least), they present no inherent > > difficulties and are comparable to stating the equivalence of two > > simple restrictions - I could say much the same thing as your > > Sam-Jones example with something like: > > > > (Type R Restriction) > > (onProperty R parent) > > (toClass R person) > > > > (Type R2 Restriction) > > (onProperty R2 parent) > > (hasValue R2 Sam-Jones) > > > > (sameClassAs R R2) > > > > Of course, as in your example, we can now infer that the set of > > objects who have Sam-Jones as a parent is the same as the set of > > objects all of whose parents are persons. This may not be a very > > sensible thing to say, but you can say crazy things in any tolerably > > expressive language. > > > > The (model theoretic) semantics are clear about the meaning of > > restrictions (whether multiple or single), and they shouldn't present > > any problems for a reasoner (beyond those that are already there due > > to the ability to state arbitrary equivalences). > > > > We deliberately chose to avoid the "solution" of using the language > > (DAML+OIL) to constrain itself (e.g., by setting cardinality > > constraints on toClass etc) as we did not want to try providing a > > semantics for this kind of usage. > > Unfortunately, I don't find your reply convincing. Specifically, I > don't see how the RDF translation of a restriction tells us what the > sufficient conditions are for membership in the class specified by the > restriction. At the risk of being repetitive, what can we conclude from > the following RDF statements in a file? > > (Type R Restriction) > (onProperty R parent) > (toClass R person) > > We can certainly conclude that the parents of all objects that are type > R are persons. However, how can we legitimately conclude that an object > all of those parents are persons is type R when the very next RDF > statement in the file may be "(hasValue R Joe)"? Those four statements > together mean that in order to be type R an object has to have Joe as a > parent and all of its parents must be persons. Thus, the first three > RDF statements give us a different set of sufficient conditions then do > the four RDF statements. The problem is that if there is no way of > indicating that the definition of a non-primitive class is closed > ("That's all, folks"), then there is no way for that definition to > provide a set of sufficient conditions for membership in the class. The > other constructs in DAML+OIL for defining non-primitive classes (i.e., > intersectionOf, unionOf, complementOf) have that closure property > because they are unique properties taking either a list as the value or > a single class (in the case of complementOf). The restrictions are > open-ended and therefore don't work as specifiers of sufficient > conditions. > > By the way, I think the model theoretic semantics suffers from the same > problem as the axiomatic semantics in this matter. That is, both of > them seem to treat each constraint in a restriction as sufficient > conditions for membership in the class. The constraints need to be > combined when there is more than one of them in a restriction. > > Richard >
Received on Wednesday, 18 July 2001 23:06:58 UTC