[foaf-protocols] P2P FOAF search

Toby Inkster tai at g5n.co.uk
Fri Jun 5 11:07:40 CEST 2009

On Fri, 2009-06-05 at 17:38 +0930, Luke Maurits wrote:
> The extra work would really just be having each node re-distribute
> queries it couldn't answer to other nodes on its XMPP roster,

What about queries that no nodes know the answer to, but could be
answered considering the sum of their knowledge.

e.g. you know that Steven is Bob's grandfather, but want to know the
person that represents the generation between them (i.e. Bob's parent,
Steven's child):

SELECT ?person
  <http://example.com/bob#me> rel:childOf ?person .
  ?person rel:childOf <http://example.net/steven#me> .

If Node A knows:

<http://example.com/bob#me> rel:childOf <http://example.org/p#Mary> .
<http://example.com/bob#me> rel:childOf <http://example.org/p#Bill> .

And Node B knows:

rel:ChildOf <http://example.net/steven#me> .
rel:ChildOf <http://example.net/steven#me> .

Then neither node could answer the query individually. But if node A
received the query, it could perhaps use it's local knowledge that Bill
and Mary are Bob's parents and relay on to its nodes the requests:

  <http://example.org/p#Mary> rel:childOf <http://example.net/steven#me> .

  <http://example.org/p#Bill> rel:childOf <http://example.net/steven#me> .

To fill in the gaps in its knowledge.

Toby Inkster <tai at g5n.co.uk>

More information about the foaf-protocols mailing list