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

Re: Turtle - Terse RDF Triple Language updated

From: Alan Ruttenberg <alanruttenberg@gmail.com>
Date: Sat, 6 Oct 2007 07:14:11 -0400
Message-Id: <5B816536-74F4-4178-820E-049DFA8E99E3@gmail.com>
Cc: Ivan Herman <ivan@w3.org>, Story Henry <henry.story@bblfish.net>, Dave Beckett <dave@dajobe.org>, Michael Schneider <schneid@fzi.de>, semantic-web@w3.org
To: Harry Halpin <hhalpin@ibiblio.org>

On Oct 6, 2007, at 6:49 AM, Harry Halpin wrote:

> So perhaps I just haven't had my morning coffee yet, but what 2  
> triples
> should be generated in Henry's example? :Joe :aunt :Sally, :Sally :age
> 78? If that's all you want, then run Turtle+entailment, right?

Look at Henry's motivating example, below. There are no bnodes. So  
clearly the intention behind the notation does not involve bnodes.   
With the addition of tempting syntax to encourage this, we will have  
many more cases of the result not matching the intention, which was  
to have a simpler, less error prone way of writing some turtle.

That was what I was trying to get at, that's all.

As a design principle I am suggesting that the goal should be to  
accomplish what the user intends. If, as Pat suggests on another  
forum, there are functional differences between expressions of things  
that mean the same thing, then the extra bnode matters. And in the  
case of SPARQL, which does no entailment, the functional difference  
is that if Henry intends the second form,  he (or someone less  
experienced) might be surprised that they don't get either of those  
triples at when they do the SPARQL query. I think this is  
particularly true if new syntax is introduced that hides the  
owl:sameAs, either by using "==" or "is", which makes it less clear  
what is happening (and diverges from SPARQL, too).

If the goal is allow what Henry suggests, which is a way to avoid  
extra typing and consequent errors, and the bnode consistency in the  
syntax is more important, then use some other mechanism, like

@let :dan <http://www.w3.org/People/Connolly/#me>
:me foaf:knows :dan.
:dan a foaf:Person;   foaf:name "Dan Connolly"  .

This doesn't matter to me - I know how to get what I want out of  


On Oct 3, 2007, at 10:36 AM, Story Henry wrote:
> :me foaf:knows [ owl:sameAs <http://www.w3.org/People/Connolly/#me>;
>                  a foaf:Person;
>                  foaf:name "Dan Connolly" ] .
> That saves me having to look around the file for the info, and it  
> also save me having to type a URL twice, which is more likely to  
> cause a bug.
> If I don't do that I would have to write
> :me foaf:knows <http://www.w3.org/People/Connolly/#me>.
> <http://www.w3.org/People/Connolly/#me> a foaf:Person;
>                                         foaf:name "Dan Connolly"  .
Received on Saturday, 6 October 2007 11:14:24 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 March 2016 07:41:59 UTC