- From: pat hayes <phayes@ai.uwf.edu>
- Date: Fri, 1 Jun 2001 13:56:25 -0500
- To: Sandro Hawke <sandro@w3.org>
- Cc: www-rdf-logic@w3.org
>In message <20010601115102E.pfps@research.bell-labs.com> you wrote: > > Unfortunately RDF only has triples, so triples end up being used for both > > the ground facts and the more-complex information. RDF has no way of > > distinguishing between these differing uses of triples, so any triples that > > are used to store the more-complex information are also asserted as facts > > by RDF. Worse, .... > >The "more-complex information" is stored by being described with ground >facts. What's wrong with that? Where is the confusion? The confusion is between describing (the syntax of) the information using ground facts, on the one hand, and actually asserting the information, on the other. Its what linguists call the confusion between use and mention. Take, say, a logical sentence like: (forall (?x)(R ?x ?x)) which maybe could be described by the following collection of ground triplets (I'm making up the syntax): (syntaxType, S, universalQuantification) (boundVariable, S, "?x") (body, S, T) (syntaxType, T, relationalAtom) (relationSymbol, T, "R") (subject, T, "?x") (object, T, "?x") But this collection of ground facts says, in effect, that a sentence S exists, and that is all. It doesn't assert the sentence, or say that it is true. (It can't possibly say that, if those really are ground sentences, since the truth of a universally quantified sentence cannot be reduced to a finite collection of ground sentences, in general.) In particular, it doesnt say anything about the relation R. Now, one could extend the usual semantics so that just to describe a sentence is to automatically assert it, but then it wouldnt really be accurate to call this a set of ground sentences any more, since this would just amount to a rather wierd way of writing (forall (?x)(R ?x ?x)) which uses 152 characters instead of 19. (If one were to render it into RDF and then serialize that in XML, it would increase in length by another order of magnitude.) >The only potential for confusion I see is that some people might want >to jump from having a triple described (with ground facts) to assuming >the described triple is true, but that seems clearly wrong. Quite. But usually, when one is in the business of writing these more complex expressions, it is precisely in order to assert them. That is why we call it *information* (rather than "text"). >Perhaps another possible confusion is around existence: if I describe >to you that x is a blue Honda Civic with license plate 9948JI , does >that mean that such a car exists? (I think not.) > >As a specific example, let's imagine a robot which can jump into the >air. I can send it knowledge in RDF. I might say > :jump17 a :Jump. > :jump17 :height "21cm". >describing a jump ("jump17") of 21 centimeters. One could define the >class (":Jump") such that on learning of an instance a receiver should >attempt to perform it. Alternatively (and I think preferably), one >could define it as abstract, so that you can talk all you want about >jumping, with no one doing anything. If you want the robot to jump, >you might use a non-RDF channel to say "perform operation :jump17", or >you might define some act-as-soon-as-you-have-knowledge semantics for >a few specific vocabulary terms the robot looks for, perhaps a >":request" term. What if the robot is in the business of drawing conclusions about jumping, rather than jumping? Should it draw no conclusions about anything other than syntax? Pat Hayes --------------------------------------------------------------------- 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 Friday, 1 June 2001 14:56:38 UTC