[Versa] Versa issue: subgraph primitives?

Chimezie Ogbuji chimezie at gmail.com
Sun Sep 4 11:45:55 MDT 2005


> issue.  One very useful result would be that we now have a host variable
> binding mechanism: the host system can read variables set by the query,
> rather than just slicing at the big hairball of results.

This would be very useful, and would probably eliminate most of the
result fragment magic (/List/String, etc..) done currently when  XSLT
is the host language.

 > In other words, I don't think we should have subgraph definitions unless
> we also have variable , namespace, etc. definitions.  I see them all as
> context-setting operations.
> 
> But maybe it's worth defining a small, nonnormative host language,
> either in text or in XML, that allows for context-setting operations.

I can see the value in making the query language (and grammer) much
simpler, but I can also see the value in not relying on a host
language that is so verbose that it works against Versa's concise
syntax (like XSLT or any XML-based host language - as RIL once was).
So, I'm inclined to think a text based host language is preferable,
and there wouldn't be any harm in making it seperate from Versa.  I
can easily imagine use cases for namespace and variable definitions
(these are standard for XQuery and SPARQL - namespace definition only
tho) but function definitions (within the query language) twist my
head.  I would prefer to implement them as extension functions in
whichever language and allow the extension mechanism to invoke them.

As for the context-switching syntax, I'm also trying to imagine how
that would work.  It would definately (if all the kinks are ironed
out) be a incredible performance tuning tool for context-aware RDF
datastores.  I would be inclined to move this to a seperate host
language as well, as long as it was as concise and accessible enough
so I wouldn't have to do what I had been doing before (rely heavily on
scope and scoped-subquery) to do that kind of thing.



More information about the Versa mailing list