Comments on SPARQL

Notes on SPARQL Query Language for RDF
W3C Working Draft 17 February 2005

The document uses a describe-by-examples style.  This is easy to understand but can give the impression that the language is more restrictive than it is.  For example, as you read section 2 you get the impression that only exact matches are supported.  Only much later do you find out that, in fact, functions and operators are also supported.   Additional wording could be used to distinguish examples from the grammar.
How is reification supported?  That is, how does SPARQL handle values that are themselves triples?  I assume nested queries are required but there is no discussion of support for this important aspect of RDF.
Section 3.  Decimal values cannot be written as literals.  This seems like a needless limitation.  Suggest SPARQL use the literal definitions in XPath,
Section 3.1 has a very brief section entitled "Matching Arbitrary Datatypes".   There is no explanation for how this works.
Presumably, RDF encodes metadata about data that is represented as XML.  If this is the case, why are all the XML Schema datatypes not supported?  See section 11.2.
The RDF datatype URI is a restriction of the XML Schema datatype anyURI in that only absolute URIs are supported.  It might have been simpler just to support the XML Schema datatype and call out this restriction.
Section 11.2.1.1 introduces the function URI-equal..  How is this different from a string compare?  Does it work if one of the URIs is escaped and the other is not?
Section 11.2.1.3 introduces the function isURI.  Is this necessary?  There is another function that returns the datatype of a variable.
As far as I can tell, string comparison is defined only using the code point collation.  Other collations are not supported.  This may be a significant limitation.
There are a number of typos that we have not pointed out.


Ashok Malhotra for the XML Query and XSL WGs

Received on Monday, 16 May 2005 19:09:30 UTC