- From: Jeremy Carroll <jjc@hpl.hp.com>
- Date: Mon, 30 Jul 2007 09:39:13 +0100
- To: Chris Bizer <chris@bizer.de>
- CC: pat hayes <phayes@ihmc.us>, Sandro Hawke <sandro@w3.org>, Jeremy Carroll <jjc@hplb.hpl.hp.com>, Tim Berners-Lee <timbl@w3.org>, semantic-web@w3.org, Richard Cyganiak <richard@cyganiak.de>, Arjohn Kampman <arjohn.kampman@aduna-software.com>
I think both the = and . are engineering issues:
- does the advantage of inter-op with N3 readers outweigh any
disadvantage in suggesting that the abstract syntax of TriG is more
similar to the abstract syntax of N3 than it really is.
Personally I quite like the [optional] approach, and it is clearly a bug
that the final . is not permitted at all.
The optional approach allows the document author to write an N3/TriG
document, but also allows them to insist that this is a Named Graph doc
and not an N3 doc. I suspect that the semantics of
<http://ex.org/a> = {
_:a rdf:value "b" .
} .
<http://ex.org/b> = {
_:a rdf:value "c" .
} .
differ significantly with an N3 and a TriG reading because of the shared
blank node ID (illegal in TriG?? or is this equivalent to:
<http://ex.org/a> = {
_:a rdf:value "b" .
} .
<http://ex.org/b> = {
_:b rdf:value "c" .
} .
), abstractly in NG blank nodes are not shared between graphs; whereas I
believe in N3 that they are.
On the graph name issue - I didn't see any arguments against permitting
arbitrary URIs as NG names, rather than only allowing URLs that
dereference as those graphs.
Jeremy
Chris Bizer wrote:
>> I think the right choice is "=", because (as I understand it), that has
>> the right semantics. But maybe I don't know what semantics you want.
>
> Seen from today's perspective, I clearly want the graphname URI to refer
> to a graph one would expect to get by dereferencing this URI and many
> people use the Named Graphs data model exactly in this way.
>
> But the original Named Graphs paper say something different.
>
> Maybe it was a good idea of the SPARQL working group to leave this point
> open when defining their RDF dataset and it would be harmful for Named
> Graph deployment if we would take a decision one or the other way.
>
> Pat, Jeremy, Patrick (and anybody else): What do you think?
>
> Cheers
>
> Chris
>
>
> --
> Chris Bizer
> Freie Universität Berlin
> +49 30 838 54057
> chris@bizer.de
> www.bizer.de
> ----- Original Message ----- From: "Sandro Hawke" <sandro@w3.org>
> To: "Chris Bizer" <chris@bizer.de>
> Cc: "Tim Berners-Lee" <timbl@w3.org>; <semantic-web@w3.org>; "Jeremy
> Carroll" <jjc@hpl.hp.com>; "pat hayes" <phayes@ihmc.us>; "Richard
> Cyganiak" <richard@cyganiak.de>; "Arjohn Kampman"
> <arjohn.kampman@aduna-software.com>
> Sent: Friday, July 27, 2007 9:43 PM
> Subject: TriG/N3 compatibility was: Named Graph Serialisation
>
>
>>
>> "Chris Bizer" <chris@bizer.de> writes:
>>> Hi Tim,
>>>
>>> > Making the predicate optional, and omitting the final "." messes up =
>>> the compatibility. Two small changes!=20
>>>
>>> The predicate is optinal and there is no final "." because N3 and TriG =
>>> are based on very different abstract models. In N3 you have the notion =
>>> of a outer document that contains formulas. Therefore you want the
>>> final =
>>> "." The abstract model behind TriG is the Named Graph data model and
>>> in =
>>> newer versions also the SPARQL dataset. Both abstract model do not
>>> have =
>>> any notion an outer document and therefore the final "." is missing in =
>>> TriG.=20
>>>
>>> The TriG specification =
>>> (http://sites.wiwiss.fu-berlin.de/suhl/bizer/TriG/) allows the use of =
>>> the shorthand :- for compatibility reasons with N3 (I think Jeremy =
>>> Caroll or Pat Hayes wanted it in as an option, I can not remember). We =
>>> overlooked the final "." thing, so the :- option actually does not
>>> make =
>>> TriG N3 compartible.=20
>>>
>>> I'm open to adding the final "." as an option, so that future versions =
>>> of TriG parsers can read N3. I'm not too sure about making both things =
>>> mandatory, as N3 and TriG really have different abstract models.
>>>
>>> Any strong opinions on this from anybody? Especially from the people
>>> who =
>>> have implemented TriG parsers and would have to change their code.
>>
>> ... random comments from the peanut gallery:
>>
>> I think y'all should converge on one syntax. The difference between the
>> N3 model and the TriG model needs to be settled anyway.
>>
>> I think :- is a poor choice of operators here. To many of us with some
>> experience with prolog it's the rule connective.
>>
>> I think the right choice is "=", because (as I understand it), that has
>> the right semantics. But maybe I don't know what semantics you want.
>>
>> -- Sandro
>
--
Hewlett-Packard Limited
registered Office: Cain Road, Bracknell, Berks RG12 1HN
Registered No: 690597 England
Received on Monday, 30 July 2007 08:39:49 UTC