- From: Richard Cyganiak <richard@cyganiak.de>
- Date: Thu, 16 May 2013 10:24:58 +0100
- To: Sandro Hawke <sandro@w3.org>
- Cc: Alex Milowski <alex@milowski.com>, "public-rdf-comments@w3.org" <public-rdf-comments@w3.org>
- Message-Id: <77077E9A-691D-4A7E-91DD-EBA4E5588DDD@cyganiak.de>
On 16 May 2013, at 03:34, Sandro Hawke <sandro@w3.org> wrote: > On 05/15/2013 07:41 PM, Alex Milowski wrote: >> I ran across a problem while implementing a Turtle parser. >> >> In section 3 of [1], the 7th example is: >> >> @prefix : <http://example.org/stuff/1.0/> . >> (1 [:p :q] ( 2 ) ) . > > (unofficial reply, trying to clarify) > > Why would you want a turtle file that's just a list? (Another unofficial reply) Why not? RDF is supposed to be a flexible data model that can represent data coming from any source. Having a data source that is simply a list of things, and wanting to represent that in RDF, doesn't strike me as far-fetched. For example, there is a text/uri-list media type: http://amundsen.com/hypermedia/urilist/ For the record, I believe this limitation in the grammar is there because the Turtle grammar was derived from the SPARQL grammar, and SPARQL doesn't support such “naked lists” in triple patterns, because in a query they really wouldn't make sense. I don't see this limitation in Turtle as a big problem, because there are workarounds such as spelling out the list in rdf:first and rdf:rest triples. So just changing the example is fine with me. Adding a note about it might be appropriate. Richard > How would you use that? > > -- Sandro > >> The production for triples in section 6.5 is: >> >> [6] triples ::= subject predicateObjectList | blankNodePropertyList predicateObjectList? >> [7] predicateObjectList ::= verb objectList (';' (verb objectList)?)* >> [10] subject ::= iri | BlankNode | collection >> >> According to these productions, the example is invalid. The subject reduces to the collection and must be followed by a verb. Yet, the example does not have a following predicate object list. >> >> If this is truly suppose to be valid, I think the productions need to be: >> >> triples >> ::= subject predicateObjectList | >> collection predicateObjectList? | >> blankNodePropertyList predicateObjectList? >> subject ::= iri | BlankNode >> >> BTW, it would be a wonderful editorial change to number the examples. >> >> [1] http://www.w3.org/TR/2013/CR-turtle-20130219/ >> >> -- >> --Alex Milowski >> "The excellence of grammar as a guide is proportional to the paucity of the >> inflexions, i.e. to the degree of analysis effected by the language >> considered." >> >> Bertrand Russell in a footnote of Principles of Mathematics >
Received on Thursday, 16 May 2013 09:25:29 UTC