diff options
Diffstat (limited to 'libxslt/TODO')
-rw-r--r-- | libxslt/TODO | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/libxslt/TODO b/libxslt/TODO new file mode 100644 index 0000000..2c671fa --- /dev/null +++ b/libxslt/TODO @@ -0,0 +1,124 @@ + ******** + * * + * TODO * + * * + ******** + +Lifetime of result Value Tree, make sure we keep pointers. Exslt +handling of node set values is especially nasty in this respect, +lots of potential mem leaks... + +Pattern tester: + -> try to optimize for ID scan and tests. + +Pattern scanner: + -> add error checks on all returns + +Sorting: + -> add lang and case-order + -> add foreign sorting functions (interfaces ?). + + ******** + * * + * DONE * + * * + ******** + +Design: + - should transforms for a given stylesheet be thread clean, + -> the precompilation now occur only at stylesheet processing + time (except the binding for named templates and extension + functions which need to be computed once at run-time). + Multiple threads should be able to reuse the same stylesheet + now. + +Embedding Stylesheets: + - example in 2.7 would force to validate, we do it by default now + +ID and Key support: + -> Done + +Extra functions: + -> document() should not be a problem since Result Tree Fragments are + implemented + => Done + +Templates: + -> check the built-in template rule for attributes + -> make sure @xxx matches are applied + +Contextual error reporting: + -> provide a couple of functions providing context analysis, not urgent + +Validity: + -> should we add validation by default ? Make this an option + -> redirrect validity errors + => done added a special parsing mode + +Import: + -> parse them + -> provide functions to circulate in the import tree of stylesheets + -> make sure we use the cascade wherever it's needed + +Extra functions: + -> make a separate module. + => done functions.[ch] + +Support Attribute value templates: + -> starts to be urgent. Design it in flexible ways but try to optimize + to handle most of it at the stylesheet parse time ... + => Done for the most part need to check all attributes in XSLT constructs + using them and use the dedicated readin function. + -> optimization by checking their existence at stylesheet parse time. + => done when building the preproc function + +Sorting: + -> add support for imbricated sorts + => done but not well tested. + +Separate util module: + -> macros, config, verbosity ? + => xsltutils.[ch] + +Support for disable-output-escaping="yes": + -> looks problematic, libxml has no support for anything like this, + and unless adding a new node type :-( or tweaking text node and + output routines this is gonna be messy ... must be handled at libxml + level. + => Done with a trick, text node name is different, requires > 2.2.11 + +Pattern scanner: + -> compute priority + -> handle unions + -> support for mode + => done + +Pattern tester: + -> also put fast lookup for "text()", "comment()", "node()" + based patterns lists. + => done + +Support Attribute value templates: + -> namespace support for attribute value templates is not done, need + a small API redesign + +Doc: + - put a page at http://xmlsoft.org/XSLT/ + - generate/transform the DocBook to HTML + - add HTML to package + - manpage and doc for xsltproc + + +Error handling: + -> check the version stuff, design a separate module for error interfacing + and default handling, parsing vs. runtime, fatal / compat / warning, + and lack of optionnal features. + -> reports context + +ID and Key support: + -> done but namespace support in keys is not defined + -> make sure keys are recomputed on new document input + +Profiler: + -> added looks good enough + -> autocorrection of initial calibration loop |