W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > July to September 2005

Re: issue#rdfSemantics : use cases

From: Steve Harris <S.W.Harris@ecs.soton.ac.uk>
Date: Wed, 14 Sep 2005 11:32:34 +0100
To: RDF Data Access Working Group <public-rdf-dawg@w3.org>
Message-ID: <20050914103234.GA17541@login.ecs.soton.ac.uk>

On Wed, Sep 14, 2005 at 10:54:51 +0100, Andy Seaborne wrote:
> == Data 1:
> :x <p> "z"  .
> _:a <p> "z" .
> 
> == Query:
> SELECT * { ?s <p> ?o }
> 
> == Results
> s/:x  p/<p>  o/"z"
> s/_:a p/<p>  o/"z"
> 
> And the application wishes to add:
> _:a <q> "y" .
> 
> that is, a tripe with the bNode in the abstract syntax form of the grap as 
> subject.
> 
> This requires both solutions to be returned in the example query.

I feel like being pedantic today, so I'l note that the query engine could
also, perfectly legally return

s/_:zzz  p/<p>  o/"z"

to that query, as bNodes aren't round tripped in SPARQL, c.f. last
paragraph of "Templates with Blank Nodes":

"The use of variable ?x in the template, which in this example will be
 bound to blank nodes (which have labels _:a and _:b in the data) causes
 different blank node labels (_:v1 and _:v2) as shown by the results."

so at the very least this usecase requires knowledge of how bnodes are
handled in results in the implementation.

- Steve
Received on Wednesday, 14 September 2005 10:33:09 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:24 GMT