Structural Recursion on Ordered Trees and List-Based Complex Objects

Expressiveness and PTIME Restrictions
  • Edward L. Robertson
  • Lawrence V. Saxton
  • Dirk Van Gucht
  • Stijn Vansummeren
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4353)


XML query languages need to provide some mechanism to inspect and manipulate nodes at all levels of an input tree. In this paper we investigate the expressive power provided in this regard by structural recursion. We show that the combination of vertical recursion down a tree combined with horizontal recursion across a list of trees gives rise to a robust class of transformations: it captures the class of all primitive recursive queries. Since queries are expected to be computable in at most polynomial time for all practical purposes, we next identify a restriction of structural recursion that captures the polynomial time queries. Although this restriction is semantical in nature, and therefore undecidable, we provide an effective syntax. We also give corresponding results for list-based complex objects.


Polynomial Time Turing Machine Query Language Recursive Function Complex Object 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abiteboul, S., Beeri, C.: The power of languages for the manipulation of complex values. VLDB Journal 4(4), 727–794 (1995)CrossRefGoogle Scholar
  2. 2.
    Abiteboul, S., Hull, R., Vianu, V.: Foundations Of Databases. Addison-Wesley, Reading (1995)zbMATHGoogle Scholar
  3. 3.
    Bellantoni, S., Cook, S.: A new recursion-theoretic characterization of the polytime functions (extended abstract). In: STOC 1992, pp. 283–293. ACM Press, New York (1992)CrossRefGoogle Scholar
  4. 4.
    Boag, S., Chamberlin, D., Fernández, M.F., Florescu, D., Robie, J., Siméon, J.: XQuery 1.0: An XML Query Language. W3C Candidate Recommendation (November 2005)Google Scholar
  5. 5.
    Bonner, A.J., Mecca, G.: Sequences, datalog, and transducers. J. Comput. Syst. Sci. 57(3), 234–259 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Boolos, G., Jeffrey, R.: Computability and Logic, 3rd edn. Cambridge University Press, Cambridge (1989)zbMATHGoogle Scholar
  7. 7.
    Buneman, P., Fernandez, M., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB Journal 9(1), 76–110 (2000)CrossRefGoogle Scholar
  8. 8.
    Buneman, P., Naqvi, S.A., Tannen, V., Wong, L.: Principles of programming with complex objects and collection types. Theoretical Comput. Sci. 149(1), 3–48 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Caseiro, V.: Equations for Defining Poly-time Functions. PhD thesis, University of Oslo (1997)Google Scholar
  10. 10.
    Chandra, A.K., Harel, D.: Computable queries for relational data bases. J. Comput. Syst. Sci. 21(2), 156–178 (1980)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Cobham, A.: The intrinsic computational difficulty of functions. In: Logic, Methodology, and Philosophy of Science II, pp. 24–30. Springer, Heidelberg (1965)Google Scholar
  12. 12.
    Colby, L.S., Libkin, L.: Tractable iteration mechanisms for bag languages. In: Afrati, F.N., Kolaitis, P.G. (eds.) ICDT 1997. LNCS, vol. 1186, pp. 461–475. Springer, Heidelberg (1996)Google Scholar
  13. 13.
    Colby, L.S., Robertson, E.L., Saxton, L.V., Gucht, D.V.: A query language for list-based complex objects. In: PODS 1994, pp. 179–189. ACM Press, New York (1994)CrossRefGoogle Scholar
  14. 14.
    Draper, D., Fankhauser, P., Fernández, M.F., Malhotra, A., Rose, K., Rys, M., Siméon, J., Wadler, P.: XQuery 1.0 and XPath 2.0 Formal Semantics. W3C Candidate Recommendation (June 2006)Google Scholar
  15. 15.
    Fernández, M.F., Siméon, J., Wadler, P.: A semi-monad for semi-structured data. In: Van den Bussche, J., Vianu, V. (eds.) ICDT 2001. LNCS, vol. 1973, pp. 263–300. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  16. 16.
    Grumbach, S., Milo, T.: Personal communicationGoogle Scholar
  17. 17.
    Grumbach, S., Milo, T.: An algebra for pomsets. Inf. Comput. 150(2), 268–306 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    Hofmann, M.: A mixed modal/linear lambda calculus with applications to Bellantoni-Cook safe recursion. In: Nielsen, M. (ed.) CSL 1997. LNCS, vol. 1414, pp. 275–294. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  19. 19.
    Hofmann, M.: Semantics of linear/modal lambda calculus. Journal of Functional Programming 9(3), 247–277 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Hull, R., Su, J.: Algebraic and calculus query languages for recursively typed complex objects. J. Comput. Syst. Sci. 47(1), 121–156 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Immerman, N., Patnaik, S., Stemple, D.W.: The expressiveness of a family of finite set languages. Theor. Comput. Sci. 155(1), 111–140 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Koch, C.: On the complexity of nonrecursive XQuery and functional query languages on complex values. In: PODS 2005, pp. 84–97. ACM Press, New York (2005)CrossRefGoogle Scholar
  23. 23.
    Leivant, D.: Stratified functional programs and computational complexity. In: POPL 1993, pp. 325–333. ACM Press, New York (1993)CrossRefGoogle Scholar
  24. 24.
    Libkin, L., Wong, L.: Query languages for bags and aggregate functions. J. Comput. Syst. Sci. 55(2), 241–272 (1997)zbMATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Sazonov, V.Y.: Hereditarily-finite sets, data bases and polynomial-time computability. Theor. Comput. Sci. 119(1), 187–214 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  26. 26.
    Suciu, D.: Bounded fixpoints for complex objects. Theor. Comput. Sci. 176(1-2), 283–328 (1997)zbMATHCrossRefMathSciNetGoogle Scholar
  27. 27.
    Suciu, D., Wong, L.: On two forms of structural recursion. In: Y. Vardi, M., Gottlob, G. (eds.) ICDT 1995. LNCS, vol. 893, pp. 111–124. Springer, Heidelberg (1995)Google Scholar
  28. 28.
    Thompson, H.S., Beech, D., Maloney, M., Mendelsohn, N.: XML Schema Part 1: Structures. W3C Recommendation (May 2001)Google Scholar
  29. 29.
    Van den Bussche, J., Van Gucht, D., Vansummeren, S.: Well-definedness and semantic type-checking in the nested relational calculus and xquery. In: Eiter, T., Libkin, L. (eds.) ICDT 2005. LNCS, vol. 3363, pp. 99–113. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Edward L. Robertson
    • 1
  • Lawrence V. Saxton
    • 2
  • Dirk Van Gucht
    • 1
  • Stijn Vansummeren
    • 3
  1. 1.Indiana UniversityUSA
  2. 2.University of ReginaCanada
  3. 3.Hasselt University and Transnational University of LimburgBelgium

Personalised recommendations