W3C home > Mailing lists > Public > www-rdf-rules@w3.org > September 2001

Re: What is an RDF Query?

From: Pat Hayes <phayes@ai.uwf.edu>
Date: Wed, 19 Sep 2001 11:50:01 -0500
Message-Id: <p05101014b7ce799c58da@[205.160.76.182]>
To: David Allsopp <d.allsopp@signal.QinetiQ.com>
Cc: www-rdf-rules@w3.org
>Pat Hayes wrote:
>
>>  >>  > which may help to explain the (my) confusion. This notion of 'rule'
>>  >>  > doesn't make sense to me. Why would matching a *query* produce the
>>  >>  > insertion of *statements*?
>>  >
>>  >Be they in the original dataset or in temporary database from which
>>  >the query response is culled, the consequence of a rule must be noted
>>  >in order to be useful. I called that operation "inserting", perhaps
>>  >wrongly (or incoherently).
>>
>>  NO, that's OK. The part I'm having trouble with here is why the
>>  initial trigger was called a *query* instead of an *assertion*. If I
>>  assert P and I know that (P implies Q) then its obviously correct to
>>  infer Q and assert it. But even if I know that (P implies Q), I'm not
>>  entitled to infer Q from P's being *queried*. If I know that men are
>>  mammals, and someone *asks* me if Joe is a man, I shouldn't conclude
>>  that Joe is a mammal. Maybe the answer to the question was 'No, Joe
>>  is a parrot'
>
>The reason calling the trigger a query made sense to me is that I
>visualise the situation as follows:
>I have a rule engine and set of rules. There is a separate knowledge
>base of assertions somewhere, on disk or on the network. 'I' (the rule
>engine) know that (P implies Q). But has P been asserted, and can I
>therefore infer Q? That's in the knowledge base, so I have to *query*
>the knowledge base in order to tell whether P has been *asserted*.

OK,I see what you mean. But you have missed out a step. You (the rule 
engine) query the KB: you say
P?
to the KB. Presumably, the KB gives you an answer, which is an 
assertion (not  a query):
P
(or maybe 'yes', which has the same content when given as an answer 
to your query;)
and then you take *that answer* and run the rule on it:
P and (P implies Q)
to get the assertion
Q.
But its the output *from* the KB that triggers the rule, not your 
query *to* it. If the KB had said 'no', the rule wouldn't have been 
triggered, right?

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 Wednesday, 19 September 2001 12:50:05 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:53:09 GMT