- From: Steve Harris <steve.harris@garlik.com>
- Date: Tue, 10 Nov 2009 12:07:50 +0000
- To: Andy Seaborne <andy.seaborne@talis.com>
- Cc: Kjetil Kjernsmo <kjetil@kjernsmo.net>, public-rdf-dawg@w3.org
On 10 Nov 2009, at 10:26, Andy Seaborne wrote: > On 10/11/2009 06:44, Steve Harris wrote: >> On 9 Nov 2009, at 22:15, Andy Seaborne wrote: >>> On 09/11/2009 20:27, Steve Harris wrote:ILTERs >> >> Well, in any case we still need to allow for >> >> DELETE { >> template >> } >> WHERE { >> pattern >> OPTIONAL { >> pattern2 >> } >> } > > That's already in the SPARQL/Update document isn't it? DELETE with > template and pattern. Template being a BGP-pattern only. Or are > you saying template involves OPTIONAL? I was just saying that the template has to be able to handle unbound variables, but we do than in CONSTRUCT already. >> CONSTRUCT can do that, so it's well defined. > > The template can't involve OPTIONAL in CONSTRUCT as currently defined. no, but it handles unbound variables. > The fact that in a template, only individual triples, not patterns, > with unbound variables are omitted sometimes does what you want, > sometimes doesn't. Indeed, but we can't really change that now, and my experience of it is quite positive. > In the CONSTRUCT case, you get more triples with the single triple > pattern exclusion and more triples in the answer is relatively safe > but when used in DELETE that can end up removing more triples, which > is not so safe. No, but as long as it parallels CONSTRUCT people shouldn't be surprised. > If the template above is supposed to be pattern+pattern2, it can > have strange effects for any triple pattern in pattern2 that does > not use a variable introduced somewhere in the optional part: > > { ?x :p ?v . OPTIONAL { ?x :q ?z . ?x :r 123 } } > ==> > { ?x :p ?v . ?x :q ?z . ?x :r 123 } Indeed, but if you were testing via CONSTRUCT, this would be apparent. > and you can end up deleting "?x :r 123" which is otherwise guarded > by a match of "?x :q ?z". Opps. > > So we would need an interpretation of the keyword OPTIONAL in > templates. We would, but that wasn't what I was suggesting :) - Steve -- Steve Harris, CTO, Garlik Limited 2 Sheen Road, Richmond, TW9 1AE, UK +44(0)20 8973 2465 http://www.garlik.com/ Registered in England and Wales 535 7233 VAT # 849 0517 11 Registered office: Thames House, Portsmouth Road, Esher, Surrey, KT10 9AD
Received on Tuesday, 10 November 2009 12:08:20 UTC