- From: pat hayes <phayes@ai.uwf.edu>
- Date: Tue, 24 Sep 2002 18:09:38 -0500
- To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
- Cc: www-webont-wg@w3.org
>From: pat hayes <phayes@ai.uwf.edu> >Subject: Re: possible semantic bugs concerning domain and range >Date: Mon, 23 Sep 2002 22:18:39 -0500 > >> Rather than respond point by point, let me try to see if I can >> summarize what seem to be the main clashes of intuition here. >> >> My view of the range of a property is that it is a particular class >> which as far as possible defines the, well, range that the values of >> the property can take. Of course, there is no guarantee that any >> property will as it were 'fill up' its range, so it can make sense to >> apply conjunctive semantics to multiple range assertions; but the >> range is a definite thing associated with the property; it is part of >> the very specification of the property; knowing the range is knowing >> something particular about the property, a key piece of information. >> It allows one, for example, to detect inappropriate uses of the >> property under some circumstances. Ranges can be used to convey >> information relevant to a property, for example by having an >> associated datatype. > >OK, this is your view. > >> Your view, as I understand it, is that a range is simply any class >> which all the values are in. In particular, the idea of there being >> *a* range is silly, on this view: all properties will have multiple >> ranges. > >OK, this is my view. > >> What I am calling 'the' range, on this view, is something >> like the smallest range; > >Well, if this is your view, then you have to allow inference to determine >'the' range, because even RDFS allows multiple ranges. Yes, I realize that, which is why I said 'something like'. And I don't disagree that one might need to use inference to determine the range. And the use of 'the' is maybe unfortunate; I don't mind there being several ranges (though they ought to overlap, since the values are required to be in them all.) > >What is 'the' range of foo in > > foo rdfs:range bar . > foo rdfs:range baz . > >> but supersets of this can also be called >> ranges. I can see that with this view, the proposed semantics and >> Jeremy's entailment are both quite natural. But what worries me about >> this view is that it seems to discount the most useful aspects of the >> 'range' idea. >> >> The first view seems to go naturally with an intensional view of >> classes as real things that can have properties, while the second is >> more natural if one thinks of classes simply as sets in extension. >> Maybe the different directions our intuitions go in reflect a >> basically different world-view about the nature of classes. > >Well, I think that it is your view that has technical problems, as >evidenced by the property foo. > >> However, I would like to return to a more technical debate. You claim > > the several intuitive entailments go through on your semantics but > > not on mine. Seems to me that this isn't correct, so far: the correct >> form of Jeremy's entailment and the intersection example both work on >> both semantics. > >Your interpretation of Jeremy's natural-language paraphrase of his example, >that is. I prefer to go by the formal version of Jeremy's example. Look, we just flat disagree with the formal version: you want that entailment, I don't. My point was that Jeremy, maybe inadvertently, said *why* he wanted it to hold, and that his justification (which you also seemed to approve of) can be expressed adequately in either semantics. Of course if x is in a range and if that range is a subclass of y, then x is in y. The only issue we disagree about is whether we should be obliged to say that y is a range just because it contains all the values. > >> So just on grounds of interoperability, it seems to >> me that the burden of proof is on you to show why OWL needs to change > >Well, precisely because of the above example. I believe that an >intersection of bar and baz is a range of foo. If you believe in 'the' >range, then what else can it be for foo? Yes, that is a good point, I confess, and one that forces me to admit that the idea of 'the' (singular) range has to be relaxed. But even in this case I would prefer to say that both bar and baz are ranges, and that it therefore follows that any value of foo is in their intersection, but not that the intersection *was* a range. I want to be able to restrict the class of range classes to a limited set in a particular application (eg they might correspond to Java classes, or have associated datatypes). On my view, being a range is (or at any rate, can be) a more substantial claim than merely being a class which holds all the values. Maybe we could have two notions of range: your purely extensional one, and the RDFS intensional one. But it seems to me that we don't really need to be able to transmit rangeness up the subclass hierarchy, since for you the only significance of being a range is that it contains all the values: and if you say that explicitly using rdf:type, it holds in both semantics. Heres a way to phrase the difference: call a class a protorange iff it contains all the values of a property. For you, protoranges are ranges. For me, only some of the protoranges need be ranges. Clearly, iff semantics is appropriate for protoranges; but many applications of the notion of range require us to be able to identify particular protoranges as the ones to which other information is associated, and if we make the identification then this ability to distinguish particular protoranges is lost (or requires extra machinery). Whereas it seems to me that applying the iff semantics provides no useful extra entailments. It allows one to conclude that many more classes are ranges, of course, but all this does is make manifest that the notion of 'range' has been (from my point of view) fatally weakened. These can all be expressed using my notion of range and rdfs:subClassOf or rdf:type. The important inferences about ranges - notably, the kind that arise from an association of a datatype with a range - apply in both semantics, but require more care to state in yours. And, finally, it seems to me better not to make changes which introduce incompatibilities between languages unnecessarily, and that we already have a coherent, intuitively correct and useful notion of range which both RDFS and DAML use, and which can be used by OWL without introducing any harmful consequences. Pat -- --------------------------------------------------------------------- IHMC (850)434 8903 home 40 South Alcaniz St. (850)202 4416 office Pensacola, FL 32501 (850)202 4440 fax phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes
Received on Tuesday, 24 September 2002 19:09:29 UTC