W3C home > Mailing lists > Public > semantic-web@w3.org > July 2012

Re: Why do we name nodes and not edges?

From: David Booth <david@dbooth.org>
Date: Tue, 31 Jul 2012 10:30:27 -0400
To: Hugh Glaser <hg@ecs.soton.ac.uk>
Cc: Melvin Carvalho <melvincarvalho@gmail.com>, Natasa Bulatovic <bulatovic@mpdl.mpg.de>, "<semantic-web@w3.org>" <semantic-web@w3.org>
Message-ID: <1343745027.2725.71938.camel@dbooth-laptop>
Hi Hugh,

On Mon, 2012-07-30 at 22:32 +0000, Hugh Glaser wrote:
> Well I have to say that all this enthusiasm for Named Graphs amazes me.
> This is of course primarily because I come from Linked Data, and since
> RDF does not include the name of the graph in its representations, or
> even in the model (as far as I can see), it is just plain wrong to
> look to Named Graphs as a major way of doing anything.
> At great effort people define a beautiful Framework (RDF), but then
> say that to do all these different things you need some external
> stuff.
> That would mean the Framework was wrong, and it is not clear to me
> that it is.

Not wrong, but with experience people realized that named graphs are
very helpful.  Yes, you *can* do anything with RDF without using named
graphs.  In fact, named graphs could be encoded in RDF triples if you
really wanted to do that -- just as in Lisp, *everything* is encoded
using CAR/CDR pairs -- but it becomes quite clumsy and inconvenient to
do it that way, and that drives up the complexity and
development/maintenance cost.
> 
> With respect to naming triples, at first sight it seems to me there is
> a perfectly sensible way of doing it, as I described in an earlier
> message.
> There is no need to describe a language for encoding the whole triple
> - a unique URI for the edge uniquely identifies the triple, and seems
> quite natural.
> This URI can then be subPropertyOf whatever it would have been in the
> general form.
> So we have gained identifiers for triples for the possible maximum
> cost of one extra subPropertyOf triple for each triple to be
> identified.
> And now RDF can be used to make statements about each triple (edge),
> and I can do it all in Linked Data.
> 
> This doesn't immediately solve the same thing as Named Graphs, where
> groups of triples/edges needed to be identified.
> But can't the edges be gathered into Classes?
> And with multiple inheritance, you can have arbitrary membership of
> Classes by any edge, giving much more power than simple Named Graphs,
> where triples/edges can only be members of one graph?

I find the idea of using subPropertyOf quite creative and intriguing,
and it may be a good solution in some cases.  But it does have the
downside of requiring inference (to recognize that :knows3412 is a
subPropertyOf foaf:knows), whereas the named graph approach doesn't.

David

> 
> As Steve says, naming edges is about convention, and would look weird
> to some people.
> But I find referring to an Oracle (the Named Graph) even weirder - if
> something doesn't come back in RDF on URI resolution, then for most of
> my apps I can't get to know about it.
> Don't it in RDF requires no change at all in the technology - SCBD
> includes whatever you need.
> 
> Is there anything technically wrong with what I am describing?
> 
> Best
> Hugh
> 
> On 30 Jul 2012, at 12:53, Melvin Carvalho <melvincarvalho@gmail.com> wrote:
> 
> > 
> > 
> > On 25 July 2012 18:11, Natasa Bulatovic <bulatovic@mpdl.mpg.de> wrote:
> > Could you point to some examples where this scenario would be useful
> or recommended?
> > 
> > I dont really have a specific use case in mind, it's more a kind of
> high level question.
> > 
> > If naming is the most important thing we do, and we go to a lot of
> effort naming nodes, why is it that we seemingly put less effort in
> naming edges.
> > 
> > Of course it's possible to construct use cases.  
> > 
> > <#alice> :isInARealtionshipWith <#bob>
> > 
> > I may want to +1 this triple for example.
> > 
> > It also becomes easier to point to data, sign it etc.
> > 
> > But really my question is regarding the naming in general.
> > 
> > Follow up question:  could we quickly come to a consensus for a best practice to do this e.g.
> > 
> > urn : uuid/eav : subject delimiter predicate delimiter object
> >  
> > 
> > Cheers,
> > Natasa
> > 
> > Am 25.07.2012 18:04, schrieb Dave Reynolds:
> > 
> > If I understand Steve's point he was meaning that you can mint a new unique edge:xxxxxx identifier for each edge.
> > 
> > [Presumably you could make that a subPropertyOf the actual property you wanted to assert.]
> > 
> > Cheers,
> > Dave
> > 
> > On 25/07/12 16:47, Aidan Hogan wrote:
> > Steve,
> > 
> > If I understand Melvin's point, in RDF, edge:123456 is the URI of a
> > property used to label the edge, not the edge itself.
> > 
> > Analogously, you don't identify a class-instance by it's class URI.
> > 
> > An edge is between two things. It might be directed and it might be
> > labelled. In RDF it's both.
> > 
> > Hence, the edge would encapsulate the full triple, including source
> > (subject) and target (object) nodes, as well as the label (predicate).
> > 
> > Cheers,
> > Aidan
> > 
> > On 25/07/2012 16:18, Steve Harris wrote:
> > Nothing stops you from giving edges a unique URI, infact I think I've
> > worked on systems that did that.
> > 
> > e.g.
> > 
> > <foo> <http://example.com/edge/123456> 1 .
> > <http://example.com/edge/123456> a rdf:Property .
> > ...
> > 
> > - Steve
> > 
> > On 2012-07-25, at 16:07, Melvin Carvalho wrote:
> > 
> > Sorry if this topic has been covered before, but I have a question
> > based on the axioms of the web, in particular:
> > 
> > *Axiom 0a: Universality 2    Any resource of significance should be
> > given a URI.
> > *
> > In this case we consider the web to be a directed graph (of nodes and
> > edges), where a *node* corresponds to a *resource* but edge does not.
> > 
> > We are encouraged to make nodes universal by giving them a URI.
> > 
> > Why dont edges get the same treatment, ie encouragment to give it a
> > (universal) name.  Is it even practical?
> > 
> > I know there's such thing as reification but that seems to be
> > unpopular (maybe before my time).
> > 
> > I'm just curious as to whether this seems asymmetrical, that nodes are
> > seemigly treated in one way, and edges in another?
> > 
> > -- 
> > Steve Harris, CTO
> > Garlik, a part of Experian
> > +44 7854 417 874 http://www.garlik.com/
> > Registered in England and Wales 653331 VAT # 887 1335 93
> > Registered office: Landmark House, Experian Way, Nottingham, Notts,
> > NG80 1ZZ
> > 
> > 
> > 
> > 
> > 
> > 
> > -- 
> > --
> > Natasa Bulatovic
> > Max Planck Digital Library (MPDL)
> > Amalienstrasse 33
> > 80799 Munich, Germany
> > http://www.mpdl.mpg.de
> > 
> > e-Mail: bulatovic@mpdl.mpg.de
> > phone: +49-89-38602-223
> > fax: +49-89-38602-280
> > 
> > 
> > 
> > 
> 
> 
> 
> 

-- 
David Booth, Ph.D.
http://dbooth.org/

Opinions expressed herein are those of the author and do not necessarily
reflect those of his employer.
Received on Tuesday, 31 July 2012 14:31:04 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 March 2016 07:42:35 UTC