sparqlParam: an approach to QL selection/migration

sparqlParam is an idea that came to me in Helsinki,
in discussion of automated support for
query language migration/selection.
  http://www.w3.org/2001/sw/DataAccess/ftf4.html#item10

Suppose, hypothetically, some totally made up person, say,
Steve, has a service running at, I dunno...

  http://triplestore.aktors.org/rdql/

i.e. it services GET to...

  http://triplestore.aktors.org/rdql/?query=rdql...

and suppose he wants to add SPARQL support. One way
to do it is to service URIs like...

  http://triplestore.aktors.org/rdql/?query2=sparql...

and in the HTML form served in response to GETs to
   http://triplestore.aktors.org/rdql/
where it currently says...

  <h1>3store: RDQL Query</h1>
  <textarea name="query" cols="80" rows="24">

just add another one:

  <h2>SPARQL Query</h1>
  <textarea name="query2" cols="80" rows="24">

That HTML form markup basically says:

  I'll take RDQL syntax after ?query=...
  and I'll take SPARQL syntax after ?query2=...

The sparqlParam approach is to capture this in RDF
ala...

  @prefix rdql: <http://rdql-cabal.example/vocab#>.
  @prefix sparql: <http://dawg.example/vocab#>.

  <http://triplestore.aktors.org/rdql/>
    rdql:param "query";
    sparql:param "query2".

On the client side, to use a sparql service, somebody
has to tell you the parameter name somehow. Highly automated
scenarios will use RDF (ala the turtle above) but
you can also peek into some HTML or read some prose documentation.

There was some issue of how to pass this thru ODBC/JDBC.
I've forgotten most of the details of how those work, but if
I recall correctly, they have some syntax for passing things
like host names, user names, etc., and this parameter name
should fit thru that interface just fine.

Now that I've dumped my thoughts on the matter, I'll
re-read what Kendall sent a while ago...

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/
D3C2 887B 0F92 6005 C541  0875 0F91 96DE 6E52 C29E

Received on Friday, 18 February 2005 21:23:01 UTC