W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > October to December 2009

RE: Questions about Update 1.1

From: Seaborne, Andy <andy.seaborne@hp.com>
Date: Thu, 15 Oct 2009 18:20:20 +0000
To: Steve Harris <steve.harris@garlik.com>, "public-rdf-dawg@w3.org Group" <public-rdf-dawg@w3.org>
Message-ID: <B6CF1054FDC8B845BF93A6645D19BEA3693FA2212B@GVW1118EXC.americas.hpqcorp.net>


> -----Original Message-----
> From: public-rdf-dawg-request@w3.org [mailto:public-rdf-dawg-request@w3.org]
> On Behalf Of Steve Harris
> Sent: 15 October 2009 17:28
> To: public-rdf-dawg@w3.org Group
> Subject: Questions about Update 1.1
> 
> I've been noodling on update today, and I have a couple of questions
> for people who've already implemented it:
> 
> 1) If you have DELETE { <a> <b> ?z . <c> <d> ?z } what does that mean?
> The grammar allows it, but maybe it shouldn't? It could imply DELETE
> { <a> <b> ?z . <c> <d> ?z } WHERE { <a> <b> ?z . <c> <d> ?z }, but it
> should be explicit what happens somewhere.

The fact WHERE is optional is probably a historical mistake - when DELETE DATA didn't exist, it was not needed if the template was all ground triples.

I like the idea of it as a shorthand for 

DELETE { <a> <b> ?z . <c> <d> ?z } WHERE { <a> <b> ?z . <c> <d> ?z }

for just DELETE.

  INSERT { <a> <b> ?z . <c> <d> ?z }

seems meaningless but an easy mistake to make.

> 2) Can you delete bNodes with DATA? DELETE DATA { <a> <b> _:z }
> doesn't really make much sense. Some stores (including Jena and
> 4store) allow you to quote bNodes like DELETE DATA { <a> <b> <_:z> }
> but that's non-standard.

Yes - this is more of a problem now we have update and not just query.

We could document the <_:...> usage.

> Without DATA you can do something like:
>    DELETE { <a> <b> ?z . <c> <d> ?z }
>    WHERE { <a> <b> ?z . <c> <d> ?z . FILTER(isBNODE(?z)) }
> but that's really inconvenient, and will be hard to optimise if you
> want to delete large chunks of data.
> 
> - Steve

	Andy

Received on Thursday, 15 October 2009 18:37:15 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:40 GMT