Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Analysis of imperative XML programs

Reichenbach, Christoph LU orcid ; Burke, Michael G. ; Peshansky, Igor and Raghavachari, Mukund (2009) In Information Systems 34(7). p.624-642
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 such programs. The analysis handles imperative loops that traverse XML values explicitly and declarative queries over XML data 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 demonstrate performance... (More)

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 such programs. The analysis handles imperative loops that traverse XML values explicitly and declarative queries over XML data 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 demonstrate performance improvements for selected XMark benchmark queries and XLinq sample queries.

(Less)
Please use this url to cite or link to this publication:
author
; ; and
publishing date
type
Contribution to journal
publication status
published
subject
keywords
Imperative programming, Program analysis, XML
in
Information Systems
volume
34
issue
7
pages
19 pages
publisher
Wiley-Blackwell
external identifiers
  • scopus:67649613589
ISSN
0306-4379
DOI
10.1016/j.is.2009.03.013
language
English
LU publication?
no
id
b48bbdb9-e1d9-4377-836d-d7abe826d89c
date added to LUP
2019-03-29 20:22:10
date last changed
2022-01-31 18:36:02
@article{b48bbdb9-e1d9-4377-836d-d7abe826d89c,
  abstract     = {{<p>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 such programs. The analysis handles imperative loops that traverse XML values explicitly and declarative queries over XML data 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 demonstrate performance improvements for selected XMark benchmark queries and XLinq sample queries.</p>}},
  author       = {{Reichenbach, Christoph and Burke, Michael G. and Peshansky, Igor and Raghavachari, Mukund}},
  issn         = {{0306-4379}},
  keywords     = {{Imperative programming; Program analysis; XML}},
  language     = {{eng}},
  month        = {{11}},
  number       = {{7}},
  pages        = {{624--642}},
  publisher    = {{Wiley-Blackwell}},
  series       = {{Information Systems}},
  title        = {{Analysis of imperative XML programs}},
  url          = {{http://dx.doi.org/10.1016/j.is.2009.03.013}},
  doi          = {{10.1016/j.is.2009.03.013}},
  volume       = {{34}},
  year         = {{2009}},
}