An Automata-Theoretic Approach to Regular XPath

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5708)


In this paper we present Regular XPath (RXPath), which is a natural extension of XPath with regular expressions over paths that has the same computational properties as XPath: linear-time query evaluation and exponential-time reasoning. To establish these results, we devise a unifying automata-theoretic framework based on two-way weak alternating tree automata. Specifically, we consider automata that have infinite runs on finite trees. This enables us to leverage and simplify existing automata-theoretic machinery and develop algorithms both for query evaluation and for reasoning over queries. With respect to the latter problem, we consider RXPath as a constraint language, and study constraint satisfiability, and query satisfiability and containment under constraints in the setting of RXPath.


Query Evaluation Input Tree Tree Automaton Path Expression XPath Query 
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.
    Clark, J., DeRose, S.: XML Path Language (XPath) version 1.0. W3C Recommendation (November 1999),
  2. 2.
    ten Cate, B., Segoufin, L.: XPath, transitive closure logic, and nested tree walking automata. In: Proc. of PODS 2008, pp. 251–260 (2008)Google Scholar
  3. 3.
    Marx, M.: XPath with conditional axis relations. In: Bertino, E., Christodoulakis, S., Plexousakis, D., Christophides, V., Koubarakis, M., Böhm, K., Ferrari, E. (eds.) EDBT 2004. LNCS, vol. 2992, pp. 477–494. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  4. 4.
    Fischer, M.J., Ladner, R.E.: Propositional dynamic logic of regular programs. J. of Computer and System Sciences 18, 194–211 (1979)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Kupferman, O., Vardi, M.Y., Wolper, P.: An automata-theoretic approach to branching-time model checking. J. of the ACM 47(2), 312–360 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Vardi, M.Y.: Reasoning about the past with two-way automata. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 628–641. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  7. 7.
    Schulte Althoff, C., Thomas, W., Wallmeier, N.: Observations on determinization of Büchi automata. In: Farré, J., Litovsky, I., Schmitz, S. (eds.) CIAA 2005. LNCS, vol. 3845, pp. 262–272. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Tasiran, S., Hojati, R., Brayton, R.K.: Language containment using non-deterministic Omega-automata. In: Camurati, P.E., Eveking, H. (eds.) CHARME 1995. LNCS, vol. 987, pp. 261–277. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  9. 9.
    Libkin, L., Sirangelo, C.: Reasoning about XML with temporal logics and automata. In: Cervesato, I., Veith, H., Voronkov, A. (eds.) LPAR 2008. LNCS, vol. 5330, pp. 97–112. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  10. 10.
    Genevès, P., Layaïda, N., Schmitt, A.: Efficient static analysis of XML paths and types. In: Proc. of the ACM SIGPLAN 2007 Conf. on Programming Language Design and Implementation (PLDI 2007), pp. 342–351 (2007)Google Scholar
  11. 11.
    Cosmadakis, S.S., Gaifman, H., Kanellakis, P.C., Vardi, M.Y.: Decidable optimization problems for database logic programs. In: Proc. of STOC 1988, pp. 477–490 (1988)Google Scholar
  12. 12.
    Gottlob, G., Koch, C., Pichler, R.: Efficient algorithms for processing XPath queries. ACM Trans. on Database Systems 30(2), 444–491 (2005)CrossRefGoogle Scholar
  13. 13.
    Bojanczyk, M., Parys, P.: XPath evaluation in linear time. In: Proc. of PODS 2008, pp. 241–250 (2008)Google Scholar
  14. 14.
    Schwentick, T.: XPath query containment. SIGMOD Record 33(1), 101–109 (2004)MathSciNetCrossRefGoogle Scholar
  15. 15.
    Fan, W.: XML constraints: Specification, analysis, and applications. In: Proc. of DEXA 2005 (2005)Google Scholar
  16. 16.
    Calvanese, D., De Giacomo, G., Lenzerini, M.: Representing and reasoning on XML documents: A description logic approach. J. of Log. and Comp. 9(3), 295–318 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Bex, G.J., Neven, F., Van den Bussche, J.: DTDs versus XML Schema: A practical study. In: Proc. of WebDB 2004, pp. 79–84 (2004)Google Scholar
  18. 18.
    Calvanese, D., De Giacomo, G., Lenzerini, M., Vardi, M.Y.: Reasoning on regular path queries. SIGMOD Record 32(4), 83–92 (2003)CrossRefGoogle Scholar
  19. 19.
    Marx, M.: First order paths in ordered trees. In: Eiter, T., Libkin, L. (eds.) ICDT 2005. LNCS, vol. 3363, pp. 114–128. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  20. 20.
    Afanasiev, L., Blackburn, P., Dimitriou, I., Gaiffe, B., Goris, E., Marx, M., de Rijke, M.: PDL for ordered trees. J. of Applied Non-Classical Logics 15(2), 115–135 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Slutzki, G.: Alternating tree automata. Theor. Comp. Sci. 41, 305–318 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Comon, H., Dauchet, M., Gilleron, R., Jacquemard, F., Lugiez, D., Tison, S., Tommasi, M.: Tree automata techniques and applications (2002),
  23. 23.
    Doner, J.E.: Decidability of the weak second-order theory of two successors. Notices Amer. Math. Soc. 12, 819 (1965)Google Scholar
  24. 24.
    Bryant, R.E.: Graph-based algorithms for Boolean-function manipulation. IEEE Trans. on Computers C-35(8) (1986)Google Scholar
  25. 25.
    Sattler, U., Vardi, M.Y.: The hybrid μ-calculus. In: Goré, R.P., Leitsch, A., Nipkow, T. (eds.) IJCAR 2001. LNCS, vol. 2083, pp. 76–91. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  26. 26.
    Safra, S.: On the complexity of ω-automata. In: Proc. of FOCS 1988, pp. 319–327 (1988)Google Scholar
  27. 27.
    Jurdzinski, M.: Small progress measures for solving parity games. In: Reichel, H., Tison, S. (eds.) STACS 2000. LNCS, vol. 1770, pp. 290–301. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  28. 28.
    Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: 1020 states and beyond. Information and Computation 98(2), 142–170 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Calvanese, D., De Giacomo, G., Lenzerini, M., Vardi, M.Y.: View-based query answering and query containment over semistructured data. In: Ghelli, G., Grahne, G. (eds.) DBPL 2001. LNCS, vol. 2397, pp. 40–61. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  30. 30.
    Fan, W., Geerts, F., Jia, X., Kementsietsidis, A.: Rewriting regular XPath queries on XML views. In: Proc. of ICDE 2007, pp. 666–675 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  1. 1.KRDB Research CentreFree University of Bozen-BolzanoItaly
  2. 2.Dipartimento di Informatica e SistemisticaSapienza Università di RomaItaly
  3. 3.Department of Computer ScienceRice UniversityHoustonU.S.A.

Personalised recommendations