mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-03-23 02:50:08 +03:00
Changed all references to libxml2 CVS over to the corresponding SVN. A few
* doc/xml.html: Changed all references to libxml2 CVS over to the corresponding SVN. A few other spelling/grammar/links also changed. * doc/libxml2-api.xml, doc/*.html: Regenerated all docs. svn path=/trunk/; revision=3585
This commit is contained in:
parent
0bcec06d4c
commit
43a872906a
@ -1,3 +1,10 @@
|
||||
Thu Feb 15 12:43:28 PST 2007 William Brack <wbrack#mmm.com.hk>
|
||||
|
||||
* doc/xml.html: Changed all references to libxml2 CVS over to
|
||||
the corresponding SVN. A few other spelling/grammar/links
|
||||
also changed.
|
||||
* doc/libxml2-api.xml, doc/*.html: Regenerated all docs.
|
||||
|
||||
Tue Feb 13 18:15:58 PST 2007 William Brack <wbrack@mmm.com.hk>
|
||||
|
||||
* xpath.c: Fixed memory bug with invalid function reported by
|
||||
|
@ -44,6 +44,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
</dd><dt>day:minute</dt><dd><a href="html/libxml-nanoftp.html#ftpListCallback">ftpListCallback</a><br />
|
||||
</dd><dt>de-coupled</dt><dd><a href="html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd</a><br />
|
||||
</dd><dt>deactivated</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidate">xmlTextReaderSchemaValidate</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
||||
@ -251,10 +252,8 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
<a href="html/libxml-xmlregexp.html#xmlExpExpDerive">xmlExpExpDerive</a><br />
|
||||
<a href="html/libxml-xmlregexp.html#xmlExpStringDerive">xmlExpStringDerive</a><br />
|
||||
</dd><dt>des</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
||||
</dd><dt>desactivated</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a><br />
|
||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
||||
</dd><dt>descend</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
|
||||
</dd><dt>descendant</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathNextDescendant">xmlXPathNextDescendant</a><br />
|
||||
|
@ -12,6 +12,6 @@ Object Model</em>; this is an API for accessing XML or HTML structured
|
||||
documents. Native support for DOM in Gnome is on the way (module gnome-dom),
|
||||
and will be based on gnome-xml. This will be a far cleaner interface to
|
||||
manipulate XML files within Gnome since it won't expose the internal
|
||||
structure.</p><p>The current DOM implementation on top of libxml2 is the <a href="http://cvs.gnome.org/lxr/source/gdome2/">gdome2 Gnome module</a>, this
|
||||
is a full DOM interface, thanks to Paolo Casarini, check the <a href="http://www.cs.unibo.it/~casarini/gdome2/">Gdome2 homepage</a> for more
|
||||
informations.</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
structure.</p><p>The current DOM implementation on top of libxml2 is the <a href="http:///svn.gnome.org/viewcvs/gdome2/trunk/">gdome2 Gnome module</a>, this
|
||||
is a full DOM interface, thanks to Paolo Casarini, check the <a href="http://gdome2.cs.unibo.it/">Gdome2 homepage</a> for more
|
||||
information.</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
|
26
doc/FAQ.html
26
doc/FAQ.html
@ -24,12 +24,14 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
</li>
|
||||
</ol><h3><a name="Installati" id="Installati">Installation</a></h3><ol><li><strong><span style="background-color: #FF0000">Do Not Use
|
||||
libxml1</span></strong>, use libxml2</li>
|
||||
<p></p>
|
||||
<li><em>Where can I get libxml</em> ?
|
||||
<p>The original distribution comes from <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> or <a href="ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/">gnome.org</a></p>
|
||||
<p>Most Linux and BSD distributions include libxml, this is probably the
|
||||
safer way for end-users to use libxml.</p>
|
||||
<p>David Doolin provides precompiled Windows versions at <a href="http://www.ce.berkeley.edu/~doolin/code/libxmlwin32/ ">http://www.ce.berkeley.edu/~doolin/code/libxmlwin32/</a></p>
|
||||
</li>
|
||||
<p></p>
|
||||
<li><em>I see libxml and libxml2 releases, which one should I install ?</em>
|
||||
<ul><li>If you are not constrained by backward compatibility issues with
|
||||
existing applications, install libxml2 only</li>
|
||||
@ -86,6 +88,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
of the official UNIX</a> specification. Here is one <a href="http://www.gnu.org/software/libiconv/">implementation of the
|
||||
library</a> which source can be found <a href="ftp://ftp.ilog.fr/pub/Users/haible/gnu/">here</a>.</li>
|
||||
</ul></li>
|
||||
<p></p>
|
||||
<li><em>Make check fails on some platforms</em>
|
||||
<p>Sometimes the regression tests' results don't completely match the
|
||||
value produced by the parser, and the makefile uses diff to print the
|
||||
@ -94,7 +97,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
<p>Sometimes (especially on Solaris) make checks fail due to limitations
|
||||
in make. Try using GNU-make instead.</p>
|
||||
</li>
|
||||
<li><em>I use the CVS version and there is no configure script</em>
|
||||
<li><em>I use the SVN version and there is no configure script</em>
|
||||
<p>The configure script (and other Makefiles) are generated. Use the
|
||||
autogen.sh script to regenerate the configure script and Makefiles,
|
||||
like:</p>
|
||||
@ -173,8 +176,9 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
()</a> and <a href="http://xmlsoft.org/html/libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile
|
||||
()</a></li>
|
||||
</ol></li>
|
||||
<li>Extra nodes in the document:
|
||||
<p><em>For a XML file as below:</em></p>
|
||||
<p></p>
|
||||
<li><em>Extra nodes in the document:</em>
|
||||
<p><em>For an XML file as below:</em></p>
|
||||
<pre><?xml version="1.0"?>
|
||||
<PLAN xmlns="http://www.argus.ca/autotest/1.0/">
|
||||
<NODE CommFlag="0"/>
|
||||
@ -232,19 +236,23 @@ pnode=pxmlDoc->children->children;</pre>
|
||||
<li>have a look at <a href="examples/index.html">the set of
|
||||
examples</a>.</li>
|
||||
<li>look for examples of use for libxml2 function using the Gnome code.
|
||||
<!--
|
||||
For example the following will query the full Gnome CVS base for the
|
||||
use of the <strong>xmlAddChild()</strong> function:
|
||||
<p><a href="http://cvs.gnome.org/lxr/search?string=xmlAddChild">http://cvs.gnome.org/lxr/search?string=xmlAddChild</a></p>
|
||||
<p><a
|
||||
href="http://cvs.gnome.org/lxr/search?string=xmlAddChild">http://cvs.gnome.org/lxr/search?string=xmlAddChild</a></p>
|
||||
<p>This may be slow, a large hardware donation to the gnome project
|
||||
could cure this :-)</p>
|
||||
-->
|
||||
</li>
|
||||
<li><a href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&dir=gnome-xml">Browse
|
||||
<li><a href="http://svn.gnome.org/viewcvs/libxml2/trunk/">Browse
|
||||
the libxml2 source</a> , I try to write code as clean and documented
|
||||
as possible, so looking at it may be helpful. In particular the code
|
||||
of xmllint.c and of the various testXXX.c test programs should
|
||||
of <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/xmllint.c?view=markup">xmllint.c</a> and of the various testXXX.c test programs should
|
||||
provide good examples of how to do things with the library.</li>
|
||||
</ul></li>
|
||||
<li>What about C++ ?
|
||||
<p></p>
|
||||
<li><em>What about C++ ?</em>
|
||||
<p>libxml2 is written in pure C in order to allow easy reuse on a number
|
||||
of platforms, including embedded systems. I don't intend to convert to
|
||||
C++.</p>
|
||||
@ -260,7 +268,7 @@ pnode=pxmlDoc->children->children;</pre>
|
||||
</li>
|
||||
-->
|
||||
</ul></li>
|
||||
<li>How to validate a document a posteriori ?
|
||||
<li><em>How to validate a document a posteriori ?</em>
|
||||
<p>It is possible to validate documents which had not been validated at
|
||||
initial parsing time or documents which have been built from scratch
|
||||
using the API. Use the <a href="http://xmlsoft.org/html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd()</a>
|
||||
@ -276,7 +284,7 @@ xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
||||
else xmlAddPrevSibling(doc->children, (xmlNodePtr)dtd);
|
||||
</pre>
|
||||
</li>
|
||||
<li>So what is this funky "xmlChar" used all the time?
|
||||
<li><em>So what is this funky "xmlChar" used all the time?</em>
|
||||
<p>It is a null terminated sequence of utf-8 characters. And only utf-8!
|
||||
You need to convert strings encoded in different ways to utf-8 before
|
||||
passing them to the API. This can be accomplished with the iconv library
|
||||
|
@ -10,4 +10,4 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
</style><title>XSLT</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XML C parser and toolkit of Gnome</h1><h2>XSLT</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Main Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a href="index.html">Home</a></li><li><a href="html/index.html">Reference Manual</a></li><li><a href="intro.html">Introduction</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="docs.html" style="font-weight:bold">Developer Menu</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="news.html">Releases</a></li><li><a href="XMLinfo.html">XML</a></li><li><a href="XSLT.html">XSLT</a></li><li><a href="xmldtd.html">Validation & DTDs</a></li><li><a href="encoding.html">Encodings support</a></li><li><a href="catalog.html">Catalog support</a></li><li><a href="namespaces.html">Namespaces</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li><li><a href="html/index.html" style="font-weight:bold">API Menu</a></li><li><a href="guidelines.html">XML Guidelines</a></li><li><a href="ChangeLog.html">Recent Changes</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://www.blastwave.org/packages.php/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><p>Check <a href="http://xmlsoft.org/XSLT">the separate libxslt page</a></p><p><a href="http://www.w3.org/TR/xslt">XSL Transformations</a>, is a
|
||||
language for transforming XML documents into other XML documents (or
|
||||
HTML/textual output).</p><p>A separate library called libxslt is available implementing XSLT-1.0 for
|
||||
libxml2. This module "libxslt" too can be found in the Gnome CVS base.</p><p>You can check the progresses on the libxslt <a href="http://xmlsoft.org/XSLT/ChangeLog.html">Changelog</a>.</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
libxml2. This module "libxslt" too can be found in the Gnome SVN base.</p><p>You can check the progresses on the libxslt <a href="http://xmlsoft.org/XSLT/ChangeLog.html">Changelog</a>.</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
|
@ -14,7 +14,7 @@ bug tracking database</a> (make sure to use the "libxml2" module name). I
|
||||
look at reports there regularly and it's good to have a reminder when a bug
|
||||
is still open. Be sure to specify that the bug is for the package libxml2.</p><p>For small problems you can try to get help on IRC, the #xml channel on
|
||||
irc.gnome.org (port 6667) usually have a few person subscribed which may help
|
||||
(but there is no garantee and if a real issue is raised it should go on the
|
||||
(but there is no guarantee and if a real issue is raised it should go on the
|
||||
mailing-list for archival).</p><p>There is also a mailing-list <a href="mailto:xml@gnome.org">xml@gnome.org</a> for libxml, with an <a href="http://mail.gnome.org/archives/xml/">on-line archive</a> (<a href="http://xmlsoft.org/messages">old</a>). To subscribe to this list,
|
||||
please visit the <a href="http://mail.gnome.org/mailman/listinfo/xml">associated Web</a> page and
|
||||
follow the instructions. <strong>Do not send code, I won't debug it</strong>
|
||||
@ -24,13 +24,13 @@ bounces* (in the order of a thousand a day !) I cannot approve them manually
|
||||
anymore. If your mail to the list bounced waiting for administrator approval,
|
||||
it is LOST ! Repost it and fix the problem triggering the error. Also please
|
||||
note that <span style="color: #FF0000; background-color: #FFFFFF">emails with
|
||||
a legal warning asking to not copy or redistribute freely the informations
|
||||
a legal warning asking to not copy or redistribute freely the information
|
||||
they contain</span> are <strong>NOT</strong> acceptable for the mailing-list,
|
||||
such mail will as much as possible be discarded automatically, and are less
|
||||
likely to be answered if they made it to the list, <strong>DO NOT</strong>
|
||||
post to the list from an email address where such legal requirements are
|
||||
automatically added, get private paying support if you can't share
|
||||
informations.</p><p>Check the following <strong><span style="color: #FF0000">before
|
||||
information.</p><p>Check the following <strong><span style="color: #FF0000">before
|
||||
posting</span></strong>:</p><ul><li>Read the <a href="FAQ.html">FAQ</a> and <a href="search.php">use the
|
||||
search engine</a> to get information related to your problem.</li>
|
||||
<li>Make sure you are <a href="ftp://xmlsoft.org/libxml2/">using a recent
|
||||
@ -53,7 +53,7 @@ answer a given question, ask on the list.</p><p>To <span style="color: #E50000">
|
||||
others" and is not welcome. I will automatically Carbon-Copy the
|
||||
xml@gnome.org mailing list for any technical reply made about libxml2 or
|
||||
libxslt.</li>
|
||||
<li>There is <span style="color: #E50000">no garantee of support</span>, if
|
||||
<li>There is <span style="color: #E50000">no guarantee of support</span>. If
|
||||
your question remains unanswered after a week, repost it, making sure you
|
||||
gave all the detail needed and the information requested.</li>
|
||||
<li>Failing to provide information as requested or double checking first
|
||||
|
@ -108,7 +108,7 @@ to its own set of catalogs, this can be done by setting the
|
||||
<code>XML_CATALOG_FILES</code> environment variable to a list of catalogs, an
|
||||
empty one should deactivate loading the default <code>/etc/xml/catalog</code>
|
||||
default catalog</p><h3><a name="validate" id="validate">How to debug catalog processing:</a></h3><p>Setting up the <code>XML_DEBUG_CATALOG</code> environment variable will
|
||||
make libxml2 output debugging informations for each catalog operations, for
|
||||
make libxml2 output debugging information for each catalog operations, for
|
||||
example:</p><pre>orchis:~/XML -> xmllint --memory --noout test/ent2
|
||||
warning: failed to load external entity "title.xml"
|
||||
orchis:~/XML -> export XML_DEBUG_CATALOG=
|
||||
@ -225,7 +225,7 @@ try to avoid troubles in multithreaded environments. The code is now thread
|
||||
safe assuming that the libxml2 library has been compiled with threads
|
||||
support.</p><p></p><h3><a name="Other" id="Other">Other resources</a></h3><p>The XML Catalog specification is relatively recent so there isn't much
|
||||
literature to point at:</p><ul><li>You can find a good rant from Norm Walsh about <a href="http://www.arbortext.com/Think_Tank/XML_Resources/Issue_Three/issue_three.html">the
|
||||
need for catalogs</a>, it provides a lot of context informations even if
|
||||
need for catalogs</a>, it provides a lot of context information even if
|
||||
I don't agree with everything presented. Norm also wrote a more recent
|
||||
article <a href="http://wwws.sun.com/software/xml/developers/resolver/article/">XML
|
||||
entities and URI resolvers</a> describing them.</li>
|
||||
|
@ -511,8 +511,8 @@ The content of this structure is not made public by the API.
|
||||
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled RelaxNG schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div></div>
|
||||
<hr/>
|
||||
<div class="refsect2" lang="en"><h3><a name="xmlTextReaderRelaxNGValidate"/>xmlTextReaderRelaxNGValidate ()</h3><pre class="programlisting">int xmlTextReaderRelaxNGValidate (<a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br/> const char * rng)<br/>
|
||||
</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is desactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>:</span></td><td>the path to a RelaxNG schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div></div>
|
||||
</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is deactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>:</span></td><td>the path to a RelaxNG schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (de)activated and -1 in case of error.</td></tr></tbody></table></div></div>
|
||||
<hr/>
|
||||
<div class="refsect2" lang="en"><h3><a name="xmlTextReaderSchemaValidate"/>xmlTextReaderSchemaValidate ()</h3><pre class="programlisting">int xmlTextReaderSchemaValidate (<a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br/> const char * xsd)<br/>
|
||||
</pre><p>Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read(). If @xsd is NULL, then XML Schema validation is deactivated.</p>
|
||||
|
@ -24,7 +24,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
||||
documentation</a> explaining how to use the libxml SAX interface.</li>
|
||||
<li>George Lebl wrote <a href="http://www-106.ibm.com/developerworks/library/l-gnome3/">an article
|
||||
for IBM developerWorks</a> about using libxml.</li>
|
||||
<li>Check <a href="http://cvs.gnome.org/lxr/source/gnome-xml/TODO">the TODO
|
||||
<li>Check <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/TODO?view=markup">the TODO
|
||||
file</a>.</li>
|
||||
<li>Read the <a href="upgrade.html">1.x to 2.x upgrade path</a>
|
||||
description. If you are starting a new project using libxml you should
|
||||
|
@ -7,7 +7,7 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
||||
H2 {font-family: Verdana,Arial,Helvetica}
|
||||
H3 {font-family: Verdana,Arial,Helvetica}
|
||||
A:link, A:visited, A:active { text-decoration: underline }
|
||||
</style><title>Downloads</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XML C parser and toolkit of Gnome</h1><h2>Downloads</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Main Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a href="index.html">Home</a></li><li><a href="html/index.html">Reference Manual</a></li><li><a href="intro.html">Introduction</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="docs.html" style="font-weight:bold">Developer Menu</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="news.html">Releases</a></li><li><a href="XMLinfo.html">XML</a></li><li><a href="XSLT.html">XSLT</a></li><li><a href="xmldtd.html">Validation & DTDs</a></li><li><a href="encoding.html">Encodings support</a></li><li><a href="catalog.html">Catalog support</a></li><li><a href="namespaces.html">Namespaces</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li><li><a href="html/index.html" style="font-weight:bold">API Menu</a></li><li><a href="guidelines.html">XML Guidelines</a></li><li><a href="ChangeLog.html">Recent Changes</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://www.blastwave.org/packages.php/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><p>The latest versions of libxml2 can be found on the <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> server ( <a href="http://xmlsoft.org/sources/">HTTP</a>, <a href="ftp://xmlsoft.org/libxml2/">FTP</a> and rsync are available), there is also
|
||||
</style><title>Downloads</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XML C parser and toolkit of Gnome</h1><h2>Downloads</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Main Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a href="index.html">Home</a></li><li><a href="html/index.html">Reference Manual</a></li><li><a href="intro.html">Introduction</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="docs.html" style="font-weight:bold">Developer Menu</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="news.html">Releases</a></li><li><a href="XMLinfo.html">XML</a></li><li><a href="XSLT.html">XSLT</a></li><li><a href="xmldtd.html">Validation & DTDs</a></li><li><a href="encoding.html">Encodings support</a></li><li><a href="catalog.html">Catalog support</a></li><li><a href="namespaces.html">Namespaces</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li><li><a href="html/index.html" style="font-weight:bold">API Menu</a></li><li><a href="guidelines.html">XML Guidelines</a></li><li><a href="ChangeLog.html">Recent Changes</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://www.blastwave.org/packages.php/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><p>The latest versions of libxml2 can be found on the <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> server ( <a href="http://xmlsoft.org/sources/">HTTP</a>, <a href="ftp://xmlsoft.org/libxml2/">FTP</a> and rsync are available), there are also
|
||||
mirrors (<a href="ftp://ftp.planetmirror.com/pub/xmlsoft/">Australia</a>( <a href="http://xmlsoft.planetmirror.com/">Web</a>), <a href="ftp://fr.rpmfind.net/pub/libxml/">France</a>) or on the <a href="ftp://ftp.gnome.org/pub/GNOME/MIRRORS.html">Gnome FTP server</a> as <a href="ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/">source archive</a>
|
||||
, Antonin Sprinzl also provide <a href="ftp://gd.tuwien.ac.at/pub/libxml/">a
|
||||
mirror in Austria</a>. (NOTE that you need both the <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml(2)</a> and <a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml(2)-devel</a>
|
||||
@ -24,13 +24,13 @@ Windows binaries made by Igor Zlatovic are available in the <a href="http://xmls
|
||||
<li>The HP-UX porting center provides <a href="http://hpux.connect.org.uk/hppd/hpux/Gnome/">HP-UX binaries</a></li>
|
||||
<li>Bull provides precompiled <a href="http://gnome.bullfreeware.com/new_index.html">RPMs for AIX</a> as
|
||||
patr of their GNOME packages</li>
|
||||
</ul><p>If you know other supported binary ports, please <a href="http://veillard.com/">contact me</a>.</p><p><a name="Snapshot" id="Snapshot">Snapshot:</a></p><ul><li>Code from the W3C cvs base libxml2 module, updated hourly <a href="ftp://xmlsoft.org/libxml2/libxml2-cvs-snapshot.tar.gz">libxml2-cvs-snapshot.tar.gz</a>.</li>
|
||||
</ul><p>If you know other supported binary ports, please <a href="http://veillard.com/">contact me</a>.</p><p><a name="Snapshot" id="Snapshot">Snapshot:</a></p><ul><li>Code from the W3C svn base libxml2 module, updated hourly <a href="ftp://xmlsoft.org/libxml2/libxml2-cvs-snapshot.tar.gz">libxml2-cvs-snapshot.tar.gz</a>.</li>
|
||||
<li>Docs, content of the web site, the list archive included <a href="ftp://xmlsoft.org/libxml2/libxml-docs.tar.gz">libxml-docs.tar.gz</a>.</li>
|
||||
</ul><p><a name="Contribs" id="Contribs">Contributions:</a></p><p>I do accept external contributions, especially if compiling on another
|
||||
platform, get in touch with the list to upload the package, wrappers for
|
||||
various languages have been provided, and can be found in the <a href="python.html">bindings section</a></p><p>Libxml2 is also available from CVS:</p><ul><li><p>The <a href="http://cvs.gnome.org/viewcvs/libxml2/">Gnome CVS
|
||||
base</a>. Check the <a href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>
|
||||
page; the CVS module is <b>libxml2</b>.</p>
|
||||
various languages have been provided, and can be found in the <a href="python.html">bindings section</a></p><p>Libxml2 is also available from SVN:</p><ul><li><p>The <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/">Gnome SVN
|
||||
base</a>. Check the <a href="http://developer.gnome.org/tools/svn.html">Gnome SVN Tools</a>
|
||||
page; the SVN module is <b>libxml2</b>.</p>
|
||||
</li>
|
||||
<li>The <strong>libxslt</strong> module is also present there</li>
|
||||
</ul><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
|
@ -34,7 +34,7 @@ they are clearly labeled as such. For example the following is a wellformed
|
||||
XML document encoded in ISO-8859-1 and using accentuated letters that we
|
||||
French like for both markup and content:</p><pre><?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<très>là</très></pre><p>Having internationalization support in libxml2 means the following:</p><ul><li>the document is properly parsed</li>
|
||||
<li>informations about it's encoding are saved</li>
|
||||
<li>information about it's encoding is saved</li>
|
||||
<li>it can be modified</li>
|
||||
<li>it can be saved in its original encoding</li>
|
||||
<li>it can also be saved in another encoding supported by libxml2 (for
|
||||
|
@ -183,4 +183,4 @@ data structure definitions, a set of XML examples or an XML DTD and produce
|
||||
the code needed to import and export the content between C data and XML
|
||||
storage. This is left as an exercise to the reader :-)</p><p>Feel free to use <a href="example/gjobread.c">the code for the full C
|
||||
parsing example</a> as a template, it is also available with Makefile in the
|
||||
Gnome CVS base under gnome-xml/example</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
Gnome SVN base under libxml2/example</p><p><a href="bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
|
||||
|
@ -303,8 +303,8 @@ void xmlTextReaderErrorFunc (void * arg, <br /> const char * msg, <br />
|
||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the contents of the Element or Text node, or NULL if the reader is positioned on any other type of node. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGSetSchema" id="xmlTextReaderRelaxNGSetSchema"></a>Function: xmlTextReaderRelaxNGSetSchema</h3><pre class="programlisting">int xmlTextReaderRelaxNGSetSchema (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
|
||||
</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @schema is NULL, then RelaxNG validation is desactivated. @ The @schema should not be freed until the reader is deallocated or its use has been deactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled RelaxNG schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGValidate" id="xmlTextReaderRelaxNGValidate"></a>Function: xmlTextReaderRelaxNGValidate</h3><pre class="programlisting">int xmlTextReaderRelaxNGValidate (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> const char * rng)<br />
|
||||
</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is desactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>:</span></td><td>the path to a RelaxNG schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderSchemaValidate" id="xmlTextReaderSchemaValidate"></a>Function: xmlTextReaderSchemaValidate</h3><pre class="programlisting">int xmlTextReaderSchemaValidate (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> const char * xsd)<br />
|
||||
</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is deactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>:</span></td><td>the path to a RelaxNG schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (de)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderSchemaValidate" id="xmlTextReaderSchemaValidate"></a>Function: xmlTextReaderSchemaValidate</h3><pre class="programlisting">int xmlTextReaderSchemaValidate (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> const char * xsd)<br />
|
||||
</pre><p>Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read(). If @xsd is NULL, then XML Schema validation is deactivated.</p>
|
||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>xsd</tt></i>:</span></td><td>the path to a W3C XSD schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the schemas validation could be (de)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderSchemaValidateCtxt" id="xmlTextReaderSchemaValidateCtxt"></a>Function: xmlTextReaderSchemaValidateCtxt</h3><pre class="programlisting">int xmlTextReaderSchemaValidateCtxt (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> <a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br /> int options)<br />
|
||||
</pre><p>Use W3C XSD schema context to validate the document as it is processed. Activation is only possible before the first Read(). If @ctxt is NULL, then XML Schema validation is deactivated.</p>
|
||||
|
@ -277,7 +277,7 @@ conformance statement about it at the moment.</p>
|
||||
<ul><li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a> providing an
|
||||
implementation of XSLT 1.0 and common extensions like EXSLT for
|
||||
libxml2</li>
|
||||
<li><a href="http://www.cs.unibo.it/~casarini/gdome2/">the gdome2 page</a>
|
||||
<li><a href="http://gdome2.cs.unibo.it/">the gdome2 page</a>
|
||||
: a standard DOM2 implementation for libxml2</li>
|
||||
<li><a href="http://www.aleksey.com/xmlsec/">the XMLSec page</a>: an
|
||||
implementation of <a href="http://www.w3.org/TR/xmldsig-core/">W3C XML
|
||||
|
@ -14734,8 +14734,8 @@ Could we use @subtypes for this?'/>
|
||||
</function>
|
||||
<function name='xmlTextReaderRelaxNGValidate' file='xmlreader' module='xmlreader'>
|
||||
<cond>defined(LIBXML_READER_ENABLED) && defined(LIBXML_SCHEMAS_ENABLED)</cond>
|
||||
<info>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is desactivated.</info>
|
||||
<return type='int' info='0 in case the RelaxNG validation could be (des)activated and -1 in case of error.'/>
|
||||
<info>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is deactivated.</info>
|
||||
<return type='int' info='0 in case the RelaxNG validation could be (de)activated and -1 in case of error.'/>
|
||||
<arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
|
||||
<arg name='rng' type='const char *' info='the path to a RelaxNG schema or NULL'/>
|
||||
</function>
|
||||
|
@ -20753,6 +20753,7 @@
|
||||
</word>
|
||||
<word name='deactivated'>
|
||||
<ref name='xmlTextReaderRelaxNGSetSchema'/>
|
||||
<ref name='xmlTextReaderRelaxNGValidate'/>
|
||||
<ref name='xmlTextReaderSchemaValidate'/>
|
||||
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
||||
<ref name='xmlTextReaderSetSchema'/>
|
||||
@ -21026,12 +21027,10 @@
|
||||
</word>
|
||||
<word name='des'>
|
||||
<ref name='xmlTextReaderRelaxNGSetSchema'/>
|
||||
<ref name='xmlTextReaderRelaxNGValidate'/>
|
||||
<ref name='xmlTextReaderSetSchema'/>
|
||||
</word>
|
||||
<word name='desactivated'>
|
||||
<ref name='xmlTextReaderRelaxNGSetSchema'/>
|
||||
<ref name='xmlTextReaderRelaxNGValidate'/>
|
||||
<ref name='xmlTextReaderSetSchema'/>
|
||||
</word>
|
||||
<word name='descend'>
|
||||
|
@ -12,7 +12,7 @@ to help those</p><ul><li>More testing on RelaxNG</li>
|
||||
<li>Finishing up <a href="http://www.w3.org/TR/xmlschema-1/">XML
|
||||
Schemas</a></li>
|
||||
</ul><p>The <a href="ChangeLog.html">change log</a> describes the recents commits
|
||||
to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p><p>There is the list of public releases:</p><h3>2.6.27: Oct 25 2006</h3><ul><li>Portability fixes: file names on windows (Roland Schwingel,
|
||||
to the <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/">SVN</a> code base.</p><p>Here is the list of public releases:</p><h3>2.6.27: Oct 25 2006</h3><ul><li>Portability fixes: file names on windows (Roland Schwingel,
|
||||
Emelyanov Alexey), windows compile fixup (Rob Richards),
|
||||
AIX iconv() is apparently case sensitive</li>
|
||||
<li>improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
|
||||
@ -599,7 +599,7 @@ to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p><p>
|
||||
<li>New xmlWriter API provided by Alfred Mickautsch</li>
|
||||
<li>Schemas: base64 support by Anthony Carrico</li>
|
||||
<li>Parser<->HTTP integration fix, proper processing of the Mime-Type
|
||||
and charset informations if available.</li>
|
||||
and charset information if available.</li>
|
||||
<li>Relax-NG: bug fixes including the one reported by Martijn Faassen and
|
||||
zeroOrMore, better error reporting.</li>
|
||||
<li>Python bindings (Stéphane Bidoul), never use stdout for errors
|
||||
@ -775,7 +775,7 @@ to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p><p>
|
||||
<li>Fix for HTTP URL escaping problem</li>
|
||||
<li>added an TextXmlReader (C#) like API (work in progress)</li>
|
||||
<li>Rewrote the API in XML generation script, includes a C parser and saves
|
||||
more informations needed for C# bindings</li>
|
||||
more information needed for C# bindings</li>
|
||||
</ul><h3>2.4.28: Nov 22 2002</h3><ul><li>a couple of python binding fixes</li>
|
||||
<li>2 bug fixes in the XML push parser</li>
|
||||
<li>potential memory leak removed (Martin Stoilov)</li>
|
||||
|
@ -38,7 +38,7 @@ or libxslt wrappers or bindings:</p><ul><li><a href="http://libxmlplusplus.sourc
|
||||
maintained by Tobias Peters.</li>
|
||||
<li>Steve Ball and contributors maintains <a href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
|
||||
Tcl</a>.</li>
|
||||
<li>libxml2 and libxslt is the default XML library for PHP5.</li>
|
||||
<li>libxml2 and libxslt are the default XML libraries for PHP5.</li>
|
||||
<li><a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
|
||||
an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
|
||||
libxslt as part of GNU ClasspathX project.</li>
|
||||
@ -123,8 +123,8 @@ if valid != 0:
|
||||
defines a new error handler global to the library. It is used to avoid seeing
|
||||
the error messages when trying to validate the invalid document.</p><p>The main interest of that test is the creation of a parser context with
|
||||
createFileParserCtxt() and how the behaviour can be changed before calling
|
||||
parseDocument() . Similarly the informations resulting from the parsing phase
|
||||
are also available using context methods.</p><p>Contexts like nodes are defined as class and the libxml2 wrappers maps the
|
||||
parseDocument() . Similarly the information resulting from the parsing phase
|
||||
is also available using context methods.</p><p>Contexts like nodes are defined as class and the libxml2 wrappers maps the
|
||||
C function interfaces in terms of objects method as much as possible. The
|
||||
best to get a complete view of what methods are supported is to look at the
|
||||
libxml2.py module containing all the wrappers.</p><h3>push.py:</h3><p>This test show how to activate the push parser interface:</p><pre>import libxml2
|
||||
|
88
doc/xml.html
88
doc/xml.html
@ -6,7 +6,6 @@
|
||||
<meta name="GENERATOR" content="amaya 8.5, see http://www.w3.org/Amaya/">
|
||||
<meta http-equiv="Content-Type" content="text/html">
|
||||
</head>
|
||||
|
||||
<body bgcolor="#ffffff">
|
||||
<h1 align="center">The XML C parser and toolkit of Gnome</h1>
|
||||
|
||||
@ -108,7 +107,7 @@ conformance statement about it at the moment.</p>
|
||||
<li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a> providing an
|
||||
implementation of XSLT 1.0 and common extensions like EXSLT for
|
||||
libxml2</li>
|
||||
<li><a href="http://www.cs.unibo.it/~casarini/gdome2/">the gdome2 page</a>
|
||||
<li><a href="http://gdome2.cs.unibo.it/">the gdome2 page</a>
|
||||
: a standard DOM2 implementation for libxml2</li>
|
||||
<li><a href="http://www.aleksey.com/xmlsec/">the XMLSec page</a>: an
|
||||
implementation of <a href="http://www.w3.org/TR/xmldsig-core/">W3C XML
|
||||
@ -116,13 +115,13 @@ conformance statement about it at the moment.</p>
|
||||
<li>also check the related links section below for more related and active
|
||||
projects.</li>
|
||||
</ul>
|
||||
<!----------------<p>Results of the <a
|
||||
<!-- ----------------<p>Results of the <a
|
||||
href="http://xmlbench.sourceforge.net/results/benchmark/index.html">xmlbench
|
||||
benchmark</a> on sourceforge February 2004 (smaller is better):</p>
|
||||
|
||||
<p align="center"><img src="benchmark.png"
|
||||
alt="benchmark results for Expat Xerces libxml2 Oracle and Sun toolkits"></p>
|
||||
-------------->
|
||||
------------ -->
|
||||
|
||||
<p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</p>
|
||||
|
||||
@ -197,6 +196,7 @@ libxml2</p>
|
||||
<ol>
|
||||
<li><strong><span style="background-color: #FF0000">Do Not Use
|
||||
libxml1</span></strong>, use libxml2</li>
|
||||
<p></p>
|
||||
<li><em>Where can I get libxml</em> ?
|
||||
<p>The original distribution comes from <a
|
||||
href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> or <a
|
||||
@ -206,6 +206,7 @@ libxml2</p>
|
||||
<p>David Doolin provides precompiled Windows versions at <a
|
||||
href="http://www.ce.berkeley.edu/~doolin/code/libxmlwin32/ ">http://www.ce.berkeley.edu/~doolin/code/libxmlwin32/</a></p>
|
||||
</li>
|
||||
<p></p>
|
||||
<li><em>I see libxml and libxml2 releases, which one should I install ?</em>
|
||||
<ul>
|
||||
<li>If you are not constrained by backward compatibility issues with
|
||||
@ -278,6 +279,7 @@ libxml2</p>
|
||||
href="ftp://ftp.ilog.fr/pub/Users/haible/gnu/">here</a>.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<p></p>
|
||||
<li><em>Make check fails on some platforms</em>
|
||||
<p>Sometimes the regression tests' results don't completely match the
|
||||
value produced by the parser, and the makefile uses diff to print the
|
||||
@ -286,7 +288,7 @@ libxml2</p>
|
||||
<p>Sometimes (especially on Solaris) make checks fail due to limitations
|
||||
in make. Try using GNU-make instead.</p>
|
||||
</li>
|
||||
<li><em>I use the CVS version and there is no configure script</em>
|
||||
<li><em>I use the SVN version and there is no configure script</em>
|
||||
<p>The configure script (and other Makefiles) are generated. Use the
|
||||
autogen.sh script to regenerate the configure script and Makefiles,
|
||||
like:</p>
|
||||
@ -375,8 +377,9 @@ libxml2</p>
|
||||
()</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Extra nodes in the document:
|
||||
<p><em>For a XML file as below:</em></p>
|
||||
<p></p>
|
||||
<li><em>Extra nodes in the document:</em>
|
||||
<p><em>For an XML file as below:</em></p>
|
||||
<pre><?xml version="1.0"?>
|
||||
<PLAN xmlns="http://www.argus.ca/autotest/1.0/">
|
||||
<NODE CommFlag="0"/>
|
||||
@ -438,22 +441,25 @@ pnode=pxmlDoc->children->children;</pre>
|
||||
<li>have a look at <a href="examples/index.html">the set of
|
||||
examples</a>.</li>
|
||||
<li>look for examples of use for libxml2 function using the Gnome code.
|
||||
<!--
|
||||
For example the following will query the full Gnome CVS base for the
|
||||
use of the <strong>xmlAddChild()</strong> function:
|
||||
<p><a
|
||||
href="http://cvs.gnome.org/lxr/search?string=xmlAddChild">http://cvs.gnome.org/lxr/search?string=xmlAddChild</a></p>
|
||||
<p>This may be slow, a large hardware donation to the gnome project
|
||||
could cure this :-)</p>
|
||||
-->
|
||||
</li>
|
||||
<li><a
|
||||
href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&dir=gnome-xml">Browse
|
||||
href="http://svn.gnome.org/viewcvs/libxml2/trunk/">Browse
|
||||
the libxml2 source</a> , I try to write code as clean and documented
|
||||
as possible, so looking at it may be helpful. In particular the code
|
||||
of xmllint.c and of the various testXXX.c test programs should
|
||||
of <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/xmllint.c?view=markup">xmllint.c</a> and of the various testXXX.c test programs should
|
||||
provide good examples of how to do things with the library.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>What about C++ ?
|
||||
<p></p>
|
||||
<li><em>What about C++ ?</em>
|
||||
<p>libxml2 is written in pure C in order to allow easy reuse on a number
|
||||
of platforms, including embedded systems. I don't intend to convert to
|
||||
C++.</p>
|
||||
@ -473,7 +479,7 @@ pnode=pxmlDoc->children->children;</pre>
|
||||
-->
|
||||
</ul>
|
||||
</li>
|
||||
<li>How to validate a document a posteriori ?
|
||||
<li><em>How to validate a document a posteriori ?</em>
|
||||
<p>It is possible to validate documents which had not been validated at
|
||||
initial parsing time or documents which have been built from scratch
|
||||
using the API. Use the <a
|
||||
@ -490,7 +496,7 @@ xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
||||
else xmlAddPrevSibling(doc->children, (xmlNodePtr)dtd);
|
||||
</pre>
|
||||
</li>
|
||||
<li>So what is this funky "xmlChar" used all the time?
|
||||
<li><em>So what is this funky "xmlChar" used all the time?</em>
|
||||
<p>It is a null terminated sequence of utf-8 characters. And only utf-8!
|
||||
You need to convert strings encoded in different ways to utf-8 before
|
||||
passing them to the API. This can be accomplished with the iconv library
|
||||
@ -525,7 +531,7 @@ xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
||||
<li>George Lebl wrote <a
|
||||
href="http://www-106.ibm.com/developerworks/library/l-gnome3/">an article
|
||||
for IBM developerWorks</a> about using libxml.</li>
|
||||
<li>Check <a href="http://cvs.gnome.org/lxr/source/gnome-xml/TODO">the TODO
|
||||
<li>Check <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/TODO?view=markup">the TODO
|
||||
file</a>.</li>
|
||||
<li>Read the <a href="upgrade.html">1.x to 2.x upgrade path</a>
|
||||
description. If you are starting a new project using libxml you should
|
||||
@ -545,7 +551,7 @@ is still open. Be sure to specify that the bug is for the package libxml2.</p>
|
||||
|
||||
<p>For small problems you can try to get help on IRC, the #xml channel on
|
||||
irc.gnome.org (port 6667) usually have a few person subscribed which may help
|
||||
(but there is no garantee and if a real issue is raised it should go on the
|
||||
(but there is no guarantee and if a real issue is raised it should go on the
|
||||
mailing-list for archival).</p>
|
||||
|
||||
<p>There is also a mailing-list <a
|
||||
@ -563,13 +569,13 @@ bounces* (in the order of a thousand a day !) I cannot approve them manually
|
||||
anymore. If your mail to the list bounced waiting for administrator approval,
|
||||
it is LOST ! Repost it and fix the problem triggering the error. Also please
|
||||
note that <span style="color: #FF0000; background-color: #FFFFFF">emails with
|
||||
a legal warning asking to not copy or redistribute freely the informations
|
||||
a legal warning asking to not copy or redistribute freely the information
|
||||
they contain</span> are <strong>NOT</strong> acceptable for the mailing-list,
|
||||
such mail will as much as possible be discarded automatically, and are less
|
||||
likely to be answered if they made it to the list, <strong>DO NOT</strong>
|
||||
post to the list from an email address where such legal requirements are
|
||||
automatically added, get private paying support if you can't share
|
||||
informations.</p>
|
||||
information.</p>
|
||||
|
||||
<p>Check the following <strong><span style="color: #FF0000">before
|
||||
posting</span></strong>:</p>
|
||||
@ -604,7 +610,7 @@ answer a given question, ask on the list.</p>
|
||||
others" and is not welcome. I will automatically Carbon-Copy the
|
||||
xml@gnome.org mailing list for any technical reply made about libxml2 or
|
||||
libxslt.</li>
|
||||
<li>There is <span style="color: #E50000">no garantee of support</span>, if
|
||||
<li>There is <span style="color: #E50000">no guarantee of support</span>. If
|
||||
your question remains unanswered after a week, repost it, making sure you
|
||||
gave all the detail needed and the information requested.</li>
|
||||
<li>Failing to provide information as requested or double checking first
|
||||
@ -652,7 +658,7 @@ database</a>:</p>
|
||||
<p>The latest versions of libxml2 can be found on the <a
|
||||
href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> server ( <a
|
||||
href="http://xmlsoft.org/sources/">HTTP</a>, <a
|
||||
href="ftp://xmlsoft.org/libxml2/">FTP</a> and rsync are available), there is also
|
||||
href="ftp://xmlsoft.org/libxml2/">FTP</a> and rsync are available), there are also
|
||||
mirrors (<a href="ftp://ftp.planetmirror.com/pub/xmlsoft/">Australia</a>( <a
|
||||
href="http://xmlsoft.planetmirror.com/">Web</a>), <a
|
||||
href="ftp://fr.rpmfind.net/pub/libxml/">France</a>) or on the <a
|
||||
@ -696,7 +702,7 @@ href="http://veillard.com/">contact me</a>.</p>
|
||||
|
||||
<p><a name="Snapshot">Snapshot:</a></p>
|
||||
<ul>
|
||||
<li>Code from the W3C cvs base libxml2 module, updated hourly <a
|
||||
<li>Code from the W3C svn base libxml2 module, updated hourly <a
|
||||
href="ftp://xmlsoft.org/libxml2/libxml2-cvs-snapshot.tar.gz">libxml2-cvs-snapshot.tar.gz</a>.</li>
|
||||
<li>Docs, content of the web site, the list archive included <a
|
||||
href="ftp://xmlsoft.org/libxml2/libxml-docs.tar.gz">libxml-docs.tar.gz</a>.</li>
|
||||
@ -709,12 +715,12 @@ platform, get in touch with the list to upload the package, wrappers for
|
||||
various languages have been provided, and can be found in the <a
|
||||
href="python.html">bindings section</a></p>
|
||||
|
||||
<p>Libxml2 is also available from CVS:</p>
|
||||
<p>Libxml2 is also available from SVN:</p>
|
||||
<ul>
|
||||
<li><p>The <a href="http://cvs.gnome.org/viewcvs/libxml2/">Gnome CVS
|
||||
<li><p>The <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/">Gnome SVN
|
||||
base</a>. Check the <a
|
||||
href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>
|
||||
page; the CVS module is <b>libxml2</b>.</p>
|
||||
href="http://developer.gnome.org/tools/svn.html">Gnome SVN Tools</a>
|
||||
page; the SVN module is <b>libxml2</b>.</p>
|
||||
</li>
|
||||
<li>The <strong>libxslt</strong> module is also present there</li>
|
||||
</ul>
|
||||
@ -730,9 +736,9 @@ to help those</p>
|
||||
</ul>
|
||||
|
||||
<p>The <a href="ChangeLog.html">change log</a> describes the recents commits
|
||||
to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p>
|
||||
to the <a href="http://svn.gnome.org/viewcvs/libxml2/trunk/">SVN</a> code base.</p>
|
||||
|
||||
<p>There is the list of public releases:</p>
|
||||
<p>Here is the list of public releases:</p>
|
||||
|
||||
<h3>2.6.27: Oct 25 2006</h3>
|
||||
<ul>
|
||||
@ -1430,7 +1436,7 @@ to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p>
|
||||
<li>New xmlWriter API provided by Alfred Mickautsch</li>
|
||||
<li>Schemas: base64 support by Anthony Carrico</li>
|
||||
<li>Parser<->HTTP integration fix, proper processing of the Mime-Type
|
||||
and charset informations if available.</li>
|
||||
and charset information if available.</li>
|
||||
<li>Relax-NG: bug fixes including the one reported by Martijn Faassen and
|
||||
zeroOrMore, better error reporting.</li>
|
||||
<li>Python bindings (Stéphane Bidoul), never use stdout for errors
|
||||
@ -1667,7 +1673,7 @@ to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p>
|
||||
<li>Fix for HTTP URL escaping problem</li>
|
||||
<li>added an TextXmlReader (C#) like API (work in progress)</li>
|
||||
<li>Rewrote the API in XML generation script, includes a C parser and saves
|
||||
more informations needed for C# bindings</li>
|
||||
more information needed for C# bindings</li>
|
||||
</ul>
|
||||
|
||||
<h3>2.4.28: Nov 22 2002</h3>
|
||||
@ -2560,7 +2566,7 @@ language for transforming XML documents into other XML documents (or
|
||||
HTML/textual output).</p>
|
||||
|
||||
<p>A separate library called libxslt is available implementing XSLT-1.0 for
|
||||
libxml2. This module "libxslt" too can be found in the Gnome CVS base.</p>
|
||||
libxml2. This module "libxslt" too can be found in the Gnome SVN base.</p>
|
||||
|
||||
<p>You can check the progresses on the libxslt <a
|
||||
href="http://xmlsoft.org/XSLT/ChangeLog.html">Changelog</a>.</p>
|
||||
@ -2613,7 +2619,7 @@ or libxslt wrappers or bindings:</p>
|
||||
<li>Steve Ball and contributors maintains <a
|
||||
href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
|
||||
Tcl</a>.</li>
|
||||
<li>libxml2 and libxslt is the default XML library for PHP5.</li>
|
||||
<li>libxml2 and libxslt are the default XML libraries for PHP5.</li>
|
||||
<li><a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
|
||||
an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
|
||||
libxslt as part of GNU ClasspathX project.</li>
|
||||
@ -2739,8 +2745,8 @@ the error messages when trying to validate the invalid document.</p>
|
||||
|
||||
<p>The main interest of that test is the creation of a parser context with
|
||||
createFileParserCtxt() and how the behaviour can be changed before calling
|
||||
parseDocument() . Similarly the informations resulting from the parsing phase
|
||||
are also available using context methods.</p>
|
||||
parseDocument() . Similarly the information resulting from the parsing phase
|
||||
is also available using context methods.</p>
|
||||
|
||||
<p>Contexts like nodes are defined as class and the libxml2 wrappers maps the
|
||||
C function interfaces in terms of objects method as much as possible. The
|
||||
@ -3340,7 +3346,7 @@ or call a specific routine when a given block number is allocated:</p>
|
||||
href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemStrdupLoc()</a>
|
||||
are the memory debugging replacement allocation routines</li>
|
||||
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemoryDump
|
||||
()</a> dumps all the informations about the allocated memory block lefts
|
||||
()</a> dumps all the information about the allocated memory block lefts
|
||||
in the <code>.memdump</code> file</li>
|
||||
</ul>
|
||||
|
||||
@ -3352,7 +3358,7 @@ allocations use (some libc implementations are known to be far too permissive
|
||||
resulting in major portability problems!).</p>
|
||||
|
||||
<p>If the .memdump reports a leak, it displays the allocation function and
|
||||
also tries to give some informations about the content and structure of the
|
||||
also tries to give some information about the content and structure of the
|
||||
allocated blocks left. This is sufficient in most cases to find the culprit,
|
||||
but not always. Assuming the allocation problem is reproducible, it is
|
||||
possible to find more easily:</p>
|
||||
@ -3455,7 +3461,7 @@ French like for both markup and content:</p>
|
||||
<p>Having internationalization support in libxml2 means the following:</p>
|
||||
<ul>
|
||||
<li>the document is properly parsed</li>
|
||||
<li>informations about it's encoding are saved</li>
|
||||
<li>information about it's encoding is saved</li>
|
||||
<li>it can be modified</li>
|
||||
<li>it can be saved in its original encoding</li>
|
||||
<li>it can also be saved in another encoding supported by libxml2 (for
|
||||
@ -3707,7 +3713,7 @@ the interfaces to the libxml2 I/O system. This consists of 4 main parts:</p>
|
||||
<code>xmlSetExternalEntityLoader()</code>. <a href="#entities">Check the
|
||||
example</a>.</li>
|
||||
<li>Input I/O buffers which are a commodity structure used by the parser(s)
|
||||
input layer to handle fetching the informations to feed the parser. This
|
||||
input layer to handle fetching the information to feed the parser. This
|
||||
provides buffering and is also a placeholder where the encoding
|
||||
converters to UTF8 are piggy-backed.</li>
|
||||
<li>Output I/O buffers are similar to the Input ones and fulfill similar
|
||||
@ -4008,7 +4014,7 @@ default catalog</p>
|
||||
<h3><a name="validate">How to debug catalog processing:</a></h3>
|
||||
|
||||
<p>Setting up the <code>XML_DEBUG_CATALOG</code> environment variable will
|
||||
make libxml2 output debugging informations for each catalog operations, for
|
||||
make libxml2 output debugging information for each catalog operations, for
|
||||
example:</p>
|
||||
<pre>orchis:~/XML -> xmllint --memory --noout test/ent2
|
||||
warning: failed to load external entity "title.xml"
|
||||
@ -4210,7 +4216,7 @@ literature to point at:</p>
|
||||
<ul>
|
||||
<li>You can find a good rant from Norm Walsh about <a
|
||||
href="http://www.arbortext.com/Think_Tank/XML_Resources/Issue_Three/issue_three.html">the
|
||||
need for catalogs</a>, it provides a lot of context informations even if
|
||||
need for catalogs</a>, it provides a lot of context information even if
|
||||
I don't agree with everything presented. Norm also wrote a more recent
|
||||
article <a
|
||||
href="http://wwws.sun.com/software/xml/developers/resolver/article/">XML
|
||||
@ -4763,10 +4769,10 @@ manipulate XML files within Gnome since it won't expose the internal
|
||||
structure.</p>
|
||||
|
||||
<p>The current DOM implementation on top of libxml2 is the <a
|
||||
href="http://cvs.gnome.org/lxr/source/gdome2/">gdome2 Gnome module</a>, this
|
||||
href="http:///svn.gnome.org/viewcvs/gdome2/trunk/">gdome2 Gnome module</a>, this
|
||||
is a full DOM interface, thanks to Paolo Casarini, check the <a
|
||||
href="http://www.cs.unibo.it/~casarini/gdome2/">Gdome2 homepage</a> for more
|
||||
informations.</p>
|
||||
href="http://gdome2.cs.unibo.it/">Gdome2 homepage</a> for more
|
||||
information.</p>
|
||||
|
||||
<h2><a name="Example"></a><a name="real">A real example</a></h2>
|
||||
|
||||
@ -4963,7 +4969,7 @@ storage. This is left as an exercise to the reader :-)</p>
|
||||
|
||||
<p>Feel free to use <a href="example/gjobread.c">the code for the full C
|
||||
parsing example</a> as a template, it is also available with Makefile in the
|
||||
Gnome CVS base under gnome-xml/example</p>
|
||||
Gnome SVN base under libxml2/example</p>
|
||||
|
||||
<h2><a name="Contributi">Contributions</a></h2>
|
||||
<ul>
|
||||
|
@ -22,7 +22,7 @@ the interfaces to the libxml2 I/O system. This consists of 4 main parts:</p><ul>
|
||||
<code>xmlSetExternalEntityLoader()</code>. <a href="#entities">Check the
|
||||
example</a>.</li>
|
||||
<li>Input I/O buffers which are a commodity structure used by the parser(s)
|
||||
input layer to handle fetching the informations to feed the parser. This
|
||||
input layer to handle fetching the information to feed the parser. This
|
||||
provides buffering and is also a placeholder where the encoding
|
||||
converters to UTF8 are piggy-backed.</li>
|
||||
<li>Output I/O buffers are similar to the Input ones and fulfill similar
|
||||
|
@ -49,7 +49,7 @@ or call a specific routine when a given block number is allocated:</p><ul><li><a
|
||||
and <a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemStrdupLoc()</a>
|
||||
are the memory debugging replacement allocation routines</li>
|
||||
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemoryDump
|
||||
()</a> dumps all the informations about the allocated memory block lefts
|
||||
()</a> dumps all the information about the allocated memory block lefts
|
||||
in the <code>.memdump</code> file</li>
|
||||
</ul><p>When developing libxml2 memory debug is enabled, the tests programs call
|
||||
xmlMemoryDump () and the "make test" regression tests will check for any
|
||||
@ -57,7 +57,7 @@ memory leak during the full regression test sequence, this helps a lot
|
||||
ensuring that libxml2 does not leak memory and bullet proof memory
|
||||
allocations use (some libc implementations are known to be far too permissive
|
||||
resulting in major portability problems!).</p><p>If the .memdump reports a leak, it displays the allocation function and
|
||||
also tries to give some informations about the content and structure of the
|
||||
also tries to give some information about the content and structure of the
|
||||
allocated blocks left. This is sufficient in most cases to find the culprit,
|
||||
but not always. Assuming the allocation problem is reproducible, it is
|
||||
possible to find more easily:</p><ol><li>write down the block number xxxx not allocated</li>
|
||||
|
Loading…
x
Reference in New Issue
Block a user