Indicating bNodes in XML result sets

In http://lists.w3.org/Archives/Public/public-rdf-dawg/2004JulSep/0556
Dave indicated his preference for the XML form of the result set to look like:
http://lists.w3.org/Archives/Public/public-rdf-dawg/2004JulSep/att-0556/result1.xml

This may have been covered but, if so, I have forgotten - what happnes 
about bNodes in results?

If we have the query:

SELECT ?x ?name WHERE (?x rdf:type foaf:Person) (?x foaf:name ?name)

then there are distinct solutions for ?x with bNodes.  This should be 
indicated in the results - this is not letting bNodes out of the graph, it 
just allows the app to see distinguish between bNodes, or see they are the 
same, within the result set.

I suggest having document-scoped ids (c.f. RDF/XML) that indicate there 
were bNodes.  This means that each unique result is still unique.  Such an 
id is not related to the internal bNode labels in the data graph.

So we might have two 'name's being the same:

<results>
   <result>
     <x node="foo">
     <name>Fido</name>
   </result>
   <result>
     <x node="bar">
     <name>Fido</name>
    </result>
</results>

(I don't care much about the attribute name - rdf:ID?)

The RDF form of the result sets can do this by using bNodes in the cretaed 
graph (and they are unlinked from the original bNodews in the data graph).

If an app wants to find a bNode again, it needs to retrive enough defining 
properties.

 Andy

Received on Thursday, 11 November 2004 11:50:22 UTC