1
0
mirror of https://gitlab.gnome.org/GNOME/libxslt synced 2025-11-06 23:49:25 +03:00
Files
libxslt/TODO
Daniel Veillard bc9b7c8760 provide context for error messages. Requires libxml head changes. fixed a
* libxslt/documents.c libxslt/extensions.c libxslt/extra.c
  libxslt/functions.c libxslt/imports.c libxslt/keys.c
  libxslt/namespaces.c libxslt/numbers.c libxslt/pattern.c
  libxslt/preproc.c libxslt/templates.c libxslt/transform.c
  libxslt/variables.c libxslt/xslt.c: provide context for
  error messages. Requires libxml head changes.
* libxslt/xsltutils.c libxslt/xsltutils.h: fixed a --profile
  problem
Daniel
2001-07-12 01:32:04 +00:00

132 lines
3.8 KiB
Plaintext

********
* *
* TODO *
* *
********
Doc:
- manpage and doc for xsltproc
Design:
- seems that saving back XSLT stylesheet from a compiled form might
be a bit ugly ... Yes forget about it, it's just twaeked to the extreme
ID and Key support:
-> done but namespace support in keys is not defined
-> make sure keys are recomputed on new document input
Pattern tester:
-> try to optimize for ID scan and tests.
Pattern scanner:
-> add error checks on all returns
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.
-> catch recursion end of 5.4 ...
Support Attribute value templates:
-> namespace support for attribute value templates is not done, need
a small API redesign
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
Doc:
- put a page at http://xmlsoft.org/XSLT/
- generate/transform the DocBook to HTML
- add HTML to package
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
Profiler:
-> added looks good enough
-> autocorrection of initial calibration loop