(Don't rely on this list being complete!) + Layout: consider property widths. + ExecutionContext Add properties map (String => String/Object) to pass around feature settings. Remove (some) ARQ constants? Add registries, defaulting to globals. Passed into library functions and extensions. ExprNode can provide most of the machinary to hide it from Expr's via eval(Binding/ExecutionContext) => eval(Binding) Ditto FunctionBase and ExtensionBase E_Function and PlanExtension pass down the ExecutionContext ** Plan and ExecutionContext to have properties. + Explicit DESCRIBE process (WHERE, build URI list etc) Exec pattern, start handler, stop handler. Similarly CONSTRUCT + Set operations Exists, all, difference + Documentation XML result set processing + Tests + Library and extension tests + Printing tests - syntax tests + equality round tripping - done in qparse SPARQL queries with escapes Grammar - need to add \ to var/prefix/qname/IRI tokens? \U NodeValue.asNode() tests + Test XML result sets + Parser Done when parser accumulator finished (end of triples()) queryStep2 => split into checker and Query.setResultVars() [called by engine] + Consider ElementBasePattern (again) = List Better to enhance ElementGroup? + build.xml rework sparql app jar + Engine1 + Remove Mark?? Effect on QueryIteratorBase? At least use QueryIteratorBase Add getContext() to QueryIterator()? - breaks the abstraction. Pass context to extensions? QueryIteratorTracked with Context ==> Split into QueryIteratorBase and QueryIteratorTracked + Check argument lists and rationalise order [low priority] + XML results: process xml:lang on other elements than just + Extensions and library EXT :sort(?x, ?y) - access to the sorter EXT :groupBy(?x) : EXT :groupBy(?x, :sum(?y)) -- thinking about it EXT :listMember(?x, ?item) -- ?x must be bound + Sharing utility code with Joseki Convert: HttpContentType; check for others + Parsing + Serialization + One-conneced bNodes + Lists + System + Need to ensure models are loaded once (per query execution - and wider) + Integrate a meta-model (GRAPH SYSTEM or similar design) + Build Check dist/ tree + Some way to produce binaries for command line apps GCJ/Mingw