- From: Richard Smith <richard@ex-parrot.com>
- Date: Sun, 17 Nov 2013 19:32:22 +0000 (GMT)
- To: public-rdf-comments Comments <public-rdf-comments@w3.org>
Has any consideration been given to making N-Quads a subset of TriG? Given the effort that seems to have been gone to to make TriG compatible with Turtle and SPARQL, it seems a little surprising that it is not also compatible with N-Quads. Making TriG compatible with the current N-Quads isn't complicated. Just allow another labelOrSubject after the predicateOnjectList in production [3g] triplesOrGraph. I.e. change it to read: [3g] triplesOrGraph ::= labelOrSubject (wrappedGraph | predicateObjectList labelOrSubject? '.') And for symmetry, something similar should perhaps be done in [4g] triples2, though it is not required for N-Quads compatibility and involves a disambiguation between a verb and a label: [ a foaf:Person ] <graph1> . [ a foaf:Person ] dc:name "John" . That's entirely do-able while remaining LALR(1) and LL(1): it's the same problem as disambiguating labelOrSubject. Changing N-Quads would have been cleaner, but I assume is not feasible as N-Quads has been in use five years since the publication of <http://sw.deri.org/2008/07/n-quads/>. With a free reign, I would have suggested moving the graph label to the start of the quad and wrapping the triple in braces, per TriG. Or alternatively, use some symbol like ':=' to separate the label from the subject. But I accept that isn't possible. Richard
Received on Sunday, 17 November 2013 19:32:45 UTC