XPath query evaluation based on the stack encoding

  • Authors:
  • Yangjun Chen;Donovan Cooke

  • Affiliations:
  • University of Winnipeg, Winnipeg, Manitoba, Canada;University of Winnipeg, Winnipeg, Manitoba, Canada

  • Venue:
  • C3S2E '09 Proceedings of the 2nd Canadian Conference on Computer Science and Software Engineering
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The twig join, which is used to find all occurrences of a twig pattern in an XML database, is a core operation for XML query processing. A great many strategies for handling this problem have been proposed and can be roughly classified into two groups. The first group decomposes a twig pattern (a small tree) into a set of binary relationships between pairs of nodes, such as parent-child and ancestor-descendant relations; and transforms a tree matching problem into a series of simple relation look-ups. The second group decomposes a twig pattern into a set of paths. Among all this kind of methods, the approach based on the so-called stack encoding by Bruno et. al. [2] is very interesting, which can represent in linear space a potentially exponential (in the number of query nodes) number of matching paths. However, the available processes for generating such compressed paths suffer some redundancy and can be significantly improved. In this paper, we analyze this method and show that the time complexities of path generation in its two main procedures: PathStack and TwigStack can be reduced from O(m2 ·n) to O(m ·n), where m and n are the sizes of the query tree and document tree, respectively. Experiments have been done to compare ours and some existing startegies, which shows that using our method much less time is needed to generate matching paths.