Gnome LogoW3C LogoRed Hat Logo

The XML C library for Gnome

libxml

Main Menu
API Indexes
Related links

Libxml is the XML C library developed for the Gnome project. 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 implements a number of existing standards related to markup languages:

In most cases libxml tries to implement the specifications in a relatively strictly compliant way. As of release 2.4.16, libxml2 passes 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/ it doesn't implement the API itself, gdome2 does this on top of libxml2
  • RFC 959 : libxml implements a basic FTP client code
  • RFC 1945 : HTTP/1.0, again a basic HTTP client code
  • SAX: a minimal SAX implementation compatible with early expat versions
  • DocBook SGML v4: libxml2 includes a hackish parser to transition to XML

XML Schemas is being worked on but it would be far too early to make any conformance statement about it at the moment.

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, ...)

Separate documents:

Daniel Veillard