RapidXml is a very fast and stable XML DOM-style parser written in . It is aimed primarily at embedded environments, computer games, or any other applications where available memory or CPU processing power comes at a premium. RapidXml is dual-licensed under the MIT license and the Boost Software License, and its source code is freely available. Features * Parsing speed (including DOM tree building) approaching speed of strlen function executed on the same data. On a modern CPU (as of 2008) the parser throughput is about 1 billion characters per second. See [http://rapidxml.sourceforge.net/manual.html#namespacerapidxml_1performance Performance] section in the Online Manual. * Small memory footprint of the code and created DOM trees. * Configurable memory allocation. * A headers-only implementation, simplifying the integration process. * Simple license that allows use for almost any purpose, both commercial and non-commercial, without any obligations. * Supports UTF-8 and partially UTF-16, UTF-32 encodings. * Portable source code with no dependencies other than a very small subset of . This subset is so small that it can be easily emulated manually if use of standard library is undesired. Limitations * The parser ignores DOCTYPE declarations. * There is no support for XML namespaces. * The parser does not check for character validity. * The interface of the parser does not conform to DOM specification. * The parser does not check for attribute uniqueness. Applications * Primary XML parser for Boost.PropertyTree library * TouchFLO 3D user interface used in some of HTC mobile devices, such as HTC Touch Diamond * xrelayer * WinterMoon * Sid Meier's Civilization V * Hitman Absolution
|