"Programming
with libxml2 is like the thrilling embrace of an exotic stranger." Mark
Pilgrim
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. XML itself is a metalanguage to design markup languages, i.e.
text language where semantic and structure are added to the content using
extra "markup" information enclosed between angle brackets. HTML is the most
well-known markup language. Though the library is written in C a variety of language bindings make it available in
other environments.
Libxml2 is known to be very portable, the library should build and work
without serious troubles on a variety of systems (Linux, Unix, Windows,
CygWin, MacOS, MacOS X, RISC Os, OS/2, VMS, QNX, MVS, VxWorks, ...)
Libxml2 implements a number of existing standards related to markup
languages:
In most cases libxml2 tries to implement the specifications in a
relatively strictly compliant way. As of release 2.4.16, libxml2 passed all
1800+ tests from the OASIS XML Tests
Suite.
To some extent libxml2 provides support for the following additional
specifications but doesn't claim to implement them completely:
- Document Object Model (DOM) http://www.w3.org/TR/DOM-Level-2-Core/
the document model, but it doesn't implement the API itself, gdome2 does
this on top of libxml2
- RFC 959 :
libxml2 implements a basic FTP client code
- RFC 1945 :
HTTP/1.0, again a basic HTTP client code
- SAX: a SAX2 like interface and a minimal SAX1 implementation compatible
with early expat versions
A partial implementation of XML Schemas Part
1: Structure is being worked on but it would be far too early to make any
conformance statement about it at the moment.
Separate documents:
Hosting sponsored by Open Source CMS services from AOE media.
Logo designed by Marc Liyanage.
Daniel Veillard
|