TY - JOUR
T1 - XML stream transformer generation through program composition and dependency analysis
AU - Nishimura, Susumu
AU - Nakano, Keisuke
PY - 2005/2
Y1 - 2005/2
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=9444234470&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=9444234470&partnerID=8YFLogxK
U2 - 10.1016/j.scico.2004.07.001
DO - 10.1016/j.scico.2004.07.001
M3 - Article
AN - SCOPUS:9444234470
SN - 0167-6423
VL - 54
SP - 257
EP - 290
JO - Science of Computer Programming
JF - Science of Computer Programming
IS - 2-3
ER -