- From: Arunprasad P. Marathe <amarathe@opentext.com>
- Date: 15 Jun 2001 05:43:07 +0200
- To: <xsl-editors@w3.org>
- Cc: "Self" <amarathe@opentext.com>
Suppose that X = {A, B, C, ...} is a set of tree transformation operators. Each of A, B, C, ... takes a tree as input and produces a tree as output. One can functionally compose these operators to form arbitrarily complex tree-manipulating expreesions. For example A(B(C(A(T)))) is one such expression, assuming that T is a tree. How can one express such a manipulation using XLST? Suppose that each of the operators A, B, C, ... can be implemented using XLST stylesheets. Then it seems to me that the only way to express complex expressions (please correct me if I am wrong) is by applying such stylesheets one at a time, and by creating intermediate trees. This process can be prohibitively expensive, especially if intermediate tree are written to disk files. Of course, one may be able express a given manipulation using a single stylesheet if one understands the effects of the given composition of A, B, and C. In general, however, it would be quite difficult/impossible to express an arbitrary tree manipulation using a single XSLT stylesheet. I think that it would be a good idea to extend XLST such that template rules can be applied to intermediate trees that are produced by other template rules in the same stylesheet. That is, template rules don't necessarily have to refer to the (same) input tree. Here is a second suggestion for a possible extension to XSLT. It would be quite useful if a stylesheet can operate on more than one input trees at a time. For example, in the tree manipulation that I mentioned above, suppose that the operator A operates on two trees. Then I should be able to write a stylesheet that implements the tree expression A(B(C(A(T1,T2))),T3), where T1, T2, and T3 are trees. Arun --------------------------------------------- Arun Marathe PhD (Waterloo) Open Text Corporation 185 Columbia Street West Waterloo, ON N2L 5Z5, Canada 519-888-7111 x2649
Received on Thursday, 14 June 2001 23:44:12 UTC