Reasoning about XML with Temporal Logics and Automata

We show that problems arising in static analysis of XML specifications and transformations can be dealt with using techniques similar to those developed for static analysis of programs. Many properties of interest in the XML context are related to navigation, and can be formulated in temporal logics for trees. We choose a logic that admits a simple single-exponential translation into unranked tree automata, in the spirit of the classical LTL-to-Buchi automata translation. Automata arising from this translation have a number of additional properties; in particular, they are convenient for reasoning about unary node-selecting queries, which are important in the XML context. We give two applications of such reasoning: one deals with a classical XML problem of reasoning about navigation in the presence of schemas, and the other relates to verifying security properties of XML views.

[1]  Serge Abiteboul,et al.  Representing and querying XML with incomplete information , 2006, TODS.

[2]  Cristina Sirangelo,et al.  Reasoning about XML with temporal logics and automata , 2010, J. Appl. Log..

[3]  Maarten Marx,et al.  Conditional XPath , 2005, TODS.

[4]  Maarten Marx,et al.  XPath with Conditional Axis Relations , 2004, EDBT.

[5]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[6]  Serge Abiteboul,et al.  Reasoning about XML update constraints , 2007, J. Comput. Syst. Sci..

[7]  Holger Schlingloff Expressive completeness of temporal logic of trees , 1992, J. Appl. Non Class. Logics.

[8]  Fausto Giunchiglia,et al.  Improved Automata Generation for Linear Temporal Logic , 1999, CAV.

[9]  Wenfei Fan,et al.  Consistency of XML Specifications , 2005, Inconsistency Tolerance.

[10]  Neil Immerman,et al.  First-Order and Temporal Logics for Nested Words , 2007, 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007).

[11]  Michael Benedikt,et al.  XML Subtree Queries: Specification and Composition , 2005, DBPL.

[12]  Pierre Wolper,et al.  Simple on-the-fly automatic verification of linear temporal logic , 1995, PSTV.

[13]  Thomas Schwentick,et al.  XPath query containment , 2004, SGMD.

[14]  Helmut Seidl,et al.  Exact XML Type Checking in Polynomial Time , 2007, ICDT.

[15]  Wenfei Fan,et al.  Secure XML querying with security views , 2004, SIGMOD '04.

[16]  Frank Neven,et al.  Expressiveness of structured document query languages based on attribute grammars , 1998, JACM.

[17]  Moshe Y. Vardi An Automata-Theoretic Approach to Linear Temporal Logic , 1996, Banff Higher Order Workshop.

[18]  Thomas Schwentick,et al.  Automata for XML - A survey , 2007, J. Comput. Syst. Sci..

[19]  Diego Calvanese,et al.  Regular XPath: Constraints, Query Containment and View-Based Answering for XML Documents , 2008 .

[20]  Thomas Schwentick,et al.  Two-variable logic on data trees and XML reasoning , 2009, JACM.

[21]  Georg Gottlob,et al.  Monadic datalog and the expressive power of languages for web information extraction , 2002, JACM.

[22]  Pierre Genevès,et al.  Efficient static analysis of XML paths and types , 2007, PLDI '07.

[23]  Mahesh Viswanathan,et al.  Query Automata for Nested Words , 2009, MFCS.

[24]  Wenfei Fan,et al.  Rewriting Regular XPath Queries on XML Views , 2007, 2007 IEEE 23rd International Conference on Data Engineering.

[25]  Jean-Marc Talbot,et al.  Expressiveness of spatial logic for trees , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[26]  Christoph Koch,et al.  Query evaluation on compressed trees , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[27]  Michael Benedikt,et al.  XPath satisfiability in the presence of DTDs , 2008, JACM.

[28]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[29]  Pierre Wolper,et al.  Reasoning About Infinite Computations , 1994, Inf. Comput..

[30]  Moshe Y. Vardi Reasoning about The Past with Two-Way Automata , 1998, ICALP.

[31]  Pierre Genevès,et al.  A system for the static analysis of XPath , 2006, TOIS.

[32]  Thomas Schwentick,et al.  Simple off the shelf abstractions for XML schema , 2007, SGMD.

[33]  Thomas Schwentick,et al.  Query automata over finite trees , 2002, Theor. Comput. Sci..

[34]  Joachim Niehren,et al.  Tree Automata , 2005 .

[35]  Pablo Barceló,et al.  Temporal logics over unranked trees , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[36]  Mahesh Viswanathan,et al.  Visibly pushdown automata for streaming XML , 2007, WWW '07.

[37]  Thomas Schwentick,et al.  On the complexity of XPath containment in the presence of disjunction, DTDs, and variables , 2006, Log. Methods Comput. Sci..

[38]  Wolfgang Thomas,et al.  Languages, Automata, and Logic , 1997, Handbook of Formal Languages.

[39]  Philippe Schnoebelen,et al.  Temporal logic with forgettable past , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[40]  Frank Neven Design and analysis of query languages for structured documents. A formal and logical approach , 1999 .

[41]  Pierre Wolper,et al.  Automata theoretic techniques for modal logics of programs: (Extended abstract) , 1984, STOC '84.

[42]  Frank Neven,et al.  Automata, Logic, and XML , 2002, CSL.

[43]  Leonid Libkin,et al.  Logics for Unranked Trees: An Overview , 2005, Log. Methods Comput. Sci..

[44]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[45]  Frank Neven,et al.  Expressiveness of structured document query languages based on attribute grammars , 2002, J. ACM.

[46]  M. de Rijke,et al.  Semantic characterizations of navigational XPath , 2005, SGMD.