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@[]>
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
to the KB. Presumably, the KB gives you an answer, which is an 
assertion (not  a query):
(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
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?

IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
Received on Wednesday, 19 September 2001 12:50:05 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 2 March 2016 11:10:13 UTC