# The XML C parser and toolkit of Gnome ## Introduction

Main Menu
Home Reference Manual Introduction FAQ Developer Menu Reporting bugs and getting help How to help Downloads Releases XML XSLT Validation & DTDs Encodings support Catalog support Namespaces Contributions Code Examples API Menu XML Guidelines Recent Changes
Related links
Mail archive XSLT libxslt DOM gdome2 XML-DSig xmlsec FTP Windows binaries Solaris binaries MacOsX binaries lxml Python bindings Perl bindings C++ bindings PHP bindings Pascal bindings Ruby bindings Tcl bindings Bug Tracker
This document describes libxml, the XML C parser and toolkit developed for the Gnome project. XML is a standard for building tag-based structured documents/data. Here are some key points about libxml: Libxml2 exports Push (progressive) and Pull (blocking) type parser interfaces for both XML and HTML. Libxml2 can do DTD validation at parse time, using a parsed document instance, or with an arbitrary DTD. Libxml2 includes complete XPath, XPointer and XInclude implementations. It is written in plain C, making as few assumptions as possible, and sticking closely to ANSI C/POSIX for easy embedding. Works on Linux/Unix/Windows, ported to a number of other platforms. Basic support for HTTP and FTP client allowing applications to fetch remote resources. The design is modular, most of the extensions can be compiled out. The internal document representation is as close as possible to the DOM interfaces. Libxml2 also has a SAX like interface; the interface is designed to be compatible with Expat. This library is released under the MIT License. See the Copyright file in the distribution for the precise wording. Warning: unless you are forced to because your application links with a Gnome-1.X library requiring it, Do Not Use libxml1, use libxml2 Daniel Veillard