- From: Sandro Hawke <sandro@w3.org>
- Date: Sun, 18 Nov 2001 07:51:15 -0500
- To: www-rdf-rules@w3.org
An interesting way to handle queries, which shows a relationship
between queries and logical implication, and why it's nice to encode
(describe) RDF queries in RDF:
loop
receive more RDF data
add its reification (with any source information) to KB
(let it be de-reified by security axioms)
query KB for any unattempted action-requests
for each such action-request:
attempt it
mark it as attempted
end
end
With this approach you don't query "What's the temperature in
Dallas?", you say "For all X, if X is the temperature in Dallas, then
there exists a request for someone to send me concat('reply 12=',X)." It
may seem more complicated, but I think the overall system of
client+server is simpler, because there's less contortion on both
sides to match an arbitrary query protocol.
There are details around security and the request model, but I think
they can be worked out and you end up with a rather elegant system.
This probably counts as a blackboard approach, and I've talked about
it before, but not specifically for query handling. Another nice
thing about it is that queries can be naturally distributed, with
agents who have knowledge of some field querying for queries about
that field.
-- sandro
Received on Sunday, 18 November 2001 07:52:38 UTC