Research topics in functional programming
Journal of Algorithms
Proceedings of the 2002 ACM symposium on Document engineering
Processing XML Streams with Deterministic Automata
ICDT '03 Proceedings of the 9th International Conference on Database Theory
A Better XML Parser through Functional Programming
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
XML parsing: a threat to database performance
CIKM '03 Proceedings of the twelfth international conference on Information and knowledge management
Proceedings of the 2003 ACM symposium on Document engineering
Static optimization of XSLT stylesheets: template instantiation optimization and lazy XML parsing
Proceedings of the 2005 ACM symposium on Document engineering
A linear time algorithm for optimal tree sibling partitioning and approximation algorithms in Natix
VLDB '06 Proceedings of the 32nd international conference on Very large data bases
Efficient algorithms for processing XPath queries
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
XMark: a benchmark for XML data management
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
XPathMark: an XPath benchmark for the XMark generated data
XSym'05 Proceedings of the Third international conference on Database and XML Technologies
Storing semi-structured data on disk drives
ACM Transactions on Storage (TOS)
Hi-index | 0.00 |
XML has become the standard format for data representation and exchange in domains ranging from Web to desktop applications. However, wide adoption of XML is hindered by inefficient document-parsing methods. Recent work on lazy parsing is a major step towards alleviating this problem. However, lazy parsers must still read the entire XML document in order to extract the overall document structure, due to the lack of internal navigation pointers inside XML documents. Further, these parsers must load and parse the entire virtual document tree into memory during XML query processing. These overheads significantly degrade the performance of navigation operations. We have developed a framework for efficient XML parsing based on the idea of placing internal physical pointers within the document, which allows skipping large portions of the document during parsing. The internal pointers are generated in a way that optimizes parsing for common navigation patterns. A double-Lazy Parser (2LP) is then used to parse the document that exploits the internal pointers. To create the internal pointers, we use constructs supported by the current W3C XML standard. We study our pointer generation and parsing algorithms both theoretically and experimentally, and show that they perform considerably better than existing approaches.