1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/docs/index.html Sun Jan 18 23:04:41 2004 +0000
1.3 @@ -0,0 +1,64 @@
1.4 +<?xml version="1.0" encoding="iso-8859-1"?>
1.5 +<html xmlns="http://www.w3.org/1999/xhtml">
1.6 +<head>
1.7 + <title>XMLTools2</title>
1.8 + <meta name="generator" content="amaya 8.1a, see http://www.w3.org/Amaya/" />
1.9 + <link href="styles.css" rel="stylesheet" type="text/css" />
1.10 +</head>
1.11 +
1.12 +<body>
1.13 +<h1>libxml2dom</h1>
1.14 +
1.15 +<p>The libxml2dom package provides a traditional DOM wrapper around the
1.16 +Python bindings for libxml2. In contrast to the libxml2 bindings, libxml2dom
1.17 +provides an API reminiscent of minidom, pxdom and other Python-based and
1.18 +Python-related XML toolkits. Performance is disappointing, given the typical
1.19 +high speed of libxml2 processing, but this is to be expected since large
1.20 +numbers of Python objects are instantiated at two levels of document tree
1.21 +representation. However, serialisation of documents is much faster than many
1.22 +other toolkits because it can make direct use of libxml2.</p>
1.23 +
1.24 +<h2>Copyright and Licence</h2>
1.25 +
1.26 +<p>For reasons of consistency, libxml2dom uses the same MIT-style licence as
1.27 +libxml2. See the file <code>COPYING.txt</code> in the <code>docs</code>
1.28 +directory within the source code distribution.</p>
1.29 +
1.30 +<h2>Dependencies and Installation Issues</h2>
1.31 +
1.32 +<p>The following descriptions identify dependencies and describe appropriate
1.33 +installation issues with each dependency:</p>
1.34 +
1.35 +<h3>libxml2 2.6.0</h3>
1.36 +
1.37 +<p>Building libxml2 from source and configuring the Python bindings can be
1.38 +done as follows:</p>
1.39 +<pre>cd libxml2-2.6.0
1.40 +./configure --with-python=/usr/local/bin/python
1.41 +make</pre>
1.42 +
1.43 +<p>If you are to use an installation of Python installed outside
1.44 +<code>/usr/local</code> then specify the "prefix" accordingly. Install
1.45 +(possibly as <code>root</code>) in the usual way:</p>
1.46 +<pre>make install</pre>
1.47 +
1.48 +<h4>Issues</h4>
1.49 +
1.50 +<p>The <code>patches</code> directory in the source code distribution
1.51 +contains a patch against libxml2 2.5.7 which resolves an issue exposed by
1.52 +libxml2dom. Although it is recommended that later releases of libxml2 are
1.53 +used instead, the source code distribution of libxml2 2.5.7 can be patched as
1.54 +follows:</p>
1.55 +<pre>patch -p0 < libxml2dom/patches/libxml2/libxml.c.diff</pre>
1.56 +
1.57 +<p>The command should be run outside/above the <code>libxml2-2.5.7</code>
1.58 +directory, and the stated path should be adjusted accordingly.</p>
1.59 +
1.60 +<h3>Python 2.2</h3>
1.61 +
1.62 +<p>Python releases from 2.2 onwards should be compatible with libxml2dom. The
1.63 +principal requirement from such releases is the new-style class support which
1.64 +permits the use of properties in the libxml2dom implementation, thus
1.65 +simplifying the code somewhat.</p>
1.66 +</body>
1.67 +</html>