Libxml++

  •        4277

libxml++ is a C++ API for the popular libxml XML parser, written in C. libxml is famous for its high performance and compliance to standard specifications, but its C API is quite difficult even for common tasks.

libxml++ presents a simple C++-like API that can achieve common tasks with less code. Unlike some other C++ parsers, it does not try to avoid the advantages of standard C++ features such as namespaces, STL containers or runtime type identification, and it does not try to conform to standard API specifications meant for Java. Therefore libxml++ requires a fairly modern C++ compiler such as g++ 3.

But libxml++ was created mainly to fill the need for an API-stable C++ XML parser which could be used as a shared library dependency by C++ applications that are distributed widely in binary form. That means that installed applications will not break when new versions of libxml++ are installed on a user's computer. Gradual improvement of the libxml++ API is still possible via non-breaking API additions, and new independent versions of the API that can be installed in parallel with older versions. These are the general techniques and principles followed by the GNOME project, of which libxml++ is a part.

http://libxmlplusplus.sourceforge.net/

Tags
Implementation
License
Platform

   




Related Projects

Arbica


Arabica is an XML and HTML processing toolkit, providing SAX, DOM, XPath, and partial XSLT implementations, written in Standard C++.

libxml-Perl


Perl interface to Gnome libxml2 xml parsing and DOM library.

Libxml


Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform), it is free software available under the MIT License.

Nokogiri - HTML, XML, SAX, and Reader parser with XPath and CSS selector support


Nokogiri (?) is an HTML, XML, SAX, DOM parser. Among Nokogiri's many features is the ability to search documents via XPath or CSS3 selectors, XML/HTML builder, XSLT transformer. Nokogiri parses and searches XML/HTML using native libraries (either C or Java, depending on your Ruby), which means it's fast and standards-compliant.

lxml-python


lxml is a Pythonic binding for the libxml2 and libxslt libraries.



Xerces-C++


Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability to read and write XML data.

TclXML


The TclXML project is a collection of tools and libraries for handling XML documents with the Tcl scripting language.

Apache Xerces for Java XML Parser


Xerces-J is a validating XML parser written in Java.

XML Benchmark


C/C++/Java XML parsers benchmarking toolset. Supported parsers: LibXML2, Xerces, Oracle XDK, Expat, RXP, QT, Sun Crismon. Benchmark Fields: Parsing (Native,SAX,DOM), DOM Manipulation, Schema Validation, XSL Transformation, XML Signature amp; Encryption.

node-o3-xml - NodeJS library for W3C-DOM XML api with XPath and namespaces. It is based on LibXML2


NodeJS library for W3C-DOM XML api with XPath and namespaces. It is based on LibXML2

luaexpat - LuaExpat is a SAX (Simple API for XML) XML parser based on the Expat library


LuaExpat is a SAX (Simple API for XML) XML parser based on the Expat library

node-xml2jsonml - A library for node to convert XML to JsonML. Uses node-xml SAX parser.


A library for node to convert XML to JsonML. Uses node-xml SAX parser.

perl-XML-SAX-ExpatNB - XML::SAX::ExpatNB - non-blocking filehandle oriented XML::SAX parser


XML::SAX::ExpatNB - non-blocking filehandle oriented XML::SAX parser

Piccolo


Piccolo is a small, extremely fast XML parser for Java. It implements the SAX 1, SAX 2.0.1, and JAXP 1.1 (SAX parsing only) interfaces as a non-validating parser and attempts to detect all XML well-formedness errors. Piccolo was developed by Yuval Oren.

NQXML


NQXML is a pure Ruby implementation of a non-validating XML processor. It includes an XML tokenizer, a SAX-style streaming XML parser, a DOM-style tree parser, an XML writer, and a context-sensitive callback mechanism.

SAXExpat


This is a SAX for .NET parser implementation based on the popular Expat XML parser.

TagSoup - SAX-compliant parser in Java


TagSoup, a SAX-compliant parser written in Java that, instead of parsing well-formed or valid XML, parses HTML as it is found in the wild: poor, nasty and brutish, though quite often far from short. TagSoup is designed for people who have to process this stuff using some semblance of a rational application design. TagSoup also includes a command-line processor that reads HTML files and can generate either clean HTML or well-formed XML that is a close approximation to XHTML.

perl-XML-SAX-Expat - XML::SAX::Expat - SAX2 driver for Expat (XML::Parser)


XML::SAX::Expat - SAX2 driver for Expat (XML::Parser)

Smart-XML-Parser - This is a smart C++ library to parse XML files using libxml2


This is a smart C++ library to parse XML files using libxml2