MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Regular expression types for XML (2000) [118 citations — 13 self]

Download:
Download as a PDF | Download as a PS
by Haruo Hosoya, J Vouillon, Benjamin C. Pierce
In Proceedings of the International Conference on Functional Programming (ICFP
http://www.cis.upenn.edu/~bcpierce/papers/regsub.ps
Add To MetaCart

Abstract:

We propose regular expression types as a foundation for XML processing languages. Regular expression types are a natural generalization of Document Type Definitions (DTDs), describing structures in XML documents using regular expression operators (i.e., *,?,---, etc.) and supporting a simple but powerful notion of subtyping. The decision problem for the subtype relation is EXPTIME-hard, but it can be checked quite efficiently in many cases of practical interest. The subtyping algorithm developed here is a variant of Aiken and Murphy's setinclusion constraint solver, to which are added several optimizations and two new properties: (1) our algorithm is provably complete, and (2) it allows a useful "subtagging" relation between nodes with different labels in XML trees.

Citations

2770 Introduction to Automata Theory, Language, and Computation – Hopcroft, Ullman - 1979
303 Subtyping recursive types – Amadio, Cardelli - 1993
146 Cayenne - a Language with Dependent Types – Augustsson - 1998
114 Typechecking for XML transformers – Milo, Suciu, et al.
110 XDuce: A typed XML processing language – Hosoya, Pierce
65 Haskell and xml: generic combinators or type-based translation – Wallace, Runciman - 1999
52 Deciding equivalence of finite tree automata – Seidl - 1990
49 Coinductive axiomatization of recursive type equality and subtyping – Brandt, Henglein - 1997
48 and XML: Generic combinators or typebased translation – Haskell - 1999
44 Implementing regular tree expressions – Aiken, Murphy - 1991
33 Comparing hierarchical data in external memory – Chawathe - 1999
27 Solving systems of set constraints (extended abstract – Aiken, Wimmers - 1992
23 Union Types for Semistructured Data – Buneman, Pierce - 1999
23 Recursive subtyping revealed – Gapeyev, Levin, et al. - 2000
21 Using YAT to Build a Web Server – Sim'eon, Cluet - 1998
17 Making setconstraint program analyses scale – Fhndrich, Aiken - 1996
12 XMλ: A functional programming language for constructing and manipulating XML documents. Unpublished paper – Shields, Meijer - 2000
11 Tree automata techniques and applications. Draft book; available electronically on http://www.grappa.univ-lille3.fr/tata – Comon, Dauchet, et al. - 2002
3 et al. The Objective Caml system – Leroy, Vouillon, et al. - 1996
2 Tree automata and pattern matching – Hosoya, Pierce - 2000
2 types for semistructured data – Union - 1999
1 Gopalan Nadathur and A. Scedrov. Lambda prolog: An extended logic programming language – Felty, Gunter, et al. - 1988
1 Gopalan Nadathur and Andre Scedrov. Lambda prolog: An extended logic programming language – Felty, Gunter, et al. - 1988
1 Recursive Types for DUMMIES – Gapeyev, Levin, et al. - 2000