SSSSQL is a quick and dirty solution to a problem. The problem is that
we want to do complex queries on triple-stores, including aggregate
operations (COUNT, MIN, MAX, and so on). But SPARQL and the other RDF
query languages have not yet standardized forms for these queries.

It so happens that Sesame 2 parses all query languages into a
"universal" Java datatype -- a tree of QueryModelNode objects. (See
the org.openrdf.query.algebra package.) It would be convenient to have
a query language that constructed QueryModelNode trees directly. Thus,
SSSSQL.

For example, the following query:

   (project (projelem s) (projelem o)
     (statementpattern s (var const1 <urn:predicate>) o))

...is the equivalent of the SPARQL query:

   SELECT * WHERE {
     ?s <urn:predicate> ?o
   }

This should let people[*] develop Sesame repositories that support 
aggregate operations, without waiting for SPARQL to catch up. However, 
SSSSQL is *not* a great long-term solution, because the Sesame query model 
is still changing -- simply *because* SPARQL is still catching up. SSSSQL 
is a piece of scaffolding, not a building.

SSSSQL can be snarfed from our SVN repository:

   https://simile.mit.edu/repository/ssssql/trunk

But please read the README firstL

   https://simile.mit.edu/repository/ssssql/trunk/README.txt

[* including me, now that I'm finished messing with this query language]

--Z

-- 
"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the borogoves..."
_______________________________________________
General mailing list
[email protected]
http://simile.mit.edu/mailman/listinfo/general

Reply via email to