posted on 2007-12-12, 12:33authored byO'Neil Delpratt, Naila Rahman, Rajeev Raman
Succinct DOM (SDOM), a DOM implementation, is written in C++, which is suitable for in-memory representation of large static XML documents.
SDOM avoids the use of pointers, and is based upon succinct data structures, which use an information-theoretically minimum amount of space to represent an object.
SDOM gives a space-efficient in-memory representation, with stable and predictable memory usage. The space used by SDOM is an order of magnitude less than that used by a standard C++ DOM representation, but SDOM is extremely fast: navigation is in some cases faster than for a pointer-based representation such as Xerces (even for moderate-sized documents which can comfortably be loaded into main memory by Xerces).
A variant, SDOM-CT, applies bzip-based compression to textual and attribute data, and its space usage is comparable with "query-friendly" XML compressors. Some of these compressors support navigation and/or querying (e.g. subpath queries) of the compressed file. SDOM-CT does not support querying directly, but remains extremely fast: it is several orders of magnitude faster for navigation than query-friendly XML compressors that support navigation (and only a few times slower than say Xerces-C).
History
Source
The 11th International Conference on Extending Database Technology (EDBT'08) 2008, Nantes, France, 25-30 March 2008 (http://edbt2008.univ-nantes.fr/)
Available date
2007-12-12
Notes
An updated version of the SDOM 1.0 software is available at http://hdl.handle.net/2381/27744.