Major changes to the RDFLib SPARQL implementation have been commited in order to get through 65% [1] of the DAWG test suite (see link below for tests that are still failing). The changelog below details some of the major modifications:
- More robust support for OPTIONAL semantics - SPARQL Nodes can now be pickled (neccessary for parallel evaluation of SPARQL) - Graceful failure of type errors in FILTER expressions - Fixed retrieval of bindings from UNION evaluations - Fix for LIMIT 0 - Added a more informative __repr__ to graph pattern objects - BGP's now take a query prolog so they can calculate qnames - Addes support for canonical representations of terms (qnames) - Fixed SPARQL result serialization to handle ASK as well as other serialization fixes - Better support for pickling / unpickling SPARQL graphs - Fixes to datatype FILTER expression (properly raises TypeErrors) - Fix to calculation of EBV for terms - SPARQL Algebra implementation fixes (major) - Added support for extension functions ## Extension FILTER functions ## These can now be passed on to the SPARQL engine via the extensionFunctions argument to the Graph.query method which is a mapping from URIs to user-defined functions (see rdflib.sparql.sparqlOperators for examples) - Fixed Join/LeftJoin evaluation mechanism so it doesn't walk expansion tree redundantly - Updates to match latest version of EBNF and resulting parsed SPARQL expression - Fixed use of list notation [1] http://copia.ogbuji.net/files/RDFLibSPARQL-EARL.html _______________________________________________ Dev mailing list Dev@rdflib.net http://rdflib.net/mailman/listinfo/dev