- From: Arthur Keen <AKeen@algebraixdata.com>
- Date: Thu, 23 Aug 2012 19:34:33 +0000
- To: Lee Feigenbaum <lee@thefigtrees.net>
- CC: Andy Seaborne <andy.seaborne@epimorphics.com>, SPARQL Working Group <public-rdf-dawg@w3.org>
+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