W3C home > Mailing lists > Public > public-rdf-wg@w3.org > October 2011

Re: Web Semantics for Datasets

From: Ivan Herman <ivan@w3.org>
Date: Fri, 7 Oct 2011 11:04:46 +0200
Cc: public-rdf-wg <public-rdf-wg@w3.org>
Message-Id: <0E494F40-4586-4F3C-9092-C760615EC0F9@w3.org>
To: Sandro Hawke <sandro@w3.org>

I am not sure I understand what you say about the time issue.

I have my foaf file at http://www.ivan-herman.net/foaf. This URI returns an RDF Graph containing all types of rubbish about me (yes, there is content negotiation involved, it may return RDFa, Turtle, RDF/XML, but I guess that is still all right, because the graph, at any given moment, is the same).

I think the practice out there is to consider <http://www.ivan-herman.net/foaf> as the name (in the named graph sense) of that graph. However, the way I read your description that would not be the case, because I may change that graph tomorrow by adding a new acquaintance or changing my phone number. What is then the name of the foaf graph in your approach?


On Oct 7, 2011, at 04:04 , Sandro Hawke wrote:

> Here's a proposal for what the fourth column should mean.  It's kind of
> obvious, and I think it's how many of us just assumed Named Graphs were
> supposed to work.    But I don't think it's been written down in a form
> we can use, so here it is, in a first draft.
> I haven't really tried to motivate this, but one thing it does is allow
> folks to refer to a graphs using just one URI.  As [1] points out rather
> painfully, as things stand now, you need multiple URIs just to identify
> each g-box (and thus g-snap).  (That is, you need to say which sparql
> endpoint you're talking about, and then which graph within its
> dataset.)
> My starting question was: what is the relationship between the IRI (the
> "graph name") and its associated g-snap in an RDF Dataset.  This
> applies to the dataset backing any SPARQL end point, as well as the
> dataset serialized in any multigraph syntax, like TriG or N-Quads.
> Another way to look at it: what does it mean to assert a TriG
> document?  If you send me the TriG Document "<a> { <s> <p> <o> }", and
> I trust you, what do I now know?
> Richard, I think, has been arguing for a minimalist position,
> answering "nothing", or "it depends on out-of-band agreements".  This
> "Web Semantics" proposal is an alternative.
> === Proposal
> The idea here is to make the relationship between the URI and the
> graph be the standard Web naming relationship, similar to what we all
> use for Web pages.  When you dereference the URI, you get the graph.
> This has the feature of being, to some extent, observable.  Just like
> triples are claims about some domain of discourse, quads become claims
> about idealized Web dereference behavior.
> Specifically: Consider a "graph naming" to be the association of a
> graph name N with a graph G.  For the graph naming to hold, every
> successful dereference of N yielding an RDF graph must yield G.  For a
> dataset D to hold, its default graph must hold (as normal in RDF) and
> every graph naming pair in D must hold.
> Example 1:  This dataset
>   <http://example.org> { <s> <p> <o>. }
> means that if anyone is able to dereference "http://example.org"
> and obtain an RDF graph serialization, the serialized graph will
> consist of the single triple, <s> <p> <o>.  Failure to dereference
> does not make the graph naming untrue, but a successful dereference
> yielding a different graph does.
> Example 2:  This dataset can never be true:
>   <http://example.org> { <s> <p> 1. }
>   <HTTP://example.org> { <s> <p> 2. }
> ... since one cannot get different results dereferencing URIs that
> differ only in the case of the scheme component (as per RFC 3986).
> Example 3:  This dataset:
>  <tag:hawke.org,2010-10-06:eg1> { <s> <p> <o>. }
> cannot be tested using Web protocols, since the "tag" URI scheme is
> (by design) not dereferenceable.  Whether it is true or false cannot
> be determined experimentally.
> ==== Temporal Context
> How can we say:
>   <http://example.org> { <s> <p> <o>. }
> if we suspect that "http://example.org" might serve some other content
> tomorrow?
> The answer is that datasets often need temporal qualification just
> like RDF graphs do.  It's just like saying in RDF:
>   <http://example.org/Alice> foaf:age 25.
> One solution for foaf:age triples is to include triples like:
>   <> dc:temporal "2011-10-06"^^xs:dateTime.
> and that can be done in datasets as well, using the default graph.
> More work is needed on this, but I'm pretty sure this proposal can use
> whatever solution people come up with for RDF and doesn't make matters
> much worse than they are already.
> ==== Practical Deployment Choices
> Any system which maintains a dataset (eg a sparql endpoint) or
> generates multigraph documents like TriG has to do one (or more) of
> the following:
> 1.  Use new non-dereferenceable graph names.  These could be tag or
>    uuid URIs, or http URIs in your own name space which you choose to
>    leave 404.
> 2.  Use your own dereferenceable graph names, perhaps relative to the
>    endpoint or TriG document URI.  If you do serve RDF content at
>    those URIs, it MUST be the same content (give or take stated time
>    lag).
> 3.  Use someone else's graph names.  Here, the key thing is temporal
>    metadata.  You have to decide what you want (copy once vs
>    synchronize with what accuracy) and (somehow) share that temporal
>    metadata.
> ...
> Okay, that's enough for now.  Give me a +1 if you think this is headed
> in a useful direction.
>    -- Sandro
> [1] http://www.w3.org/2011/prov/wiki/Using_named_graphs_to_model_Accounts

Ivan Herman, W3C Semantic Web Activity Lead
Home: http://www.w3.org/People/Ivan/
mobile: +31-641044153
PGP Key: http://www.ivan-herman.net/pgpkey.html
FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Friday, 7 October 2011 09:03:50 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:04:09 UTC