Re: Scope of blank nodes in TriG?

On 2011-10-17, at 15:19, Richard Cyganiak wrote:

> On 17 Oct 2011, at 14:56, Steve Harris wrote:
>>> The original use case for TriG (this is years before SPARQL existed) was serializing collections of RDF documents in a single document. In that use case there can be no blank nodes shared between documents, so graph scope made sense and had the convenient side effect of simplifying serializer implementation.
>> 
>> It also simplifies the parse process.
>> 
>> Suppose I start parsing a TriG document and see:
>> 
>> <G1> { _:x a <Foo> }
>> 
>> then 100GB later in the file I find:
>> 
>> <G1734> { <x> :seeAlso _:x }
>> 
>> If there was document scope I would have to carry the assigned skolem form* for _:x around in my parser for the entire parse - that's fine if you only have a handful of bNodes, but with billions of them it can be quite resource intensive.
> 
> I'm not sure if I understand. Don't you have a problem already if you import a single large N-Triples file?

Yes.

- Steve

-- 
Steve Harris, CTO, Garlik Limited
1-3 Halford Road, Richmond, TW10 6AW, UK
+44 20 8439 8203  http://www.garlik.com/
Registered in England and Wales 535 7233 VAT # 849 0517 11
Registered office: Thames House, Portsmouth Road, Esher, Surrey, KT10 9AD

Received on Monday, 17 October 2011 14:24:40 UTC