Small items for SPARQL

1/ Character sets

I propose SPARQL queries use UTF-8

This allows multi (natural) language queries.

HTTP GET will have to encoded as usual - we do need to decide the string being
encoded.

In HTTP POST, Content-Type applies to the entity body.
A request sent by HTTP POST may use Content-Type to change the charset.

Experiences with declaring the charset in the content show
this to be very error prone:

       a/ it may disagree with the HTTP header

       b/ once opened in one fashion, say the default platform charset,
          it can be hard to reopen in another fashion: the underlying
          stream maybe buffered.

Aside: as the syntax currently stands (a keyword must be first), it is possible
to snoop and tell the difference between UTF-8 and UTF-16.


2/ We will need a URI for SPARQL

Suggestions:
http://www.w3.org/2001/sw/DataAccess/SPARQL

(We might want to allow for future revisions but I assume a new WG would have a 
new URI itself so versioning isn't needed here).


3/ Relative URIs

Queries would need a base URI to resolve any relative URIs.
We can either say "no relative URIs" (that might makes the tests harder if we 
follow the style of the manifests in using relative URIs).

For the protocol, "query-uri=" is a natural default base but there isn't a 
natural one in all situations like local queries from a program or one sent as 
plain "query="

I suggest a BASE clause in the QL that must be before PREFIXes.  It takes a 
single, <> quoted URI. It is not required in every query.

 Andy

Received on Friday, 17 December 2004 17:57:00 UTC