Skip to main content
Log in

UnQL: a query language and algebra for semistructured data based on structural recursion

  • Special section
  • Published:
The VLDB Journal Aims and scope Submit manuscript

Abstract. This paper presents structural recursion as the basis of the syntax and semantics of query languages for semistructured data and XML. We describe a simple and powerful query language based on pattern matching and show that it can be expressed using structural recursion, which is introduced as a top-down, recursive function, similar to the way XSL is defined on XML trees. On cyclic data, structural recursion can be defined in two equivalent ways: as a recursive function which evaluates the data top-down and remembers all its calls to avoid infinite loops, or as a bulk evaluation which processes the entire data in parallel using only traditional relational algebra operators. The latter makes it possible for optimization techniques in relational queries to be applied to structural recursion. We show that the composition of two structural recursion queries can be expressed as a single such query, and this is used as the basis of an optimization method for mediator systems. Several other formal properties are established: structural recursion can be expressed in first-order logic extended with transitive closure; its data complexity is PTIME; and over relational data it is a conservative extension of the relational calculus. The underlying data model is based on value equality, formally defined with bisimulation. Structural recursion is shown to be invariant with respect to value equality.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Author information

Authors and Affiliations

Authors

Additional information

Received: July 9, 1999 / Accepted: December 24, 1999

Rights and permissions

Reprints and permissions

About this article

Cite this article

Buneman, P., Fernandez, M. & Suciu, D. UnQL: a query language and algebra for semistructured data based on structural recursion. The VLDB Journal 9, 76–110 (2000). https://doi.org/10.1007/s007780050084

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s007780050084

Navigation