Universität Karlsruhe
Lazy XSL Transformations


[noga2003lazy]Steffen Schott, Markus L. Noga, Lazy XSL Transformations, DocEng 2003, ACM Press, Nov 2003.


We introduce a lazy XSLT interpreter that provides random access to the transformation result. This allows efficient pipelining of transformation sequences. Nodes of the result tree are computed only upon initial access. As these computations have limited fan-in, sparse output coverage propagates backwards through the pipeline. In comparative measurements with traditional eager implementations, our approach is on par for complete coverage and excels as coverage becomes sparser. In contrast to eager evaluation, lazy evaluation also admits infinite intermediate results, thus extending the design space for transformation sequences. To demonstrate that lazy evaluation preserves the semantics of XSLT, we reduce XSLT to the lambda calculus via a functional language. While this is possible for all languages, most imperative languages cannot profit from the confluence of lambda as only one reduction applies at a time.

[Erzeuge bibTeX Eintrag]




Dr. Markus L. Noga
Steffen Schott