Re: WITH <x> -> INSERT|DELETE... USING *NAMED* <x>

On 11/26/2011 12:44 PM, Andy Seaborne wrote:
> (not replying the the editorial nit)
>
> On 26/11/11 15:12, Eric Prud'hommeaux wrote:
>> http://www.w3.org/2009/sparql/docs/update-1.1/#deleteInsert
>>
>> [[
>> WITH<g1> INSERT { x y z } DELETE { a b c } WHERE { ... }
>>
>> Is considered equivalent to:
>>
>> INSERT { GRAPH<g1> { x y z } } DELETE { GRAPH<g1> { a b c } }
>> USING<g1> WHERE { ... }
>> ]]
>>
>> should that be "USING NAMED<g1>" ?
>> ^^^^^
>
> No, oddly.
>
> USING <g1> means use <g1> for the default graph of WHERE {...}. So there
> is an RDF dataset of with the default graph and no named graphs.

Right. Andy, do you remember the motivation for this?

Seems like an equally valid design would be for it to stand for
USING <g1>
USING NAMED <g1>

so that you'd have the graph available in both parts of the dataset.

(I have no strong feeling & not looking to change things for change's 
sake, just don't recall the original motivation.)

Lee

>
> This way, if GRAPH ?var is used in the pattern, GRAPH ?var never matches
> (no named graphs).
>
> WHERE { ... GRAPH ?var { ... } ... }
>
> and
>
> WHERE { ... GRAPH <g1> { ... } ... }
>
> do not match.
>
>
> Writing GRAPH <g1> works for the INSERT {} and DELETE {} parts because
> there it's a template.
>
> Graph <g1> need not exist before the operation.
>
> Andy
>
>
>
>
>
>
>
>

Received on Saturday, 26 November 2011 18:03:38 UTC