- From: Paul Gearon <gearon@ieee.org>
- Date: Thu, 3 Dec 2009 11:38:35 -0500
- To: Steve Harris <steve.harris@garlik.com>
- Cc: SPARQL Working Group <public-rdf-dawg@w3.org>
On Thu, Dec 3, 2009 at 5:57 AM, Steve Harris <steve.harris@garlik.com> wrote: > On 3 Dec 2009, at 01:44, Paul Gearon wrote: > >> On Wed, Dec 2, 2009 at 6:32 AM, Steve Harris <steve.harris@garlik.com> >> wrote: >>> >>> On 1 Dec 2009, at 21:06, Paul Gearon wrote: <snip/> >>>> (2) >>>> WITH <people_graph> >>>> INSERT INTO <email_graph> {?person foaf:mbox ?email }; >>>> INSERT INTO <name_graph> {?person foaf:name ?name } >>>> WHERE { >>>> ?person a foaf:Person >>>> OPTIONAL { ?person foaf:mbox ?email } >>>> OPTIONAL { ?person foaf:name ?name } >>>> } >>> >>> Surely variable bindings don't span the ; ? >> >> I expected them to come out of the WHERE, so yes, they do. The only >> binding that occurs in the above example is in the WHERE clause. The >> INSERTs are just using an already bound set of variables. > > To me that seems very strange. I see where you are coming from, but recall that the ; characters are just there to separate the various INSERTs and DELETEs. They are all supposed to be part of the same command, and that command has a single WHERE clause. >From what I can see, the need for these separator characters is really to protect having multiple directives, and wouldn't be needed if your proposed option of using GRAPH inside a single INSERT and single DELETE were adopted. (The point I failed to realize on my first time through this). I'm still uncomfortable with "quadifying" the syntax in this way, but it's starting to make more sense to me, particularly if we can use WITH to reduce the use of the word GRAPH everywhere. Regards, Paul
Received on Thursday, 3 December 2009 16:39:08 UTC