Re: tests/Delete

+1

On Aug 21, 2012, at 1:28 PM, Lee Feigenbaum <lee@thefigtrees.net> wrote:

> I totally agree with everything Andy wrote below.
> 
> Lee
> 
> On 8/21/2012 1:23 PM, Andy Seaborne wrote:
>> In rerunning the tests for BIND I came across an unrelated issue.
>> 
>> www.w3.org/2009/sparql/docs/tests/data-sparql11/delete/manifest.ttl#dawg-delete-using-02 
>> 
>> and #dawg-delete-using-06
>> 
>> dawg-delete-using-02 ==>
>> 
>> PREFIX     : <http://example.org/>
>> PREFIX foaf: <http://xmlns.com/foaf/0.1/>
>> 
>> DELETE
>> {
>>  ?s ?p ?o .
>> }
>> USING <http://example.org/g3>
>> WHERE
>> {
>>  GRAPH <http://example.org/g2> { :a foaf:knows ?s .
>>                                  ?s ?p ?o }
>> }
>> 
>> These tests define a dataset for the WHERE part of the update using USING.  As I understand it, USING is like FROM - and it forms the whole of the dataset.
>> 
>> So GRAPH <http://example.org/g2>  never matches - there are no named graphs to query because the dataset is one default graph only.
>> 
>> Thus DELETE { ?s ?p ?o } is a no-op and the data, specifically the default graph, is unchanged.
>> 
>> But the input is <delete-pre-01.ttl> and the result <delete-post-01s.ttl>.  These are different triples.
>> 
>> The comment seems wrong.
>> 
>> "the GRAPH clause overrides the USING clause"
>> No - it doesn't!
>> 
>> [[ SPARQL 1.1 Update :
>> This describes a dataset in the same way as FROM and FROM NAMED clauses describe RDF Datasets in the SPARQL 1.1 Query Language.
>> ...
>> That is, the GroupGraphPattern in the WHERE clause will be matched against the dataset described by explicit USING or USING NAMED clauses, if specified, and against the Graph Store otherwise.
>> ]]
>> 
>>    Andy
>> 
>> 
> 
> 

Received on Thursday, 23 August 2012 19:36:18 UTC