W3C home > Mailing lists > Public > semantic-web@w3.org > October 2014

Re: RDF Graphs

From: Hugh Glaser <hugh@glasers.org>
Date: Mon, 27 Oct 2014 22:40:14 +0000
Cc: Pat Hayes <phayes@ihmc.us>, Semantic Web <semantic-web@w3.org>
Message-Id: <C30D1620-CCBC-46FE-97E1-F7D45EFFC8AF@glasers.org>
To: Melvin Carvalho <melvincarvalho@gmail.com>
Thanks to all.
So here’s my problem, and I still sort of have it.
The meaning of the word “Graph” in “RDF Graph” is not something that people normally recognise - but it doesn’t say that anywhere that I have found.
To be honest, it all feels rather sloppy.

The documents and everywhere use the term “RDF Graph”.
And in fact they use terms like nodes and edges (as do many of the responses here).

But no matter how many times people say the set of triples are a Graph, it doesn’t make it so!
That is, unless you define what you mean by Graph to be consistent with that view.
And nowhere can I find (in the documents or in any postings) what is the formal definition of a Graph, as the term is used in the phrase RDF Graph.
(Yes, Pat, I do try to read the normative standards documents where I can - and in fact I search as well, so for example I found http://answers.semanticweb.com/questions/8726/rdf-graph-is-not-defined-as-the-mathematical-concept-of-graph
:-) )
http://www.w3.org/TR/rdf11-concepts/#section-rdf-graph certainly doesn’t define anything that looks like a mathematical graph to me.

Now, I am usually happy to be fuzzy, but I am a bit surprised that this list is - I chose the SemWeb list rather than LOD because I thought that I would just get back some maths that would explain it! :-)
I probably expected someone to tell me what is the isomorphism between sets of triples and a particular sort of Graph.

All the doc really says is "An RDF graph is a set of RDF triples.”.
Now, that seems problematic to me.
Because what was meant to be a good intuitive description for people - that RDF is a graph of sim[ply nodes and edges, doesn’t really cut it.

Of course, it goes on to say "It is possible for a predicate IRI to also occur as a node in the same graph.” is rather strange.
And this confusion has an effect, because I find that people who don’t read the source material don’t realise they can do that - even though every significant ontology does that.

And another problem is that I then find a risk of confusion over the scope spaces of the IRIs as node or edge labels. If I have nodes with labels, clearly nodes with the same labels are the same node in a graph. But what of IRIs that are both node and edge labels?Can you consider thing that have the same label, but different type, to be the same?

I have searched quite hard, and can’t find any other context in which such a set of triples is considered to be something called a Graph.
Can anyone find such a thing I can refer to please?

Isn’t it bad to appeal to an intuition that breaks down very quickly?
Especially when it is using a very common term in something other than the normal sense?

There seems to be an agreement (not surprisingly) that "an RDF graph is a set”.
So that sort of begs a very simple question:- if it isn’t a graph, and it’s a set, why isn’t it called an "RDF Set”?

> On 27 Oct 2014, at 19:10, Melvin Carvalho <melvincarvalho@gmail.com> wrote:
> 
> 
> On 27 October 2014 19:06, Pat Hayes <phayes@ihmc.us> wrote:
> The use of the word "graph" in RDF is motivated by the illustrative diagrams rather than by the definitions of mathematical graph theory. In fact, mathematical graph theory gets in the way, since RDF graphs are not graphs in the sense of graph theory.
> 
> Formally, an RDF graph is a *set* of RDF triples, and an RDF triple is a 3-element *sequence* comprising a subject which is an IRI or a blank node, a property which is a IRI and an object which is an IRI, a blank node or a literal; for definitions of 'blank node' and 'literal', see http://www.w3.org/TR/rdf11-concepts/#section-rdf-graph
> 
> So, long story short: an RDF graph is a set.
> 
> On Oct 27, 2014, at 10:26 AM, Hugh Glaser <hugh@glasers.org> wrote:
> 
> > Everyone talks about RDF Graphs, and I have sort of puzzled over what an RDF Graph is - so I thought I would ask.
> >
> > Sorry if you just need to point me at some W3C resource somewhere.
> 
> The formal definitions are given in full detail in the RDF concepts document, part of the normative standard. http://www.w3.org/TR/rdf11-concepts/#section-rdf-graph.  By and large, it is usually good policy to read the normative standards documents to find the formal definitions of concepts, for any standard.
> 
> >
> > "This linking structure forms a directed, labeled graph, where the edges represent the named link between two resources, represented by the graph nodes. This graph view is the easiest possible mental model for RDF and is often used in easy-to-understand visual explanations.”
> > (http://www.w3.org/RDF/ )
> > (I strongly agree with the second sentence, by the way!)
> >
> > Simple Graphs are usually G = (V, E) comprising a set V of vertices together with a set E of edges, but that doesn’t seem to describe RDF Graphs for me.
> 
> Indeed, it does not.
> 
> > The sort of thing that I am considering is an RDF Graph such as:
> >
> > rdfs:label rdfs:label “Label” .
> >
> > Is it G = ({rdfs:label, “Label”}, {(rdfs:label, “Label”)} with edge-labelling function (rdfs:label, “Label”) => rdfs:label ?
> 
> No. It is in fact
> 
>  { < www.w3.org/TR/rdf-schema/label, www.w3.org/TR/rdf-schema/label, < "Label", http://www.w3.org/2001/XMLSchema#string > > }
Specific on this bit, please Pat:
So I think you are saying that the graph is a set of triples, in this case one triple.
And that you are separately saying that my graph concrete syntax should not be allowed to use “simple literals", as the RDF was?
Also, is there any reason that you moved to (partial) URIs for the Graph syntax?

> 
> > So we need to have both a vertex and an edge label with value rdfs:label, and they don’t really have a logical connection.
> > Sort of worrying?
> >
> > Is that the sort of graph an RDF Graph is, and is that how it is formally defined?
> 
> No, see above.
> 
> >
> > Also, a "labeled graph” usually refers to the vertices being labelled; should it not say that RDF is a “directed, edge-labelled graph”?
> >
> > Not exactly my forte this, so I am hoping I will be able to understand any answers!
> 
> Hope this helps.
It does, thanks.

Best
Hugh

> 
> Pat is right (as usual).  You may want to add the term "directed" graph, as I vaguely remember in graph theory edges are bidirectional by default.
>  
> 
> Pat
> 
> > Best
> > Hugh
> > --
> > Hugh Glaser
> >   20 Portchester Rise
> >   Eastleigh
> >   SO50 4QS
> > Mobile: +44 75 9533 4155, Home: +44 23 8061 5652
> >
> >
> >
> >
> 
> ------------------------------------------------------------
> IHMC                                     (850)434 8903 home
> 40 South Alcaniz St.            (850)202 4416   office
> Pensacola                            (850)202 4440   fax
> FL 32502                              (850)291 0667   mobile (preferred)
> phayes@ihmc.us       http://www.ihmc.us/users/phayes
> 
> 
> 
> 
> 
> 
> 
> 

-- 
Hugh Glaser
   20 Portchester Rise
   Eastleigh
   SO50 4QS
Mobile: +44 75 9533 4155, Home: +44 23 8061 5652
Received on Monday, 27 October 2014 22:40:41 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:49:26 UTC