Libxml2 is the XML C library developed for the
Gnome project. The library code is portable (to
Linux, Unix, Windows, embedded systems, etc.) and
modular; most of the extensions can be compiled
out. Libxml2 implements a number of existing
standards related to markup languages, including
the XML standard, Namespaces in XML, XML Base,
Relax NG, RFC 2396, XPath, XPointer, HTML4,
XInclude, SGML Catalogs, and XML Catalogs. In most
cases, libxml tries to implement the
specifications in a relatively strict way. To some
extent, it provides support for the following
specifications, but doesn't claim to implement
them: DOM, FTP client, HTTP client, and SAX2.
Support for W3C XML Schemas is in progress. It
includes xmllint, a command line XML validator.