W3C home > Mailing lists > Public > public-rdf-wg@w3.org > April 2012

Re: New Proposal (6.1) for GRAPHS

From: Sandro Hawke <sandro@w3.org>
Date: Mon, 02 Apr 2012 10:55:03 -0400
To: Pat Hayes <phayes@ihmc.us>
Cc: public-rdf-wg <public-rdf-wg@w3.org>
Message-ID: <1333378503.28199.11.camel@waldron>
On Thu, 2012-03-29 at 10:47 -0500, Pat Hayes wrote:
> Sandro
> 
> First, congratulations on expalining the idea so elegantly (I will try to take a style lesson from you). But I don't think your neat idea for defining the class rdf:Graph actually can be made to work in the way you want. See below.
> 
> 
> On Mar 27, 2012, at 9:23 PM, Sandro Hawke wrote:
> 
> > I've written up design 6 (originally suggested by Andy) in more
> > detail.  I've called in 6.1 since I've change/added a few details that
> > Andy might not agree with.  Eric has started writing up how the use
> > cases are addressed by this proposal.
> > 
> > This proposal addresses all 15 of our old open issues concerning graphs.
> > (I'm sure it will have its own issues, though.)
> > 
> > The basic idea is to use trig syntax, and to support the different
> > desired relationships between labels and their graphs via class
> > information on the labels.  In particular, according to this proposal,
> > in this trig document:
> > 
> >   <u1> { <a> <b> <c> }
> > 
> > ... we only know that <u1> is some kind of label for the RDF Graph <a>
> > <b> <c>, like today.  However, in his trig document:
> > 
> >   { <u2> a rdf:Graph }
> >   <u2> { <a> <b> <c> }
> > 
> > we know that <u2> is an rdf:Graph and, what's more, we know that <u2>
> > actually is the RDF Graph { <a> <b> <c> }.  That is, in this case, we
> > know that URL "u2" is a name we can use in RDF to refer to that g-snap.
> > 
> > Details are here: http://www.w3.org/2011/rdf-wg/wiki/Graphs_Design_6.1
> 
> From there:
> 
> We define the class rdf:Graph such that for its instances, the rdf:hasGraph relation is the identity relation. That is, a Graph hasGraph itself.
> 
> [edit]Test
> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#
> >
> { <u1> rdfs:comments "A good graph", a rdf:Graph. }
> <u1> { <a> <b> <c> }   # u1 *is* this graph
> <u2> { <a> <b> <c> }   # u2 merely *has* this graph
> 
> DOES NOT ENTAIL
> 
> { <u2> rdfs:comments "A good graph" }
> 
> ......
> 
> But it does entail that. 

Nope, there's a flaw in your logic.    <ominous sound...>

(Or maybe I just wasn't complete enough in my specification of
rdf:hasGraph.  You assumed it was symmetric, I think, and I didn't mean
it that way.)

> The relation is on the entailed objects, not on the IRIs, right? 

Right.

> So that first quad says that what <u1> denotes, let me write I(<u1>) for that, and the graph { <a> <b> <c> }, are actually the very same thing: I(<u1>) =  { <a> <b> <c> }.

Right.

>  And this is so because  I(<u1>) is in the class rdf:Graph. Which is the same as saying that {<a> <b> <c>} is in that class (because these are the very same thing.) 

Right.

> So now look at the second quad. That says that the rdf:hasGraph relation holds between I(<u2>} and {<a> <b> <c>},

Yes, but rdf:hasGraph is not a symmetric relationship.  

{ <a> rdf:hasGraph <b> }

is entirely different from 

{ <b> rdf:hasGraph <a> }

>  and we know that the second of these is in the class rdf:Graph. 

Yes, the second, {<a> <b> <c>}.  But we don't know that about the first,
I(<u2>}.

> So, the rdf:Graph relation on it is the identity relation,

Since the subject of rdf:hasGraph here is not known to be an rdf:Graph,
rdf:hasGraph does not become the identity relation here.

>  so I(<i2>) = {<a> <b> <c>} as well. 

I assume you mean "u2" not "i2", and, as above, this does not follow.

Right?

   -- Sandro

> This follows because you have made the criterion be membership of the denoted thing in a class. As soon as you do that, you lose any way to distinguish between binary cases based on one of the argument IRIs. 
> 
> Contrary to what I said in the telecon yesterday, I now don't think there is any way out of this within the current RDF framework. Basically, you want to talk about the naming relation between a URI and a denotation, and you can't do that in a conventional  rdf-2004-style model theory. You need a small amount of referential opacity to make this work. We will have to change something to get that.
> 
> Pat
> 
> 
> 
> > 
> > That page includes answers to all the current GRAPHS issues, including
> > ISSUE-5, ISSUE-14, etc.
> > 
> > Eric has started going through Why Graphs and adding the examples as
> > addressed by Proposal 6.1:
> > http://www.w3.org/2011/rdf-wg/wiki/Why_Graphs_6.1
> > 
> >     -- Sandro (with Eric nearby)
> > 
> > 
> > 
> 
> ------------------------------------------------------------
> IHMC                                     (850)434 8903 or (650)494 3973   
> 40 South Alcaniz St.           (850)202 4416   office
> Pensacola                            (850)202 4440   fax
> FL 32502                              (850)291 0667   mobile
> phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
> 
> 
> 
> 
> 
> 
Received on Monday, 2 April 2012 14:55:20 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 22:02:03 UTC