XML stream transformer generation through program composition and dependency analysis

Susumu Nishimura, Keisuke Nakano

Research output: Contribution to journalArticlepeer-review

8 Citations (Scopus)


XML stream transformation, which sequentially processes the input XML data on the fly, makes it possible to process large sized data within a limited amount of memory. Though being efficient in memory-use, stream transformation requires stateful programming, which is error-prone and hard to manage. This paper proposes a scheme for generating XML stream transformers. Given an attribute grammar definition of transformation over an XML tree structure, we systematically derive a stream transformer in two steps. First, an attribute grammar definition of the XML stream transformation is inferred by applying a program composition method. Second, a finite state transition machine is constructed through a dependency analysis. Due to the closure property of the program composition method, our scheme also allows modular construction of XML stream transformers. We have implemented a prototype XML stream transformer generator, called altSAX. The experimental results show that the generated transformers are efficient in memory consumption as well as in execution time.

Original languageEnglish
Pages (from-to)257-290
Number of pages34
JournalScience of Computer Programming
Issue number2-3
Publication statusPublished - 2005 Feb


Dive into the research topics of 'XML stream transformer generation through program composition and dependency analysis'. Together they form a unique fingerprint.

Cite this