1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-07-20 16:43:05 +03:00

Added docs for 2.4.22, Daniel

This commit is contained in:
Daniel Veillard
2002-05-28 16:28:42 +00:00
parent d5e22ef580
commit c0801af9f8
9 changed files with 83 additions and 57 deletions

View File

@ -105,8 +105,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<li> <li>
<em>Can I embed libxml in a proprietary application ?</em> <em>Can I embed libxml in a proprietary application ?</em>
<p>Yes. The MIT License allows you to also keep proprietary the changes <p>Yes. The MIT License allows you to also keep proprietary the changes
you made to libxml, but it would be graceful to provide back bug fixes and you made to libxml, but it would be graceful to provide back bug fixes
improvements as patches for possible incorporation in the main and improvements as patches for possible incorporation in the main
development tree</p> development tree</p>
</li> </li>
</ol> </ol>

View File

@ -288,8 +288,8 @@ detecting such a tag on input. Except for that the processing is the same
<li>HTML, a specific handler for the conversion of UTF-8 to ASCII with HTML <li>HTML, a specific handler for the conversion of UTF-8 to ASCII with HTML
predefined entities like &amp;copy; for the Copyright sign.</li> predefined entities like &amp;copy; for the Copyright sign.</li>
</ol> </ol>
<p>More over when compiled on an Unix platform with iconv support the full set <p>More over when compiled on an Unix platform with iconv support the full
of encodings supported by iconv can be instantly be used by libxml. On a set of encodings supported by iconv can be instantly be used by libxml. On a
linux machine with glibc-2.1 the list of supported encodings and aliases fill linux machine with glibc-2.1 the list of supported encodings and aliases fill
3 full pages, and include UCS-4, the full set of ISO-Latin encodings, and the 3 full pages, and include UCS-4, the full set of ISO-Latin encodings, and the
various Japanese ones.</p> various Japanese ones.</p>

View File

@ -104,10 +104,10 @@ value in the long-term. Example:</p>
&lt;/mydoc&gt;</pre> &lt;/mydoc&gt;</pre>
<p>The namespace value has to be an absolute URL, but the URL doesn't have to <p>The namespace value has to be an absolute URL, but the URL doesn't have to
point to any existing resource on the Web. It will bind all the element and point to any existing resource on the Web. It will bind all the element and
attributes with that URL. I suggest to use an URL within a domain you control, attributes with that URL. I suggest to use an URL within a domain you
and that the URL should contain some kind of version information if possible. control, and that the URL should contain some kind of version information if
For example, <code>&quot;http://www.gnome.org/gnumeric/1.0/&quot;</code> is a good possible. For example, <code>&quot;http://www.gnome.org/gnumeric/1.0/&quot;</code> is a
namespace scheme.</p> good namespace scheme.</p>
<p>Then when you load a file, make sure that a namespace carrying the <p>Then when you load a file, make sure that a namespace carrying the
version-independent prefix is installed on the root element of your document, version-independent prefix is installed on the root element of your document,
and if the version information don't match something you know, warn the user and if the version information don't match something you know, warn the user

View File

@ -93,6 +93,17 @@ to test those</p>
<ul><li>Finishing up <a href="http://www.w3.org/TR/xmlschema-1/">XML <ul><li>Finishing up <a href="http://www.w3.org/TR/xmlschema-1/">XML
Schemas</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a> Schemas</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a>
</li></ul> </li></ul>
<h3>2.4.22: May 27 2002</h3>
<ul>
<li>a number of bug fixes: configure scripts, base handling, parser, memory
usage, HTML parser, XPath, documentation (Christian Cornelssen),
indentation, URI parsing </li>
<li>Optimizations for XMLSec, fixing and making public some of the network
protocol handlers (Aleksey)</li>
<li>performance patch from Gary Pennington</li>
<li>Charles Bozeman provided date and time support for XML Schemas
datatypes</li>
</ul>
<h3>2.4.21: Apr 29 2002</h3> <h3>2.4.21: Apr 29 2002</h3>
<p>This release is both a bug fix release and also contains the early XML <p>This release is both a bug fix release and also contains the early XML
Schemas <a href="http://www.w3.org/TR/xmlschema-1/">structures</a> and <a href="http://www.w3.org/TR/xmlschema-2/">datatypes</a> code, beware, all Schemas <a href="http://www.w3.org/TR/xmlschema-1/">structures</a> and <a href="http://www.w3.org/TR/xmlschema-2/">datatypes</a> code, beware, all
@ -573,8 +584,8 @@ it's actually not compiled in by default. The real fixes are:</p>
</ul> </ul>
<h3>2.1.0 and 1.8.8: June 29 2000</h3> <h3>2.1.0 and 1.8.8: June 29 2000</h3>
<ul> <ul>
<li>1.8.8 is mostly a commodity package for upgrading to libxml2 according to <li>1.8.8 is mostly a commodity package for upgrading to libxml2 according
<a href="upgrade.html">new instructions</a>. It fixes a nasty problem to <a href="upgrade.html">new instructions</a>. It fixes a nasty problem
about &amp;#38; charref parsing</li> about &amp;#38; charref parsing</li>
<li>2.1.0 also ease the upgrade from libxml v1 to the recent version. it <li>2.1.0 also ease the upgrade from libxml v1 to the recent version. it
also contains numerous fixes and enhancements: also contains numerous fixes and enhancements:
@ -624,8 +635,9 @@ it's actually not compiled in by default. The real fixes are:</p>
RPMs</li> RPMs</li>
<li>This version is now the head in the Gnome CVS base, the old one is <li>This version is now the head in the Gnome CVS base, the old one is
available under the tag LIB_XML_1_X</li> available under the tag LIB_XML_1_X</li>
<li>This includes a very large set of changes. From a programmatic point of <li>This includes a very large set of changes. From a programmatic point
view applications should not have to be modified too much, check the <a href="upgrade.html">upgrade page</a> of view applications should not have to be modified too much, check the
<a href="upgrade.html">upgrade page</a>
</li> </li>
<li>Some interfaces may changes (especially a bit about encoding).</li> <li>Some interfaces may changes (especially a bit about encoding).</li>
<li>the updates includes: <li>the updates includes:

View File

@ -126,8 +126,8 @@ or libxslt wrappers or bindings:</p>
</li> </li>
<li>There is support for libxml2 in the DOM module of PHP.</li> <li>There is support for libxml2 in the DOM module of PHP.</li>
</ul> </ul>
<p>The distribution includes a set of Python bindings, which are guaranteed to <p>The distribution includes a set of Python bindings, which are guaranteed
be maintained as part of the library in the future, though the Python to be maintained as part of the library in the future, though the Python
interface have not yet reached the maturity of the C API.</p> interface have not yet reached the maturity of the C API.</p>
<p>To install the Python bindings there are 2 options:</p> <p>To install the Python bindings there are 2 options:</p>
<ul> <ul>
@ -168,8 +168,7 @@ binding level share the same subset of accessors:</p>
<li> <li>
<code>name</code> : returns the node name</li> <code>name</code> : returns the node name</li>
<li> <li>
<code>type</code> : returns a string indicating the node <code>type</code> : returns a string indicating the node type</li>
type</li>
<li> <li>
<code>content</code> : returns the content of the node, it is based on <code>content</code> : returns the content of the node, it is based on
xmlNodeGetContent() and hence is recursive.</li> xmlNodeGetContent() and hence is recursive.</li>

View File

@ -178,15 +178,16 @@ following:</p>
<li>find all occurrences where the xmlDoc <strong>root</strong> field is <li>find all occurrences where the xmlDoc <strong>root</strong> field is
used and change it to <strong>xmlRootNode</strong> used and change it to <strong>xmlRootNode</strong>
</li> </li>
<li>similarly find all occurrences where the xmlNode <strong>childs</strong> <li>similarly find all occurrences where the xmlNode
field is used and change it to <strong>xmlChildrenNode</strong> <strong>childs</strong> field is used and change it to
<strong>xmlChildrenNode</strong>
</li> </li>
<li>add a <strong>LIBXML_TEST_VERSION</strong> macro somewhere in your <li>add a <strong>LIBXML_TEST_VERSION</strong> macro somewhere in your
<strong>main()</strong> or in the library init entry point</li> <strong>main()</strong> or in the library init entry point</li>
<li>Recompile, check compatibility, it should still work</li> <li>Recompile, check compatibility, it should still work</li>
<li>Change your configure script to look first for xml2-config and fall back <li>Change your configure script to look first for xml2-config and fall
using xml-config . Use the --cflags and --libs output of the command as back using xml-config . Use the --cflags and --libs output of the command
the Include and Linking parameters needed to use libxml.</li> as the Include and Linking parameters needed to use libxml.</li>
<li>install libxml2-2.3.x and libxml2-devel-2.3.x (libxml-1.8.y and <li>install libxml2-2.3.x and libxml2-devel-2.3.x (libxml-1.8.y and
libxml-devel-1.8.y can be kept simultaneously)</li> libxml-devel-1.8.y can be kept simultaneously)</li>
<li>remove your config.cache, relaunch your configuration mechanism, and <li>remove your config.cache, relaunch your configuration mechanism, and

View File

@ -160,8 +160,8 @@ libxml2</p>
</li> </li>
<li><em>Can I embed libxml in a proprietary application ?</em> <li><em>Can I embed libxml in a proprietary application ?</em>
<p>Yes. The MIT License allows you to also keep proprietary the changes <p>Yes. The MIT License allows you to also keep proprietary the changes
you made to libxml, but it would be graceful to provide back bug fixes and you made to libxml, but it would be graceful to provide back bug fixes
improvements as patches for possible incorporation in the main and improvements as patches for possible incorporation in the main
development tree</p> development tree</p>
</li> </li>
</ol> </ol>
@ -570,6 +570,18 @@ to test those</p>
Schemas</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a></li> Schemas</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a></li>
</ul> </ul>
<h3>2.4.22: May 27 2002</h3>
<ul>
<li>a number of bug fixes: configure scripts, base handling, parser, memory
usage, HTML parser, XPath, documentation (Christian Cornelssen),
indentation, URI parsing </li>
<li>Optimizations for XMLSec, fixing and making public some of the network
protocol handlers (Aleksey)</li>
<li>performance patch from Gary Pennington</li>
<li>Charles Bozeman provided date and time support for XML Schemas
datatypes</li>
</ul>
<h3>2.4.21: Apr 29 2002</h3> <h3>2.4.21: Apr 29 2002</h3>
<p>This release is both a bug fix release and also contains the early XML <p>This release is both a bug fix release and also contains the early XML
@ -1116,8 +1128,8 @@ it's actually not compiled in by default. The real fixes are:</p>
<h3>2.1.0 and 1.8.8: June 29 2000</h3> <h3>2.1.0 and 1.8.8: June 29 2000</h3>
<ul> <ul>
<li>1.8.8 is mostly a commodity package for upgrading to libxml2 according to <li>1.8.8 is mostly a commodity package for upgrading to libxml2 according
<a href="upgrade.html">new instructions</a>. It fixes a nasty problem to <a href="upgrade.html">new instructions</a>. It fixes a nasty problem
about &amp;#38; charref parsing</li> about &amp;#38; charref parsing</li>
<li>2.1.0 also ease the upgrade from libxml v1 to the recent version. it <li>2.1.0 also ease the upgrade from libxml v1 to the recent version. it
also contains numerous fixes and enhancements: also contains numerous fixes and enhancements:
@ -1169,9 +1181,9 @@ it's actually not compiled in by default. The real fixes are:</p>
RPMs</li> RPMs</li>
<li>This version is now the head in the Gnome CVS base, the old one is <li>This version is now the head in the Gnome CVS base, the old one is
available under the tag LIB_XML_1_X</li> available under the tag LIB_XML_1_X</li>
<li>This includes a very large set of changes. From a programmatic point of <li>This includes a very large set of changes. From a programmatic point
view applications should not have to be modified too much, check the <a of view applications should not have to be modified too much, check the
href="upgrade.html">upgrade page</a></li> <a href="upgrade.html">upgrade page</a></li>
<li>Some interfaces may changes (especially a bit about encoding).</li> <li>Some interfaces may changes (especially a bit about encoding).</li>
<li>the updates includes: <li>the updates includes:
<ul> <ul>
@ -1421,8 +1433,8 @@ or libxslt wrappers or bindings:</p>
<li>There is support for libxml2 in the DOM module of PHP.</li> <li>There is support for libxml2 in the DOM module of PHP.</li>
</ul> </ul>
<p>The distribution includes a set of Python bindings, which are guaranteed to <p>The distribution includes a set of Python bindings, which are guaranteed
be maintained as part of the library in the future, though the Python to be maintained as part of the library in the future, though the Python
interface have not yet reached the maturity of the C API.</p> interface have not yet reached the maturity of the C API.</p>
<p>To install the Python bindings there are 2 options:</p> <p>To install the Python bindings there are 2 options:</p>
@ -1468,8 +1480,7 @@ prefix is removed and the casing convention are kept). All node seen at the
binding level share the same subset of accessors:</p> binding level share the same subset of accessors:</p>
<ul> <ul>
<li><code>name</code> : returns the node name</li> <li><code>name</code> : returns the node name</li>
<li><code>type</code> : returns a string indicating the node <li><code>type</code> : returns a string indicating the node type</li>
type</li>
<li><code>content</code> : returns the content of the node, it is based on <li><code>content</code> : returns the content of the node, it is based on
xmlNodeGetContent() and hence is recursive.</li> xmlNodeGetContent() and hence is recursive.</li>
<li><code>parent</code> , <code>children</code>, <code>last</code>, <li><code>parent</code> , <code>children</code>, <code>last</code>,
@ -1857,8 +1868,8 @@ interface.</p>
<p>DTD is the acronym for Document Type Definition. This is a description of <p>DTD is the acronym for Document Type Definition. This is a description of
the content for a family of XML files. This is part of the XML 1.0 the content for a family of XML files. This is part of the XML 1.0
specification, and allows to describe and check that a given document instance specification, and allows to describe and check that a given document
conforms to a set of rules detailing its structure and content.</p> instance conforms to a set of rules detailing its structure and content.</p>
<p>Validation is the process of checking a document against a DTD (more <p>Validation is the process of checking a document against a DTD (more
generally against a set of construction rules).</p> generally against a set of construction rules).</p>
@ -1925,9 +1936,9 @@ is placed in the file <code>mydtd</code> in the subdirectory
<p><code>&lt;!ELEMENT spec (front, body, back?)&gt;</code></p> <p><code>&lt;!ELEMENT spec (front, body, back?)&gt;</code></p>
<p>it also expresses that the spec element contains one <code>front</code>, <p>it also expresses that the spec element contains one <code>front</code>,
one <code>body</code> and one optional <code>back</code> children elements one <code>body</code> and one optional <code>back</code> children elements in
in this order. The declaration of one element of the structure and its this order. The declaration of one element of the structure and its content
content are done in a single declaration. Similarly the following declares are done in a single declaration. Similarly the following declares
<code>div1</code> elements:</p> <code>div1</code> elements:</p>
<p><code>&lt;!ELEMENT div1 (head, (p | list | note)*, div2?)&gt;</code></p> <p><code>&lt;!ELEMENT div1 (head, (p | list | note)*, div2?)&gt;</code></p>
@ -2397,8 +2408,8 @@ detecting such a tag on input. Except for that the processing is the same
predefined entities like &amp;copy; for the Copyright sign.</li> predefined entities like &amp;copy; for the Copyright sign.</li>
</ol> </ol>
<p>More over when compiled on an Unix platform with iconv support the full set <p>More over when compiled on an Unix platform with iconv support the full
of encodings supported by iconv can be instantly be used by libxml. On a set of encodings supported by iconv can be instantly be used by libxml. On a
linux machine with glibc-2.1 the list of supported encodings and aliases fill linux machine with glibc-2.1 the list of supported encodings and aliases fill
3 full pages, and include UCS-4, the full set of ISO-Latin encodings, and the 3 full pages, and include UCS-4, the full set of ISO-Latin encodings, and the
various Japanese ones.</p> various Japanese ones.</p>
@ -2583,8 +2594,8 @@ and this was a problem. The <a
href="http://xmlsoft.org/messages/0711.html">solution</a> was to redefine a href="http://xmlsoft.org/messages/0711.html">solution</a> was to redefine a
new output handler with the closing call deactivated:</p> new output handler with the closing call deactivated:</p>
<ol> <ol>
<li>First define a new I/O output allocator where the output don't close the <li>First define a new I/O output allocator where the output don't close
file: the file:
<pre>xmlOutputBufferPtr <pre>xmlOutputBufferPtr
xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) { xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) {
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>xmlOutputBufferPtr ret; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>xmlOutputBufferPtr ret;
@ -2612,6 +2623,7 @@ xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) {
} </pre> } </pre>
</li> </li>
<li>And then use it to save the document: <li>And then use it to save the document:
@ -3338,10 +3350,10 @@ value in the long-term. Example:</p>
<p>The namespace value has to be an absolute URL, but the URL doesn't have to <p>The namespace value has to be an absolute URL, but the URL doesn't have to
point to any existing resource on the Web. It will bind all the element and point to any existing resource on the Web. It will bind all the element and
attributes with that URL. I suggest to use an URL within a domain you control, attributes with that URL. I suggest to use an URL within a domain you
and that the URL should contain some kind of version information if possible. control, and that the URL should contain some kind of version information if
For example, <code>"http://www.gnome.org/gnumeric/1.0/"</code> is a good possible. For example, <code>"http://www.gnome.org/gnumeric/1.0/"</code> is a
namespace scheme.</p> good namespace scheme.</p>
<p>Then when you load a file, make sure that a namespace carrying the <p>Then when you load a file, make sure that a namespace carrying the
version-independent prefix is installed on the root element of your document, version-independent prefix is installed on the root element of your document,
@ -3466,14 +3478,15 @@ following:</p>
<li>install the libxml-1.8.8 (and libxml-devel-1.8.8) packages</li> <li>install the libxml-1.8.8 (and libxml-devel-1.8.8) packages</li>
<li>find all occurrences where the xmlDoc <strong>root</strong> field is <li>find all occurrences where the xmlDoc <strong>root</strong> field is
used and change it to <strong>xmlRootNode</strong></li> used and change it to <strong>xmlRootNode</strong></li>
<li>similarly find all occurrences where the xmlNode <strong>childs</strong> <li>similarly find all occurrences where the xmlNode
field is used and change it to <strong>xmlChildrenNode</strong></li> <strong>childs</strong> field is used and change it to
<strong>xmlChildrenNode</strong></li>
<li>add a <strong>LIBXML_TEST_VERSION</strong> macro somewhere in your <li>add a <strong>LIBXML_TEST_VERSION</strong> macro somewhere in your
<strong>main()</strong> or in the library init entry point</li> <strong>main()</strong> or in the library init entry point</li>
<li>Recompile, check compatibility, it should still work</li> <li>Recompile, check compatibility, it should still work</li>
<li>Change your configure script to look first for xml2-config and fall back <li>Change your configure script to look first for xml2-config and fall
using xml-config . Use the --cflags and --libs output of the command as back using xml-config . Use the --cflags and --libs output of the command
the Include and Linking parameters needed to use libxml.</li> as the Include and Linking parameters needed to use libxml.</li>
<li>install libxml2-2.3.x and libxml2-devel-2.3.x (libxml-1.8.y and <li>install libxml2-2.3.x and libxml2-devel-2.3.x (libxml-1.8.y and
libxml-devel-1.8.y can be kept simultaneously)</li> libxml-devel-1.8.y can be kept simultaneously)</li>
<li>remove your config.cache, relaunch your configuration mechanism, and <li>remove your config.cache, relaunch your configuration mechanism, and

View File

@ -105,8 +105,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<p>Well what is validation and what is a DTD ?</p> <p>Well what is validation and what is a DTD ?</p>
<p>DTD is the acronym for Document Type Definition. This is a description of <p>DTD is the acronym for Document Type Definition. This is a description of
the content for a family of XML files. This is part of the XML 1.0 the content for a family of XML files. This is part of the XML 1.0
specification, and allows to describe and check that a given document instance specification, and allows to describe and check that a given document
conforms to a set of rules detailing its structure and content.</p> instance conforms to a set of rules detailing its structure and content.</p>
<p>Validation is the process of checking a document against a DTD (more <p>Validation is the process of checking a document against a DTD (more
generally against a set of construction rules).</p> generally against a set of construction rules).</p>
<p>The validation process and building DTDs are the two most difficult parts <p>The validation process and building DTDs are the two most difficult parts
@ -158,9 +158,9 @@ is placed in the file <code>mydtd</code> in the subdirectory
<p>The following declares an element <code>spec</code>:</p> <p>The following declares an element <code>spec</code>:</p>
<p><code>&lt;!ELEMENT spec (front, body, back?)&gt;</code></p> <p><code>&lt;!ELEMENT spec (front, body, back?)&gt;</code></p>
<p>it also expresses that the spec element contains one <code>front</code>, <p>it also expresses that the spec element contains one <code>front</code>,
one <code>body</code> and one optional <code>back</code> children elements one <code>body</code> and one optional <code>back</code> children elements in
in this order. The declaration of one element of the structure and its this order. The declaration of one element of the structure and its content
content are done in a single declaration. Similarly the following declares are done in a single declaration. Similarly the following declares
<code>div1</code> elements:</p> <code>div1</code> elements:</p>
<p><code>&lt;!ELEMENT div1 (head, (p | list | note)*, div2?)&gt;</code></p> <p><code>&lt;!ELEMENT div1 (head, (p | list | note)*, div2?)&gt;</code></p>
<p>means div1 contains one <code>head</code> then a series of optional <p>means div1 contains one <code>head</code> then a series of optional

View File

@ -205,8 +205,8 @@ real use case</a>, xmlDocDump() closes the FILE * passed by the application
and this was a problem. The <a href="http://xmlsoft.org/messages/0711.html">solution</a> was to redefine a and this was a problem. The <a href="http://xmlsoft.org/messages/0711.html">solution</a> was to redefine a
new output handler with the closing call deactivated:</p> new output handler with the closing call deactivated:</p>
<ol> <ol>
<li>First define a new I/O output allocator where the output don't close the <li>First define a new I/O output allocator where the output don't close
file: the file:
<pre>xmlOutputBufferPtr <pre>xmlOutputBufferPtr
xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) { xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) {
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>xmlOutputBufferPtr ret; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>xmlOutputBufferPtr ret;
@ -234,6 +234,7 @@ xmlOutputBufferCreateOwn(FILE *file, xmlCharEncodingHandlerPtr encoder) {
} </pre> } </pre>
</li> </li>
<li>And then use it to save the document: <li>And then use it to save the document: