XML Tree Structure Compression

In an XML document a considerable fraction consists of markup, that is, begin and end-element tags describing the document's tree structure. XML compression tools such as XMill separate the tree structure from the data content and compress each separately. The main focus in these compression tools is how to group similar data content together prior to performing standard data compression such as gzip, bzip2, or ppm. In contrast, the focus of this paper is on compressing the tree structure part of an XML document. We use a known algorithm to derive a grammar representation of the tree structure which factors out the repetition of tree patterns. We then investigate several succinct binary encodings of these grammars. Our experiments show that we can be consistently smaller than the tree structure compression carried out by XMill, using the same backend compressors as XMill on our encodings. However, the most surprising result is that our own Huffman-like encoding of the grammars (without any backend compressor whatsoever) consistently outperforms XMill with gzip backend. This is of particular interest because our Huffman-like encoding can be queried without prior decompression. To the best of our knowledge this offers the smallest queriable XML tree structure representation currently available.

[1]  James Cheney Compressing XML with multiplexed hierarchical PPM models , 2001, Proceedings DCC 2001. Data Compression Conference.

[2]  John Lamping,et al.  An algorithm for optimal lambda calculus reduction , 1989, POPL '90.

[3]  Sebastian Maneth,et al.  Structural Selectivity Estimation for XML Documents , 2007, 2007 IEEE 23rd International Conference on Data Engineering.

[4]  Jayant R. Haritsa,et al.  XGrind: a query-friendly XML compressor , 2002, Proceedings 18th International Conference on Data Engineering.

[5]  Gregory Leighton,et al.  TREECHOP: A Tree-based Query-able Compressor for XML , 2005 .

[6]  Tomasz Müldner,et al.  AXECHOP: a grammar-based compressor for XML , 2005, Data Compression Conference.

[7]  Pamela C. Cosman,et al.  Universal lossless compression via multilevel pattern matching , 2000, IEEE Trans. Inf. Theory.

[8]  Sebastian Maneth,et al.  Tree Transducers and Tree Compressions , 2004, FoSSaCS.

[9]  Dan Suciu,et al.  XMill: an efficient compressor for XML data , 2000, SIGMOD '00.

[10]  Sebastian Maneth,et al.  Tree Automata and XPath on Compressed Trees , 2005, CIAA.

[11]  Peter Buneman,et al.  Edinburgh Research Explorer Path Queries on Compressed XML , 2022 .

[12]  Naila Rahman,et al.  Engineering succinct DOM , 2008, EDBT '08.

[13]  Sebastian Maneth,et al.  Efficient memory representation of XML document trees , 2008, Inf. Syst..

[14]  Raymond K. Wong,et al.  Querying and maintaining a compact XML storage , 2007, WWW '07.

[15]  Quanzhong Li,et al.  Supporting efficient query processing on compressed XML files , 2005, SAC '05.