Re: Attempted to address blank node issue in R2RML draft

Hi Bob,

I thought about this and re-phrased the paragraph. I removed the reference to rr:graph and friends, as they were distracting from the point (but well done spotting the missing rr:graphColumn!). he new text is hopefully clearer:

> Each triple generated from an R2RML mapping is placed into one or more target graphs. Possible target graphs are the unnamed default graph, and the IRI-named named graphs.
> 
> R2RML-generated blank nodes are scoped to a single graph. When the same blank node identifier occurs in more than one graph, then a distinct blank node is created for each graph. An R2RML-generated blank node can never be shared by two triples in two different graphs.

Best,
Richard



On 15 Mar 2011, at 21:36, Robert Scanlon wrote:
> Should the first statement be modified to include rr:graphColumn also?  (which btw has an incorrect range in section 5, at least inconsistent with 3.4.1.4, which shows range as string).
> 
> When I first read your second sentence, I thought it was implying that maps generating blank nodes could only specify one graph (but subsequent sentences clarified that).  I wonder if modifying the latter part of the first paragraph a bit might help make this clearer up-front?  Here's a possible re-wording of the first paragraph, use any, all, or none as you see fit.
> 
> Triples generated from an R2RML mapping can be placed into multiple different graphs     using rr:graph, rr:graphColumn, or rr:graphTemplate.  However, blank nodes should never appear in two different graphs, named or unnamed.  Therefore, R2RML processors generating triples conforming with this specification must create a unique blank node identifier for each graph into which a blank node is placed.
> 
> Bob Scanlon
> Revelytix
> 
> 
> On Tue, Mar 15, 2011 at 4:05 PM, Richard Cyganiak <richard@cyganiak.de> wrote:
> I've tried to address ISSUE-30 in a new section of the draft:
> http://www.w3.org/2001/sw/rdb2rdf/r2rml/#Blank_Nodes
> 
> Its contents are appended at the end.
> 
> There was a Usage Notes subsection on blank nodes; I merged its contents into this new section as both discuss the scope of blank nodes. Since it was the only usage note at this point, I removed the Usage Notes section for the time being.
> 
> This change might go a *little* bit further than what was indicated by my ACTION; if anyone objects to this text, please let me know ASAP and I'll revert to something uncontroversial.
> 
> Best,
> Richard
> 
> -------
> 
> Triples generated by an R2RML mapping can be placed into different graphs using rr:graph or rr:graphTemplate. Blank nodes in R2RML-generated triples are scoped to the single graph they appear in. The same blank node can never appear in two different graphs, named or unnamed. A single blank node identifier will create one distinct blank node for each graph that receives triples involving the blank node identifier.
> 
> This implies that triples generated from a single logical table row will have different subjects if the subjects are blank nodes and the triples are placed into different graphs.
> 
> Conformant R2RML processors MAY rename blank nodes when providing access to R2RML-mapped graphs. This means that client applications may see actual blank node identifiers that differ from those produced by the R2RML mapping. Client applications SHOULD NOT rely on the specific text of the blank node identifier for any purpose.
> 

Received on Monday, 21 March 2011 11:06:35 UTC