- From: Andy Seaborne <andy.seaborne@talis.com>
- Date: Mon, 11 Jan 2010 14:34:50 +0000
- To: Axel Polleres <axel.polleres@deri.org>
- CC: Steve Harris <steve.harris@garlik.com>, Paul Gearon <gearon@ieee.org>, SPARQL Working Group <public-rdf-dawg@w3.org>
On 11/01/2010 1:40 PM, Axel Polleres wrote: > Without really wanting to decide between "REMOVE" or separators ";" here yet (I am not decided on this, to be honest)... > what I'd find a slight bit strange is that in the first alternative DELETE needs a dedicated keyword in the shortcut > version, whereas INSERT doesn't. One option to avoid and make it look more consistent could be to also have a dedicted > keyword for the short form of INSERT, i.e. The short form of INSERT is always a no-op (caveat bnodes) because if the pattern matches, then the data is already in the graph. I thought we were removing it because of the no-op-ness. At most, it can introduce bnodes but with the same triple shapes. INSERT { :a :p ?B } INSERT { [] :p ?B } will at most introduce a different bnodes (and it's a pun - dual use of the bnode synatx - one use is non-distinguished variable in a pattern, one use as a template bnode). We do have INSERT DATA and DELETE DATA - the important feature being they only work on data and which maybe very long so knowing there are no variables and it's all ground triples is quite important. > > long form: > > DELETE {P1} > INSERT {P2} > WHERE {P3} > > short forms: > > ADD {P} > REMOVE {P} And DELETE WHERE {P} - or DELETE otherword {P} - which misses the template part that is the duplication - and does not use a completely new word. Emphasises the {P} is still a pattern with variables (albeit restricted in form - but the grammar can cope with that). This addresses the issue at the point of concern without cascading to the rest of the request. Andy > > just my two cents, > Axel
Received on Monday, 11 January 2010 14:35:25 UTC