9th International Database Engineering & Application Symposium (IDEAS'05) On the Intersection of XPath Expressions Montreal, Canada July 25-July 27 ISBN: 0-7695-2404-4
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/IDEAS.2005.39
XPath is a common language for selecting nodes in an XML document. XPath uses so called path expressions which describe a navigation path through semistructured data. In the last years some of the characteristics of XPath have been discussed. Examples include the containment of two XPath expressions p and p' (p ⊆ p'). To the best of our knowledge the intersection of two XPath expressions (p ∩ p') has not been treated yet. The intersection of p and p' is the set that contains all XML nodes that are selected both by p and p'. In the context of indexes in XML databases the emptiness of the intersection of p and p' is a major issue when updating the index. In order to keep the index consistent to the indexed data, it has to be detected if an index that is defined upon p is affected by a modifying database operation with the path expression p'. In this paper we introduce the intersection problem for XPath and give a motivation for its relevance. We present an efficient intersection algorithm for XPath expressions without the NOT operator that is based on finite automata. For expressions that contain the NOT operator the intersection problem becomes NP-complete leading to exponential computations in general. With an average case simulation we show that the NPcompleteness is no significant limitation for most real-world database operations.
Citation:
Beda Christoph Hammerschmidt, Martin Kempa, Volker Linnemann, "On the Intersection of XPath Expressions," ideas, pp.49-57, 9th International Database Engineering & Application Symposium (IDEAS'05), 2005 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||