Re: SPARQL update with blank nodes

On Wed, Apr 20, 2011 at 1:36 PM, Peter Frederick Patel-Schneider <
pfps@research.bell-labs.com> wrote:

> So now I don't understand SPARQL 1.1 Update, which states
>
> Deleting triples that are not present, or from a graph that is not
> present will have no effect and will result in success. *Using a new
> blank node in a delete template will lead to nothing being deleted, as
> the new blank node cannot match anything that already exists.* [emphasis
> added]
>
>
A better way of phrasing that might be, "a blank node label in a delete
template may not be reliably assumed to denote any particular resource in
the graph."


> because blank nodes *do* match, as per SPARQL 1.1 query.
>

Blank nodes in the WHERE pattern act as local variables that match anything,
but are projected out of the result set.

A better comparison is probably to blank nodes in a CONSTRUCT template,
described here:

http://www.w3.org/2009/sparql/docs/query-1.1/rq25.xml#tempatesWithBNodes

[[
A template can create an RDF graph containing blank nodes. The blank node
labels are scoped to the template for each solution. If the same label
occurs twice in a template, then there will be one blank node created for
each query solution, but there will be different blank nodes for triples
generated by different query solutions.
]]

-Alex


>
>
> peter
>
>
>
>
> From: Alex Hall <alexhall@revelytix.com>
> Subject: Re: matching basic graph patterns
> Date: Wed, 20 Apr 2011 11:25:28 -0500
>
> > On Wed, Apr 20, 2011 at 12:16 PM, Peter Frederick Patel-Schneider <
> > pfps@research.bell-labs.com> wrote:
> >
> >> Does anyone know where matching basic graph patterns is defined in the
> >> new SPARQL documents?  I just tried to find this definition and failed.
> >
> > http://www.w3.org/TR/sparql11-query/#BGPsparql
> >
> > Is this what you're looking for?
> > -Alex
>

Received on Wednesday, 20 April 2011 17:48:52 UTC