Bug in SPARQL grammar?

I am asking myself whether there is an error in the SPARQL grammar for 
typed RDFLiterals:


When I compare with N3 and Turtle:

1) N3: http://www.w3.org/TeamSubmission/n3/

    literal ::=    string dtlang
    dtlang ::=   "@"  langcode |     "^^"  symbol
    symbol ::= explicituri | qname
    explicituri ::= <[^>]*>
    qname ::= /* what we called CURIE */

2) Turtle: http://www.w3.org/TeamSubmission/turtle/

    literal ::=  quotedString ( '@' language )? | datatypeString
                 | integer | double | decimal | boolean
    datatypeString ::=     quotedString '^^' resource
    resource ::= uriref | qname
    uriref ::= '<' relativeURI '>'
    qname ::= /* what we called CURIE */


Now, when I look at SPARQL's grammar I find:

SPARQL: http://www.w3.org/TR/rdf-sparql-query/

  RDFLiteral ::= String ( LANGTAG | ( '^^' IRIref ) )?

  IRI_REF ::= '<' ([^<>"{}|^`\]-[#x00-#x20])* '>'


Note: No qnames are allowed here in the type position, although
       qnames like xs:integer *are* actually used for typed literals in
       the examples in the SPARQL document.

I assume this is a bug?

Axel

-- 
Dr. Axel Polleres, Digital Enterprise Research Institute (DERI)
email: axel.polleres@deri.org  url: http://www.polleres.net/

rdfs:Resource owl:differentFrom xsd:anyURI .

Received on Friday, 2 May 2008 13:56:20 UTC