Re: in...of syntax Re: Turtle Last Call: Request for Review

On 18 July 2012 10:34, Yves Raimond <Yves.Raimond@bbc.co.uk> wrote:
> On Tue, Jul 17, 2012 at 10:42:48PM -0500, Pat Hayes wrote:
>>
>> On Jul 16, 2012, at 3:36 PM, Tim Berners-Lee wrote:
>>
>> > I would like to formalize the request I have made at intervals
>> > to include the     is ... of syntax as in N3 in Turtle.
>> >
>> > Motivations:
>> >
>> > - It is convenient for human Turtle writers.
>> >     Example:
>> >
>> >     foaf:Person is rdf:type of :Alice, :Bob, :Charlie, :David, :Elisa .
>> >
>> >     Example:
>> >
>> >     :Alice  foaf:age 38;
>> >             g:child :Bob, :Charlie;
>> >             is  g:child of  :Edna, :Fred;
>> >             foaf:basedNear :London;
>> >             is dc:author of [ dc:title "My life"; dc:date "1999"] .
>> >
>> > - It is convenient for machine turtle writers.  If you can use the
>> > is ...of syntax, then you can serialize any acyclic graph of bnodes without
>> > having up make up nodeids for the serialzation, just using [brackets].
>> >
>> > - By allowing a predicate to be used in either direction, it decreases
>> > the motivation for the antipattern define both p and inverse of p for all p.
>> > In other words, of you can write   "is child of" you don't need
>> > to define a separate "parent" property.
>>
>> That is a VERY good argument for it. The others are user convenience issues, but this one can have far-reaching effects on deployed linked data.
>
> A massive +1. Having been burned by that in the past, it is indeed a very good argument for it.
>
> The argument about generating Turtle data from pre-existing hashes is also a very good one. I've written a few of these 'RDFizers' in the past, just recursively going through a hash and outputting a string that happens to be valid Turtle (see https://github.com/moustaki/bbc-serialiser for example, which is currently in use on a few BBC websites) - and having a way to write triples in both directions make that a *lot* easier...

If (a) it could be done identically in SPARQL 1.1 and Turtle (b) it
was done with punctuation (e.g. ^) rather than pseudo-English, i'd be
supportive.

(Is 'is isPrimaryTopicOf of' the same as 'primaryTopic'? The existence
of isPrimaryTopicOf is a good reason for exploring such a design...)

Every difference we create between SPARQL and Turtle diminishes the
value and teachability of both...

cheers,

Dan

Received on Wednesday, 18 July 2012 11:28:23 UTC