W3C home > Mailing lists > Public > www-rdf-interest@w3.org > August 2004

Re: Reification - whats best practice?

From: Bob MacGregor <macgregor@isi.edu>
Date: Thu, 26 Aug 2004 09:32:02 -0700
Message-ID: <412E1082.8080104@isi.edu>
To: Steve Harris <S.W.Harris@ecs.soton.ac.uk>
CC: "'RDF interesting groupe'" <www-rdf-interest@w3.org>
Steve Harris wrote:

>On Wed, Aug 25, 2004 at 10:47:13 -0700, Bob MacGregor wrote:
>>   Sandro Hawke wrote:
>> The right solution is to use contexts.  Contexts can be implemented
>> using quads instead of triples, or by using a scheme for
>> encapsulating groups of statements, as is done in the Triple system.
>> The DAWG committee is taking baby steps towards contexts by
>> including a SOURCE element in BRQL.  If you substitute the term
>> "context" for "source" in a BRQL query, then you have quads.  Some
>> of us are planning to "abuse" BRQL by treating the sources as if
>> they are contexts.  I would not be surprised if members of the DAWG
>> committee have that in mind (but I can't speak for them).
>It is still up in the air wether SOURCE will be included, some of the
>members are not keen on it.
>- Steve 
It would be sad indeed if this small step forward (SOURCE) doesn't happen. 

What many seem to be missing is that the notion of a "named container of 
triples" is common to all solutions
that are being argued.  A document of RDF triples is a subcase.  A named 
graph is a subcase
(or the same case).  A reified statement is the subcase where the 
container can contain only
one triple. 

When someone says "I'm not using contexts, because we can't agree on 
what they mean, but
here is my named container solution", they are really using contexts -- 
they've just settled
on a particular case. 

The issue of quads is in some sense secondary.  A quad is just the 
syntactic glue that relates
each triple in a container to the container.  So the fundamental issue 
relates to contexts, not quads.

So where is the controversy?  Possibly is has to do with the problem of 
nested contexts.  The
most general solutions allow contexts to contain other contexts.  If the 
named graph solution
allows one to apply a name to a subgraph of another graph, then it is 
supporting exactly the same kind of
nesting.  The named document solution does not support nesting.

Summing up. 

- The current RDF provides miserable support for provenance data (to 
cite the
most obvious use case for contexts). 

- Named containers of triples provide a solution.  Many implementations 
of named
containers already exist.

- Most implementers of triple stores implement some
form of container inside their systems to indicate the source of the 
triples, but RDF
doesn't provide a means for them to expose that mechanism.

- The SOURCE construct in BRQL would provide a solution that is narrower 
but consistent with, a general named container solution.

My near-term recommendation would be to pester the DAWG committee to include
SOURCE in their spec.  Its quite hard to get traction in this area, and 
that is currently
our best shot.

Cheers, Bob

Bob MacGregor
Chief Scientist

	Siderean Software Inc
5155 Rosecrans Ave, #1078
Hawthorne, Ca 90250 

bmacgregor@siderean.com <mailto:bmacgregor@siderean.com> 	
tel: 	+1-310-491-3424
fax: 	+1-310-491-3338




Received on Thursday, 26 August 2004 16:32:42 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:07:52 UTC