Attribute grammars: attribute evaluation methods
Methods and tools for compiler construction
Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
Validating streaming XML documents
Proceedings of the twenty-first ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Introduction to Automata Theory, Languages and Computability
Introduction to Automata Theory, Languages and Computability
Using circular programs to deforest in accumulating parameters
ASIA-PEPM '02 Proceedings of the ASIAN symposium on Partial evaluation and semantics-based program manipulation
Attribute grammars as a functional programming paradigm
Proceedings of the Functional Programming Languages and Computer Architecture
Processing XML Streams with Deterministic Automata
ICDT '03 Proceedings of the 9th International Conference on Database Theory
Declarative Program Transformation: A Deforestation Case-Study
PPDP '99 Proceedings of the International Conference PPDP'99 on Principles and Practice of Declarative Programming
Efficient Filtering of XML Documents for Selective Dissemination of Information
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
EDBT '02 Proceedings of the Worshops XMLDM, MDDE, and YRWS on XML-Based Data Management and Multimedia Engineering-Revised Papers
YFilter: Efficient and Scalable Filtering of XML Documents
ICDE '02 Proceedings of the 18th International Conference on Data Engineering
Fusion with stacks and accumulating parameters
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A transducer-based XML query processor
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
Online evaluation of regular tree queries
Nordic Journal of Computing
Categorical descriptional composition
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
LOPSTR'05 Proceedings of the 15th international conference on Logic Based Program Synthesis and Transformation
A pushdown machine for recursive XML processing
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Computer Standards & Interfaces
Hi-index | 0.00 |
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.