Analysis of imperative XML programs

  • Authors:
  • Michael G. Burke;Igor Peshansky;Mukund Raghavachari;Christoph Reichenbach

  • Affiliations:
  • IBM T. J. Watson Research Center;IBM T. J. Watson Research Center;IBM T. J. Watson Research Center;University of Colorado at Boulder

  • Venue:
  • DBPL'07 Proceedings of the 11th international conference on Database programming languages
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

The widespread adoption of XML has led to programming languages that support XML as a first class construct. In this paper, we present a method for analyzing and optimizing imperative XML processing programs. In particular, we present a program analysis, based on a flow-sensitive type system, for detecting both redundant computations and redundant traversals in XML processing programs. The analysis handles declarative queries over XML data and imperative loops that traverse XML values explicitly in a uniform framework. We describe two optimizations that take advantage of our analysis: one merges queries that traverse the same set of XML nodes, and the other replaces an XPath expression by a previously computed result. We show the effectiveness of our method by providing performance measurements on XMark benchmark queries and XLinq sample queries.