W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2009

RE: Querying "all graphs"

From: Orri Erling <erling@xs4all.nl>
Date: Tue, 31 Mar 2009 08:47:05 +0200
Message-Id: <200903310647.n2V6lVWn083542@smtp-vbr10.xs4all.nl>
To: "'Chimezie Ogbuji'" <ogbujic@ccf.org>, "'Seaborne, Andy'" <andy.seaborne@hp.com>, "'Lee Feigenbaum'" <lee@thefigtrees.net>
Cc: "'Kjetil Kjernsmo'" <Kjetil.Kjernsmo@computas.com>, "'RDF Data Access Working Group'" <public-rdf-dawg@w3.org>


-----Original Message-----
From: public-rdf-dawg-request@w3.org [mailto:public-rdf-dawg-request@w3.org]
On Behalf Of Chimezie Ogbuji
Sent: Tuesday, March 31, 2009 1:24 AM
To: Seaborne, Andy; Lee Feigenbaum
Cc: Kjetil Kjernsmo; 'RDF Data Access Working Group'
Subject: Re: Querying "all graphs"

I've created two features:

- http://www.w3.org/2009/sparql/wiki/Feature:CompositeDatasets
- http://www.w3.org/2009/sparql/wiki/Feature:AllNamedGraphs

CompositeDatasets is meant to be a comprehensive solution for composing
named, arbitrary subsets from all named graphs in a dataset, while
AllNamedGraphs is supposed to be 'low hanging fruit' (i.e., the feature that
there seems to be more consensus need around and corresponds to Lee's #1).


Chimezie

The usefulness of this is quite clear.  We have always queried the set of
the graphs when no default graph was specified.  More recently we have added
a way to have a single name stand for an enumerated collection of graphs.
There is a way of also querying all graphs except a specified list.  

If we are looking at an open web situation where each graph is a personal
foaf file, then some access control or reliability filtering will generally
be needed.  This means qualifying the graph by some query, for example
consider only graphs from people I know.  Such things can be expressed if
the graph is initially the union of everything and then restricted pattern
by pattern.

Like select * where graph <directory> { ?g has_author <me>} . graph ?g {
<me> foaf:knows ?x }}

This would be all the people I know according to me.  The directory graph
would be just a regular graphkeeping graph origins and maintained by
application logic.

Listing graphs as enumeration of literals is a bit easier to optimize even
though   the equivalent can be expressed as above.  
	
Orri
Received on Tuesday, 31 March 2009 06:48:33 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:38 GMT