Re: Question on blank nodes

Thanks for the pointer. That was the start of the discussion which was 
resolved the following week at 
http://www.w3.org/2009/sparql/meeting/2010-03-09#resolution_2

"""
RESOLVED: Blank nodes in DELETE templates act as "wild cards", 
effectively as variables bound to all RDF terms; the same blank node 
cannot be used in the WHERE clause and the template, or in multiple 
BGPs, SteveH, dcharbon2, LeeF abstaining
"""

So the answer to Paul's question is that that query should be illegal 
because it reuses _:b in both the WHERE clause and the template.

I believe that everyone agreed that

DELETE WHERE { ?s :p _:b } ought to be equivalent to

DELETE WHERE { ?s :p ?abcdefghijk }

though I can't find a resolution to that effect. Note that this means 
that DELETE WHERE { ... } is more than *just* a syntactic transformation.

Lee

On 6/29/2010 6:45 PM, Birte Glimm wrote:
> I believe these are the relevant minutes:
> http://www.w3.org/2009/sparql/meeting/2010-03-02
>
> I haven't read them completely, but they cover bnodes in deletes.
> Birte
>
> On 29 June 2010 22:39, Gregory Williams<greg@evilfunhouse.com>  wrote:
>> On Jun 29, 2010, at 5:12 PM, Paul Gearon wrote:
>>
>>> I've been trying to find the conversation we've had on the scope of
>>> blank nodes in a delete, but so far I haven't found it.
>>>
>>> What happens for the following query:
>>>
>>>   DELETE { ?s :p _:b } WHERE { ?s :p _:b }
>>>
>>> Is the _:b treated as the same node in the template as it is in the pattern?
>>
>> Relatedly, I'd wonder if this is exactly equivalent to:
>>
>> DELETE WHERE { ?s :p _:b }
>>
>> or if the semantics are slightly different. I can't figure out based on the text in the latest working draft of Update whether these two should act the same.
>>
>> .greg
>>
>>
>>
>
>
>

Received on Wednesday, 30 June 2010 03:13:30 UTC