- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Mon, 01 Oct 2012 13:49:02 +0100
- To: "Polleres, Axel" <axel.polleres@siemens.com>
- CC: "public-rdf-dawg@w3.org" <public-rdf-dawg@w3.org>
On 01/10/12 12:43, Polleres, Axel wrote: > Dear Andy, > > Just to clarify: this means that you agree that > > INSERT DATA { GRAPH :g1 { _:b :p :o } }; > INSERT DATA { GRAPH :g2 { _:b :p :o } } > > would behave differently from > > INSERT { GRAPH :g1 { _:b :p :o } } WHERE {}; > INSERT { GRAPH :g2 { _:b :p :o } } WHERE {} > > yes? Yes. The use of bNodes is different. The first is talking about actual bNodes to go in the data The second is talking about placeholders in a template substitution. GRAPH is not a factor. Andy > > > Thanks, > Axel > > >> -----Original Message----- >> From: Andy Seaborne [mailto:andy.seaborne@epimorphics.com] >> Sent: Montag, 01. Oktober 2012 13:38 >> To: public-rdf-dawg@w3.org >> Subject: Re: 2 New INSERT DATA test cases (was: Test case >> proposal in the context of RV-10: insert-data-same-bnode) >> >> >> >> On 01/10/12 12:17, Polleres, Axel wrote: >>> Dear Olivier, >>> >>> Thanks for joining the discussion! >>> >>> The test cases were created under the understanding that bnodes are >>> scoped over the whole request (cf. clarifying rewording in >> Update and >>> draft response to RV-10) [1,2]. If there's no agreement >> here, then we >>> have to change the definitions in Update, and apparently, >>> implementations which passs the Suggested test cases would >> need to be changed. >>> >>> As for your suggested additional case, I think this is a tricky one: >>> >>>> INSERT { GRAPH :g1 { _:b :p :o } } WHERE {}; INSERT { >> GRAPH :g2 { >>>> _:b :p :o } } WHERE {} >>> >>> According to my reading of our definitions, this depends on >> whether we >>> view the two empty mappings returned by the two WHERE clauses as >>> identical or Different, since the skolem function sk in >>> >> http://www.w3.org/2009/sparql/docs/update-1.1/Overview.xml#def_dataset >>> QuadPattern is unique to the request and the mapping (this >> behaviour >>> is analogous to CONSTRUCT) >> >> In a SPARQL Construct different bNodes are generated for each >> occurrence of a solution mapping even in the same query. >> >> If the WHERE matches with two empty rows: >> >> row1 = {} >> row2 = {} >> >> then >> >> CONSTRUCT { _:a :p :o } >> >> generates two triples with two different bNodes as subjects. >> >> So within the same WHERE clause the same-by-value binding >> generates different bNodes. >> >> Therefore only (2) makes sense to me. Defining in terms of >> operations is enough. >> >> Andy >> >>
Received on Monday, 1 October 2012 12:49:33 UTC