updated added with alist of what's in and what's not fixed top level Param
[platform/upstream/libxslt.git] / TODO
1                   ********
2                  *        *
3                  *  TODO  *
4                  *        *
5                   ********
6 Design:
7   - should transforms for a given stylesheet be thread clean,
8     or can a stylesheet be enriched with document specific
9     informations and cleaned up later ?
10     => currently stylesheet manipulation is not reentrant.
11   - seems that saving back XSLT stylesheet from a compiled form might
12     be a bit ugly ...
13     
14 Import:
15   -> parse them
16   -> provide functions to circulate in the import tree of stylesheets
17
18 Extra functions:
19   -> make a separate module.
20   -> document() should not be a problem since Result Tree Fragments are
21      implemnted
22   -> others 
23
24 ID and Key support:
25   -> Id should be simple, key will probably requires some hash tables.
26
27 Pattern tester:
28   -> try to optimize for ID scan and tests.
29
30 Pattern scanner:
31   -> add error checks on all returns
32   -> handle unions
33   -> compute priority
34
35 Error handling:
36   -> check the version stuff, design a separate module for error interfacing
37      and default handling, parsing vs. runtime, fatal / compat / warning,
38      and lack of optionnal features.
39
40 Support Attribute value templates:
41   -> starts to be urgent. Design it in flexible ways but try to optimize
42      to handle most of it at the stylesheet parse time ...
43   => Done for the most part need to check all attributes in XSLT constructs
44      using them and use the dedicated readin function.
45
46 Sorting:
47   -> add support for imbricated sorts
48   -> add lang and case-order
49   -> add foreign sorting functions (interfaces ?).
50
51 Validity:
52   -> should we add validation by default ? Make this an option
53   -> redirrect validity errors
54
55 Contextual error reporting:
56   -> provide a couple of functions providing context analysis, not urgent
57
58                   ********
59                  *        *
60                  *  DONE  *
61                  *        *
62                   ********
63
64 Separate util module:
65   -> macros, config, verbosity ?
66   => xsltutils.[ch]
67
68 Support for disable-output-escaping="yes":
69   -> looks problematic, libxml has no support for anything like this,
70      and unless adding a new node type :-( or tweaking text node and
71      output routines this is gonna be messy ... must be handled at libxml
72      level.
73   => Done with a trick, text node name is different, requires > 2.2.11
74