- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Tue, 11 Jan 2011 17:10:09 +0000
- To: Steve Harris <steve.harris@garlik.com>
- CC: SPARQL Working Group <public-rdf-dawg@w3.org>
On 11/01/11 16:33, Steve Harris wrote: > On 2011-01-11, at 14:48, Andy Seaborne wrote: > >> Editorial: so it does not get lost: >> >> These are all the same operation, in different guises: >> >> 3.1.3 DELETE/INSERT >> >> [ WITH<uri> ] >> DELETE { modify_template [ modify_template ]* } >> INSERT { modify_template [ modify_template ]* } >> [ USING [NAMED]<uri> ]* >> [ WHERE ] GroupGraphPattern >> >> The word WHERE is optional, GroupGraphPattern is not. > > It makes me very uncomfortable that Note - I was pointing out the inconsistency in the text. > > DELETE {} > INSERT > { > <a> <b> <c> > } > { > <d> <e> <f> > } > > Has a radically different meaning from > > DELETE {} > INSERT { > { > <a> <b> <c> > } > { > <d> <e> <f> > } > } Can't have {{}} in a template but I know what you mean. > Would prefer > > [ WHERE GroupGraphPattern ] Completely patternless gets confusing with INSERT DATA because of variables in the pattern with INSERT { ?s ?p ?o } which might read as implciitly setting ?s ?p ?o. The WHERE is currently mandatory in the grammar. This is based on my recollection of the discussions at the time; that included the confusingness of some forms with WHERE omitted (IIRC). I don't think anyone is proposing the text as being the right way. Historically, I think it's legacy going back to the submission, whose own legacy was that with no INSERT DATA, basic data was INSERT { <s> <p> "o" } and WHERE .. is optional. On adding INSERT DATA that grammar (submission) kept the optionalness for compatibility. No longer an issue. See http://www.w3.org/2009/sparql/docs/tests/data-sparql11/syntax-update-1/ Not sure if this is comprehensive enough. But "accepting the grammar" should include accepting the tests. Andy
Received on Tuesday, 11 January 2011 17:10:49 UTC