W3C home > Mailing lists > Public > public-rdf-wg@w3.org > February 2013

Re: Problem with auto-generated fragment IDs for graph names

From: Manu Sporny <msporny@digitalbazaar.com>
Date: Tue, 19 Feb 2013 17:03:38 -0500
Message-ID: <5123F6BA.6070507@digitalbazaar.com>
To: public-linked-json@w3.org
CC: 'RDF-WG' <public-rdf-wg@w3.org>
On 02/19/2013 10:10 AM, Andy Seaborne wrote:
>> I read a dataset somewhere on the Web and it has IRIs in it,  how 
>> would I know that they had been "defined" in this way so that I 
>> knew they were intended to denote a graph?
> 
> Either know the provenance of the data or look at the URI pattern and
> know it's JSON-LD generated.

Andy, all the variations of this idea that we've covered on this list
either don't work, or lead to strange outcomes in RDF. I tried to
explain this here:

http://lists.w3.org/Archives/Public/public-rdf-wg/2013Feb/0073.html

Fragment IDs are not a good solution for us because they don't work in
instances where there is no base IRI for the document (which is our
primary use case in the Web Payments work).

Skolemization doesn't work because the IDs must be generated in a
decentralized manner when normalizing, there is no base IRI, and if the
IDs picked between two implementations for the same data differ, the
digital signatures won't match.

Minting a new IRI scheme has the downside that nobody on this mailing
list, rightfully, thinks that we need a new IRI scheme just for naming
graphs. This is especially true now that nobody on this list has been
able to claim that there is any technical problem with using blank nodes
as graph names. New IRI schemes would also have to be interpreted in a
special way so that RDF statements aren't merged accidentally (what
happens when there are two <graph:1> IRIs in the same quad-store?).

UUIDs do not work for us because of the possibility of collision, even
if it is a very remote possibility. There is a solution on the table
that doesn't have any global collision possibility (bnode ids), we'd
rather use that.

Allowing blank nodes to serve as a name for a graph seems to be the best
solution, as we seem to have exhausted all of the other possibilities.

-- manu

-- 
Manu Sporny (skype: msporny, twitter: manusporny, G+: +Manu Sporny)
President/CEO - Digital Bazaar, Inc.
blog: Aaron Swartz, PaySwarm, and Academic Journals
http://manu.sporny.org/2013/payswarm-journals/
Received on Tuesday, 19 February 2013 22:04:13 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:25:54 GMT