Changes to SPARQL and Turtle in response to an RDF comment

The comment "Turtle: Prefixes now can contain colons (":")?" [1]
is a bug in the SPARQL grammar that got propagated to Turtle.  By 
putting the raw ':' in PN_CHARS_U, colons could appear in the prefix 
part, blank node ids and, in SPARQL, variable names.

The fix is not put ':' in PN_CHARS_U but instead to write out PN_LOCAL 
more fully.  PN_LOCAL is the local part of a prefixed name.

So the difference between non-raw colon Turtle and SPARQL is confined

PN_LOCAL  ::=
     (PN_CHARS_U | ':' | [0-9] | PLX )
     ((PN_CHARS | '.' | ':' | PLX)* (PN_CHARS | ':' | PLX) )?

reverting the edits to PN_CHARS_U

Gavin has already incorporate this into the Turtle ED and it's in the 
SPARQL Query ED.

Thanks to Mathias Hasselmann for pointing this out, along with the 
details he presented.

 Andy

[1] 
http://lists.w3.org/Archives/Public/public-rdf-comments/2012Jul/0006.html

Received on Wednesday, 18 July 2012 18:05:02 UTC