Streaming XPath Processing with Forward and Backward Axes. Barton, C.; Charles, P.; Goyal, D.; Raghavachari, M.; Fontoura, M.; and Josifovski, V. In pages 455-466.
doi  abstract   bibtex   
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 non-streaming 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.
@inproceedings{ bar03,
  crossref = {icde2003},
  author = {Charles Barton and Philippe Charles and Deepak Goyal and Mukund Raghavachari and Marcus Fontoura and Vanja Josifovski},
  title = {Streaming XPath Processing with Forward and Backward Axes},
  pages = {455-466},
  doi = {10.1109/ICDE.2003.1260813},
  topic = {xpath[0.8]},
  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 non-streaming 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.}
}
Downloads: 0