- From: Andy Seaborne <andy@apache.org>
- Date: Mon, 19 Jan 2015 17:34:03 +0000
- To: public-rdf-comments@w3.org
On 19/01/15 17:19, Stian Soiland-Reyes wrote: > Thank you for enlightening me, both ;) > > AllegroGraph & TopBraid Composer were reported to us to bark on this, > but it might be a side effect of another invalid localname ( ns0:api# ) > which it rightly moaned about. > > ..And Jena, but Andy just fixed it. Sorry for giving you more work, > Andy.. I guess you tested for that > > <s> <p> "no space after @" @en . is legal. The string part is misdirection! "no space after @"@ en . is illegal. Andy > > case as well. > > On 19 Jan 2015 16:53, "Eric Prud'hommeaux" <eric@w3.org > <mailto:eric@w3.org>> wrote: > > * Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk > <mailto:soiland-reyes@cs.manchester.ac.uk>> [2015-01-19 16:05+0000] > > Hi, I somehow have come over some "evil" Turtle that seems to be > on the form: > > > > <http://example.com/s2> <http://example.com/p> "false"^^ > > <http://www.w3.org/2001/XMLSchema#boolean> . > > > > (One word: PHP) > > > > > > Now, as bad style as this might look - I could not figure out > from the > > RDF Turtle 1.1 grammar why it shouldn't be valid. > > What lead you to believe it was invalid? I've tried a few Turtle and > SPARQL parsers ('cause they use the same productions) and they all > accepted it. For example > [[ > ASK { FILTER ("false"^^ > <http://www.w3.org/2001/XMLSchema#boolean>) > } > ]] > passes <http://sparql.org/query-validator.html>. > > > > http://www.w3.org/TR/turtle/#grammar-production-RDFLiteral > > > > [128s] RDFLiteral ::= String (LANGTAG | '^^' iri)? > > > > vs. > > > > [7] predicateObjectList ::= verb objectList (';' (verb objectList)?)* > > > > > > We "all know" that whitespace is allowed around ; - and not around ^^ > > - yet I can't see this reflected in these rules. Perhaps my grammar > > understanding is a bit rusty. > > > > > > http://www.w3.org/TR/turtle/#sec-grammar-ws says: > > > > > White space (production WS) is used to separate two terminals > which would otherwise be (mis-)recognized as one terminal. Rule > names below in capitals indicate where white space is significant; > these form a possible choice of terminals for constructing a Turtle > parser. > > > > > White space is significant in the production String. > > > > > > Neither RDFLiteral or predicateObjectList are listed under Terminals. > > > > > > So there's a special WS production - but that's only used between [ ] > > - e.g. so you can do > > > > [ a foaf:Person ] #someone > > foaf:knows # Someone (else?) > > [ a foaf:Person ] . > > > > > > > > String is > > > > > > [17] String ::= STRING_LITERAL_QUOTE | STRING_LITERAL_SINGLE_QUOTE | > > STRING_LITERAL_LONG_SINGLE_QUOTE | STRING_LITERAL_LONG_QUOTE > > > > > > > > Can anyone enlighten me? > > > > > > > > -- > > Stian Soiland-Reyes, myGrid team > > School of Computer Science > > The University of Manchester > > http://soiland-reyes.com/stian/work/ > http://orcid.org/0000-0001-9842-9718 > > > > -- > -ericP > > office: +1.617.599.3509 <tel:%2B1.617.599.3509> > mobile: +33.6.80.80.35.59 <tel:%2B33.6.80.80.35.59> > > (eric@w3.org <mailto:eric@w3.org>) > Feel free to forward this message to any list for any purpose other than > email address distribution. > > There are subtle nuances encoded in font variation and clever layout > which can only be seen by printing this message on high-clay paper. >
Received on Monday, 19 January 2015 17:34:34 UTC