From: Christian W. <cw...@cw...> - 2007-03-23 11:45:36
|
Hello all, I'm proud I can announce that my SparqlEngineDb implementation went a big step forward and has ORDER BY and LIMIT/OFFSET support now. ORDER BY support was really tricky, since data have to be sorted not the way the database sorts the blob values, but by their resource type (blank, literal, resource) and then according to the sorting rules that their XSD schema type specifies (which was a problem since the integers are stored as blobs/strings, and the DBMS does not know that they are meant to be integers). I got that working yesterday, and today I finished LIMIT/OFFSET support (I had to do that myself since the queries to the database could unfortunately not be pressed in a single query, imploded with UNION - the sort order would vanish there). This means that currently the basics are working, and the three first big unit test groups (dawg, sort and limit-offset) are passed now. It also has support for all query types (ASK, COUNT, SELECT, DESCRIBE, CONSTRUCT) now. Since OntoWiki is switching to use Sparql internally to query the databases, my next step is to implement prepared statement support - parsing the sparql queries and creating sql statements takes some time, and it would speed things up greatly if this would need to be done only once when doing 500 queries in a row. When I have finished prepared statements, I will begin adding support for FILTERs. This will be another challenging task, since there is currently no Filter parser for sparql queries - this needs to be done before I can actually implement the filters in the db engine. --=20 Regards/Mit freundlichen Gr=C3=BC=C3=9Fen Christian Weiske |