Title :
Streaming XPath processing with forward and backward axes
Author :
Barton, Charles ; Charles, Philippe ; Goyal, Deepak ; Raghavachari, Mukund ; Fontoura, Marcus ; Josifovski, Vanja
Author_Institution :
IBM Thomas J. Watson Res. Center, Hawthorne, NY, USA
Abstract :
We present a streaming algorithm for evaluating XPath expressions that use backward axes (parent and ancestor) and forward axes in a single document-order traversal of an XML document. Other streaming XPath processors handle only forward axes. We show through experiments that our algorithm significantly outperforms (by more than a factor of two) a traditional nonstreaming XPath engine. Furthermore, our algorithm scales better because it retains only the relevant portions of the input document in memory. Our engine successfully processes documents over 1GB in size, whereas the traditional XPath engine degrades considerably in performance for documents over 100 MB in size and fails to complete for documents of size over 200 MB.
Keywords :
XML; tree data structures; tree searching; X-tree; XML document-order traversal; XPath expressions; XPath processing; backward axes; forward axes; streaming algorithm; traditional XPath engine; tree based representation; Automata; Data engineering; Degradation; Engines; Filtering; Publish-subscribe; Subscriptions; XML;
Conference_Titel :
Data Engineering, 2003. Proceedings. 19th International Conference on
Print_ISBN :
0-7803-7665-X
DOI :
10.1109/ICDE.2003.1260813