- From: Lee Feigenbaum <lee@thefigtrees.net>
- Date: Tue, 21 Aug 2012 14:28:13 -0400
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- CC: SPARQL Working Group <public-rdf-dawg@w3.org>
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 Tuesday, 21 August 2012 18:28:41 UTC