libxml++ is a C++ wrapper for the libxml2 XML parser
library. It has SAX and DOM-like APIs, but does not attempt to
conform exactly to the DOM specification. Its API is simpler than
the underlying libxml2 C API. Home page: http://libxmlplusplus.sourceforge.net/ Download: https://download.gnome.org/sources/libxml++/ Documentation: https://developer.gnome.org/libxml++/unstable/ *** Changes 2.91.1 (unstable): * Renamed ABI from libxml++-2.6 to libxml++-3.0. This requires applications to change their pkg-config check to libxml++-3.0 when they wish to use libxml++ 2.9x or 3.x instead of libxml++ 2.x. (Kjell Ahlstedt) Bug #754673. There may be more changes in ABI and/or API before the first stable libxml++-3.0 release. * Node: Add const_NodeList and use it in a const version of get_children(). Add const_NodeSet and use it in a const version of find(). Replace xmlpp::NodeSet by xmlpp::Node::NodeSet. Element: Add const_Attribute_list and use it in a const version of get_attributes(). (Kjell Ahlstedt) Bug #338907 (Marcos Mayorga) * Document: Add a non-const version of get_root_node(). Let the const version return a const pointer. (Knut Aksel Røysland) Bug #632522 * Element: Add a non-const version of get_attribute(). Let the const version return a const pointer. (Knut Aksel Røysland) Bug #632524 * Replace the deprecated std::auto_ptr by std::unique_ptr (Kjell Ahlstedt) Bug #753123 * DomParser: The default behaviour is to throw both parse errors and validity errors in an exception instead of printing some messages on stderr. * Parser: Some protected data has become private. * Several classes: Some virtual methods have become non-virtual, and some non-virtual methods have become virtual. * Remove class xmlpp::wrapped_exception and the deprecated classes Schema and SchemaValidator. * xmlpp::exception and its subclasses: Remove Raise() and Clone(). * SaxParser: Start each parsing with a new Document for entity resolution. * Move all Node::add_child*() methods to Element and rename them to add_child_element*(). * Attribute: Move set_value() to AttributeNode. * Use std::string instead of Glib::ustring for filenames. * Node: Replace remove_child() by remove_node(). * Move some code from DtdValidator to Dtd. * Element: Rename set/get_child_text() to set/get_first_child_text(). Kjell Ahlstedt kjell ahlstedt bredband net |