Minimization of tree pattern queries
SIGMOD '01 Proceedings of the 2001 ACM SIGMOD international conference on Management of data
Containment and equivalence for an XPath fragment
Proceedings of the twenty-first ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Containment for XPath Fragments under DTD Constraints
ICDT '03 Proceedings of the 9th International Conference on Database Theory
Rewriting XPath queries using materialized views
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Query caching and view selection for XML databases
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Answering tree pattern queries using views
VLDB '06 Proceedings of the 32nd international conference on Very large data bases
Hi-index | 0.01 |
Finding a homomorphism between tree patterns is an important technique for testing tree pattern containment, and it is the main technique behind algorithms for rewriting tree pattern queries using views. Recent work has shown that for tree patterns P and Q that involve parent-child (/) edges, ancestor-descendant (//) edges, and branching ([]) only, under a non-disjunctive, non-recursive dtdG, testing whether P is contained in Q can be done by chasing P into P′ using five types of constraints derivable from G, and then testing whether P′ is contained in Q without G, which in turn can be done by finding a homomorphism from Q to P′. We extend this work to non-disjunctive, recursive dtds. We identify three new types of constraints that may be implied by a non-disjunctive recursive dtd, and show that together with the previous five types of constraints, they are necessary, and sufficient in some important cases, to consider for testing containment of tree patterns involving /, //, and [] under G. We present two sets of chase rules to chase a tree pattern repeatedly, and compare the advantages of these chase rules.