[Pragmas] Pragmas as an extensibility point?

The main extensibility point for SPARQL that we've considered so far is 
service description. Standardizing service description would give a way 
for SPARQL clients to determine the capabilities of a SPARQL endpoint 
and adjust their behavior/expectations accordingly.

It would also provide a framework within which the WG and/or community 
could begin defining URIs for features that some but not all SPARQL 
endpoints might support. This would hopefully encourage engines to 
converge on similar implementations of extensions under common URIs, and 
aid further standardization efforts down the road.

I see the pragmas proposed feature ( 
http://www.w3.org/2009/sparql/wiki/Feature:Pragmas ) as another 
potential extensibility point.

The idea behind a pragma is relatively simple: provide a way for a query 
to include arbitrary metadata that can affect the operation of the 
query. "Advice" to the query engine, you could say.

Pragmas are implemented in Virtuoso in a way that they can pertain to an 
entire query, a single triple pattern, or a group pattern ({ ... }). Of 
course, other designs are possible to simplify grammatical changes.

We've considered implementing pragmas in the past in Glitter in Open 
Anzo, but have not yet done so.

As I've said in the past, I'm keen to consider standardizing something 
like 4 features + extensibility points that will encourage convergence 
around other SPARQL extensions outside this WG's lifetime in lieu of 
standardizing something like 8 features and leaving the extensibility 
points as they are today.

I also have a bit of a belief (more on this in another post if I get to 
it), that extension points fall in the category of standardization for 
which it's more appropriate for the standards group to be on the leading 
edge of the "feature curve" rather than the trailing edge (vis a vis 
implementations).

I'd like to hear what other WG members feel about pragmas as an 
extensibility point for SPARQL and if there are any other 
implementations of them out there.

If anyone can speak of practical experience with XQuery's pragmas as 
well, I'd love to learn about that.

Lee

Received on Friday, 10 April 2009 05:54:57 UTC