Streaming XSLT Processing Framework

Jana Dvořáková, Filip Zavoral


We introduce an implementation of Xord - an XSLT processing framework which enables us to design and implement efficient algorithms for clearly characterized classes of XSLT transformations with known memory requirements. Within the framework, we design and implement a streaming algorithm using stack of the size proportional to the depth of the input document and associate it with the class of simple order-preserving and branch-disjoint transformations. The framework provides an unifice to the underlying algorithms and acts as a standard XSLT processor.

Moreover, we present a buffering streaming engine for processing top-down XSLT transformations. It consists of an analyzer and a transformer. The analyzer examines given top-down XSLT and XSD, and generates fragments which identify parts of XSD need to be buffered when XSLT is applied. The fragments are passed to the transformer which processes XSLT on an input XML document conforming to XSD. It uses auxiliary memory buffers to store temporary data and buffering is controlled according to the fragments. We describe implementation of the engine within the Xord framework and provide evaluation tests which show that the new engine is much more memory-efficient comparing to the common XSLT processors.

Xord framefork contains the following modules:
Xord Framework
SSXT Analyzer and Transformer
BUXT Analyzer and Transformer

Where to get it

The project has been discontinued.

Contact email:



Research group at the department:

Web Semantization Research Group

Supporting research projects and grants:

GACR 201/09/0990, MSMT MSM0021620838, GACR P202/10/0761, GAUK SVV-2010-261312


  • Dvořáková J., Zavoral F.: A Low-Memory SSXT Algorithm for XSLT Transformations, in Journal of Information Assurance and Security, Vol. 3, Num. 3, pp. 230-239, 2009
  • Dvořáková J., Zavoral F.: Using Input Buffers for Streaming XSLT Processing, in International Conference on Advances in Databases - GlobeNet/DB, Gosier, IEEE Computer Society Press, ISBN: 978-1-4244-3467-1 , pp. 50-55, March 2009
  • Zavoral F., Dvořáková J.: Perfomance of XSLT Processors on Large Data Sets, in Second International Conference on the Applications of Digital Information and Web Technologies, London, IEEE Computer Society Press, ISBN: 978-1-4244-4457-1, pp. 1-10, 2009
  • Dvořáková J., Zavoral F.: A Low-Memory Streaming Algorithm for XSLT Processing Implemented in Xord Framework, in Proceedings of ICADIWT 2008 - First IEEE International Conference on the Applications of Digital Information and Web Technologies, Ostrava, Czech Republic, IEEE Computer Society, ISBN: 978-1-4244-2624-9, pp. 24-29, 2008
  • Dvořáková J., Zavoral F.: BUXT Engine in Xord: Fragment Buffers for Streaming XSLT Transformations, in 5th International Conference on Innovations in Information Technology, Al Ain, United Arab Emirates, IEEE Communication Society, ISBN: 978-1-4244-3396-4, pp. 1-5, December 2008
  • Dvořáková J., Zavoral F.: Determining XSLT Streamability Using New Hierarchical XSD Model, in ITAT 2008 Information Technologies - Applications and Theory, Hrebienok, Vysoké Tatry, Slovakia, PONT Slovakia, ISBN: 978-80-969184-9-2, pp. 7-12, September 2008
  • Dvořáková J., Zavoral F.: Schema-Based Analysis of XSLT Streamability, in ADVCOMP 2008 - The Second International Conference on Advanced Engineering Computing and Applications in Sciences , Valencia, Spain, IEEE Computer Society, ISBN: 978-0-7695-3369-8, pp. 187-192, 2008
  • Dvořáková J., Zavoral F.: Xord: An Implementation Framework for Efficient XSLT Processing, in 2nd International Symposium on Intelligent Distributed Computing, Springer-Verlag, ISBN: 978-3-540-85256-8, ISSN: 1860-949X, pp. 95-104, September 2008
The content of this web site is licensed under Creative Commons Attribution-NonCommercial 3.0 Czech Republic