XML stream transformer generation through program composition and dependency analysis

  • Authors:
  • Susumu Nishimura;Keisuke Nakano

  • Affiliations:
  • Department of Mathematics, Faculty of Science, Kyoto University, Kyoto 606-8502, Japan;Department of Mathematical Engineering and Information Physics, University of Tokyo, Tokyo 113-8656, Japan

  • Venue:
  • Science of Computer Programming
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.