mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-10-24 13:33:01 +03:00
preparing release of 2.6.25 Daniel
* configure.ini NEWS doc//* libxml.spec.in : preparing release of 2.6.25 Daniel
This commit is contained in:
@@ -1,3 +1,7 @@
|
|||||||
|
Tue Jun 6 15:19:57 CEST 2006 Daniel Veillard <daniel@veillard.com>
|
||||||
|
|
||||||
|
* configure.ini NEWS doc//* libxml.spec.in : preparing release of 2.6.25
|
||||||
|
|
||||||
Tue Jun 6 11:28:15 CEST 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
|
Tue Jun 6 11:28:15 CEST 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
|
||||||
|
|
||||||
* xpath.c: Enabled the compound traversal again; I added a
|
* xpath.c: Enabled the compound traversal again; I added a
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ AC_CANONICAL_HOST
|
|||||||
|
|
||||||
LIBXML_MAJOR_VERSION=2
|
LIBXML_MAJOR_VERSION=2
|
||||||
LIBXML_MINOR_VERSION=6
|
LIBXML_MINOR_VERSION=6
|
||||||
LIBXML_MICRO_VERSION=24
|
LIBXML_MICRO_VERSION=25
|
||||||
LIBXML_MICRO_VERSION_SUFFIX=
|
LIBXML_MICRO_VERSION_SUFFIX=
|
||||||
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
|
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
|
||||||
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
|
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>CJKUnifiedIdeographsExtensionB</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsCJKUnifiedIdeographsExtensionB">xmlUCSIsCJKUnifiedIdeographsExtensionB</a><br />
|
</dd><dt>CJKUnifiedIdeographsExtensionB</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsCJKUnifiedIdeographsExtensionB">xmlUCSIsCJKUnifiedIdeographsExtensionB</a><br />
|
||||||
</dd><dt>CVS</dt><dd><a href="html/libxml-xmlversion.html#LIBXML_VERSION_EXTRA">LIBXML_VERSION_EXTRA</a><br />
|
</dd><dt>CVS</dt><dd><a href="html/libxml-xmlversion.html#LIBXML_VERSION_EXTRA">LIBXML_VERSION_EXTRA</a><br />
|
||||||
</dd><dt>CWD</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPCwd">xmlNanoFTPCwd</a><br />
|
</dd><dt>CWD</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPCwd">xmlNanoFTPCwd</a><br />
|
||||||
|
</dd><dt>Cache</dt><dd><a href="html/libxml-xpath.html#_xmlXPathContext">_xmlXPathContext</a><br />
|
||||||
</dd><dt>Call</dt><dd><a href="html/libxml-parserInternals.html#htmlInitAutoClose">htmlInitAutoClose</a><br />
|
</dd><dt>Call</dt><dd><a href="html/libxml-parserInternals.html#htmlInitAutoClose">htmlInitAutoClose</a><br />
|
||||||
<a href="html/libxml-parser.html#xmlInitParser">xmlInitParser</a><br />
|
<a href="html/libxml-parser.html#xmlInitParser">xmlInitParser</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a><br />
|
||||||
@@ -309,6 +310,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlregexp.html#xmlExpNewCtxt">xmlExpNewCtxt</a><br />
|
<a href="html/libxml-xmlregexp.html#xmlExpNewCtxt">xmlExpNewCtxt</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlNewDoc">xmlNewDoc</a><br />
|
<a href="html/libxml-tree.html#xmlNewDoc">xmlNewDoc</a><br />
|
||||||
<a href="html/libxml-xinclude.html#xmlXIncludeNewContext">xmlXIncludeNewContext</a><br />
|
<a href="html/libxml-xinclude.html#xmlXIncludeNewContext">xmlXIncludeNewContext</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>Creation</dt><dd><a href="html/libxml-tree.html#xmlNewCDataBlock">xmlNewCDataBlock</a><br />
|
</dd><dt>Creation</dt><dd><a href="html/libxml-tree.html#xmlNewCDataBlock">xmlNewCDataBlock</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlNewCharRef">xmlNewCharRef</a><br />
|
<a href="html/libxml-tree.html#xmlNewCharRef">xmlNewCharRef</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlNewChild">xmlNewChild</a><br />
|
<a href="html/libxml-tree.html#xmlNewChild">xmlNewChild</a><br />
|
||||||
|
|||||||
@@ -123,6 +123,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidate">xmlTextReaderSchemaValidate</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#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
|
||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
||||||
|
</dd><dt>activates</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>activation</dt><dd><a href="html/libxml-tree.html#xmlGetLineNo">xmlGetLineNo</a><br />
|
</dd><dt>activation</dt><dd><a href="html/libxml-tree.html#xmlGetLineNo">xmlGetLineNo</a><br />
|
||||||
</dd><dt>acts</dt><dd><a href="html/libxml-tree.html#xmlGetProp">xmlGetProp</a><br />
|
</dd><dt>acts</dt><dd><a href="html/libxml-tree.html#xmlGetProp">xmlGetProp</a><br />
|
||||||
</dd><dt>actual</dt><dd><a href="html/libxml-xmlstring.html#xmlGetUTF8Char">xmlGetUTF8Char</a><br />
|
</dd><dt>actual</dt><dd><a href="html/libxml-xmlstring.html#xmlGetUTF8Char">xmlGetUTF8Char</a><br />
|
||||||
|
|||||||
@@ -37,7 +37,10 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="APIchunk27.html">w-w</a>
|
<a href="APIchunk27.html">w-w</a>
|
||||||
<a href="APIchunk28.html">x-x</a>
|
<a href="APIchunk28.html">x-x</a>
|
||||||
<a href="APIchunk29.html">y-z</a>
|
<a href="APIchunk29.html">y-z</a>
|
||||||
</h2><h2>Letter c:</h2><dl><dt>calculated</dt><dd><a href="html/libxml-xmlstring.html#xmlStrncatNew">xmlStrncatNew</a><br />
|
</h2><h2>Letter c:</h2><dl><dt>cache</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
|
</dd><dt>cached</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
|
</dd><dt>caching:</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
|
</dd><dt>calculated</dt><dd><a href="html/libxml-xmlstring.html#xmlStrncatNew">xmlStrncatNew</a><br />
|
||||||
</dd><dt>calculates</dt><dd><a href="html/libxml-xmlstring.html#xmlUTF8Size">xmlUTF8Size</a><br />
|
</dd><dt>calculates</dt><dd><a href="html/libxml-xmlstring.html#xmlUTF8Size">xmlUTF8Size</a><br />
|
||||||
</dd><dt>calling</dt><dd><a href="html/libxml-xpath.html#_xmlXPathContext">_xmlXPathContext</a><br />
|
</dd><dt>calling</dt><dd><a href="html/libxml-xpath.html#_xmlXPathContext">_xmlXPathContext</a><br />
|
||||||
<a href="html/libxml-uri.html#xmlBuildRelativeURI">xmlBuildRelativeURI</a><br />
|
<a href="html/libxml-uri.html#xmlBuildRelativeURI">xmlBuildRelativeURI</a><br />
|
||||||
@@ -839,6 +842,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlautomata.html#xmlAutomataNewTransition2">xmlAutomataNewTransition2</a><br />
|
<a href="html/libxml-xmlautomata.html#xmlAutomataNewTransition2">xmlAutomataNewTransition2</a><br />
|
||||||
<a href="html/libxml-uri.html#xmlCreateURI">xmlCreateURI</a><br />
|
<a href="html/libxml-uri.html#xmlCreateURI">xmlCreateURI</a><br />
|
||||||
<a href="html/libxml-xmlstring.html#xmlStrncatNew">xmlStrncatNew</a><br />
|
<a href="html/libxml-xmlstring.html#xmlStrncatNew">xmlStrncatNew</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>creating</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br />
|
</dd><dt>creating</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
|
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlDOMWrapReconcileNamespaces">xmlDOMWrapReconcileNamespaces</a><br />
|
<a href="html/libxml-tree.html#xmlDOMWrapReconcileNamespaces">xmlDOMWrapReconcileNamespaces</a><br />
|
||||||
@@ -869,6 +873,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlmemory.html#xmlMemGet">xmlMemGet</a><br />
|
<a href="html/libxml-xmlmemory.html#xmlMemGet">xmlMemGet</a><br />
|
||||||
<a href="html/libxml-xmlmemory.html#xmlMemUsed">xmlMemUsed</a><br />
|
<a href="html/libxml-xmlmemory.html#xmlMemUsed">xmlMemUsed</a><br />
|
||||||
<a href="html/libxml-xmlIO.html#xmlOutputBufferCreateFilename">xmlOutputBufferCreateFilename</a><br />
|
<a href="html/libxml-xmlIO.html#xmlOutputBufferCreateFilename">xmlOutputBufferCreateFilename</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>custom</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br />
|
</dd><dt>custom</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
|
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
|
||||||
<a href="html/libxml-xmlsave.html#xmlSaveSetAttrEscape">xmlSaveSetAttrEscape</a><br />
|
<a href="html/libxml-xmlsave.html#xmlSaveSetAttrEscape">xmlSaveSetAttrEscape</a><br />
|
||||||
|
|||||||
@@ -221,6 +221,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>delegation</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a><br />
|
</dd><dt>delegation</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a><br />
|
||||||
</dd><dt>delete</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPDele">xmlNanoFTPDele</a><br />
|
</dd><dt>delete</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPDele">xmlNanoFTPDele</a><br />
|
||||||
</dd><dt>deletion</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a><br />
|
</dd><dt>deletion</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a><br />
|
||||||
|
</dd><dt>dependant</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>depending</dt><dd><a href="html/libxml-valid.html#xmlIsID">xmlIsID</a><br />
|
</dd><dt>depending</dt><dd><a href="html/libxml-valid.html#xmlIsID">xmlIsID</a><br />
|
||||||
<a href="html/libxml-valid.html#xmlIsRef">xmlIsRef</a><br />
|
<a href="html/libxml-valid.html#xmlIsRef">xmlIsRef</a><br />
|
||||||
<a href="html/libxml-list.html#xmlListDataCompare">xmlListDataCompare</a><br />
|
<a href="html/libxml-list.html#xmlListDataCompare">xmlListDataCompare</a><br />
|
||||||
@@ -455,6 +456,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>disabled</dt><dd><a href="html/libxml-hash.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
|
</dd><dt>disabled</dt><dd><a href="html/libxml-hash.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
|
||||||
<a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
|
<a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
|
||||||
<a href="html/libxml-uri.html#xmlParseURIRaw">xmlParseURIRaw</a><br />
|
<a href="html/libxml-uri.html#xmlParseURIRaw">xmlParseURIRaw</a><br />
|
||||||
|
</dd><dt>disables</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>disabling</dt><dd><a href="html/libxml-xmlIO.html#xmlNoNetExternalEntityLoader">xmlNoNetExternalEntityLoader</a><br />
|
</dd><dt>disabling</dt><dd><a href="html/libxml-xmlIO.html#xmlNoNetExternalEntityLoader">xmlNoNetExternalEntityLoader</a><br />
|
||||||
</dd><dt>disallowed</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ELEM_BLOCK_EXTENSION">XML_SCHEMAS_ELEM_BLOCK_EXTENSION</a><br />
|
</dd><dt>disallowed</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ELEM_BLOCK_EXTENSION">XML_SCHEMAS_ELEM_BLOCK_EXTENSION</a><br />
|
||||||
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ELEM_BLOCK_RESTRICTION">XML_SCHEMAS_ELEM_BLOCK_RESTRICTION</a><br />
|
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ELEM_BLOCK_RESTRICTION">XML_SCHEMAS_ELEM_BLOCK_RESTRICTION</a><br />
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xpathInternals.html#xmlXPathIdFunction">xmlXPathIdFunction</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathIdFunction">xmlXPathIdFunction</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
|
||||||
</dd><dt>edition</dt><dd><a href="html/libxml-parserInternals.html#xmlCheckLanguageID">xmlCheckLanguageID</a><br />
|
</dd><dt>edition</dt><dd><a href="html/libxml-parserInternals.html#xmlCheckLanguageID">xmlCheckLanguageID</a><br />
|
||||||
|
</dd><dt>effect</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>effective</dt><dd><a href="html/libxml-catalog.html#xmlLoadCatalog">xmlLoadCatalog</a><br />
|
</dd><dt>effective</dt><dd><a href="html/libxml-catalog.html#xmlLoadCatalog">xmlLoadCatalog</a><br />
|
||||||
<a href="html/libxml-catalog.html#xmlLoadCatalogs">xmlLoadCatalogs</a><br />
|
<a href="html/libxml-catalog.html#xmlLoadCatalogs">xmlLoadCatalogs</a><br />
|
||||||
</dd><dt>efficiency</dt><dd><a href="html/libxml-uri.html#xmlBuildRelativeURI">xmlBuildRelativeURI</a><br />
|
</dd><dt>efficiency</dt><dd><a href="html/libxml-uri.html#xmlBuildRelativeURI">xmlBuildRelativeURI</a><br />
|
||||||
@@ -118,6 +119,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>enable</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDebug">xmlCatalogSetDebug</a><br />
|
</dd><dt>enable</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDebug">xmlCatalogSetDebug</a><br />
|
||||||
</dd><dt>enabled</dt><dd><a href="html/libxml-tree.html#xmlSaveFile">xmlSaveFile</a><br />
|
</dd><dt>enabled</dt><dd><a href="html/libxml-tree.html#xmlSaveFile">xmlSaveFile</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile</a><br />
|
<a href="html/libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile</a><br />
|
||||||
|
</dd><dt>enables</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>enabling</dt><dd><a href="html/libxml-parser.html#xmlLineNumbersDefault">xmlLineNumbersDefault</a><br />
|
</dd><dt>enabling</dt><dd><a href="html/libxml-parser.html#xmlLineNumbersDefault">xmlLineNumbersDefault</a><br />
|
||||||
<a href="html/libxml-parser.html#xmlPedanticParserDefault">xmlPedanticParserDefault</a><br />
|
<a href="html/libxml-parser.html#xmlPedanticParserDefault">xmlPedanticParserDefault</a><br />
|
||||||
</dd><dt>enc</dt><dd><a href="html/libxml-xmlIO.html#xmlParserInputBufferCreateFilename">xmlParserInputBufferCreateFilename</a><br />
|
</dd><dt>enc</dt><dd><a href="html/libxml-xmlIO.html#xmlParserInputBufferCreateFilename">xmlParserInputBufferCreateFilename</a><br />
|
||||||
|
|||||||
@@ -243,6 +243,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>fonctionnalities</dt><dd><a href="html/libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a><br />
|
</dd><dt>fonctionnalities</dt><dd><a href="html/libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a><br />
|
||||||
<a href="html/libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a><br />
|
<a href="html/libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a><br />
|
||||||
</dd><dt>for:</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
|
</dd><dt>for:</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>forbid</dt><dd><a href="html/libxml-xpath.html#XML_XPATH_NOVAR">XML_XPATH_NOVAR</a><br />
|
</dd><dt>forbid</dt><dd><a href="html/libxml-xpath.html#XML_XPATH_NOVAR">XML_XPATH_NOVAR</a><br />
|
||||||
</dd><dt>force</dt><dd><a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
|
</dd><dt>force</dt><dd><a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
<a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
||||||
@@ -320,6 +321,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>freeing</dt><dd><a href="html/libxml-uri.html#xmlCanonicPath">xmlCanonicPath</a><br />
|
</dd><dt>freeing</dt><dd><a href="html/libxml-uri.html#xmlCanonicPath">xmlCanonicPath</a><br />
|
||||||
<a href="html/libxml-parser.html#xmlParserInputDeallocate">xmlParserInputDeallocate</a><br />
|
<a href="html/libxml-parser.html#xmlParserInputDeallocate">xmlParserInputDeallocate</a><br />
|
||||||
</dd><dt>frees</dt><dd><a href="html/libxml-tree.html#xmlBufferFree">xmlBufferFree</a><br />
|
</dd><dt>frees</dt><dd><a href="html/libxml-tree.html#xmlBufferFree">xmlBufferFree</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>front</dt><dd><a href="html/libxml-tree.html#xmlValidateNCName">xmlValidateNCName</a><br />
|
</dd><dt>front</dt><dd><a href="html/libxml-tree.html#xmlValidateNCName">xmlValidateNCName</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlValidateNMToken">xmlValidateNMToken</a><br />
|
<a href="html/libxml-tree.html#xmlValidateNMToken">xmlValidateNMToken</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlValidateName">xmlValidateName</a><br />
|
<a href="html/libxml-tree.html#xmlValidateName">xmlValidateName</a><br />
|
||||||
|
|||||||
@@ -464,6 +464,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-relaxng.html#xmlRelaxNGNewDocParserCtxt">xmlRelaxNGNewDocParserCtxt</a><br />
|
<a href="html/libxml-relaxng.html#xmlRelaxNGNewDocParserCtxt">xmlRelaxNGNewDocParserCtxt</a><br />
|
||||||
<a href="html/libxml-valid.html#xmlRemoveID">xmlRemoveID</a><br />
|
<a href="html/libxml-valid.html#xmlRemoveID">xmlRemoveID</a><br />
|
||||||
<a href="html/libxml-valid.html#xmlRemoveRef">xmlRemoveRef</a><br />
|
<a href="html/libxml-valid.html#xmlRemoveRef">xmlRemoveRef</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>interned</dt><dd><a href="html/libxml-pattern.html#xmlPatterncompile">xmlPatterncompile</a><br />
|
</dd><dt>interned</dt><dd><a href="html/libxml-pattern.html#xmlPatterncompile">xmlPatterncompile</a><br />
|
||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderConstString">xmlTextReaderConstString</a><br />
|
<a href="html/libxml-xmlreader.html#xmlTextReaderConstString">xmlTextReaderConstString</a><br />
|
||||||
</dd><dt>interning</dt><dd><a href="html/libxml-tree.html#xmlCopyNodeList">xmlCopyNodeList</a><br />
|
</dd><dt>interning</dt><dd><a href="html/libxml-tree.html#xmlCopyNodeList">xmlCopyNodeList</a><br />
|
||||||
|
|||||||
@@ -148,6 +148,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlregexp.html#xmlExpMaxToken">xmlExpMaxToken</a><br />
|
<a href="html/libxml-xmlregexp.html#xmlExpMaxToken">xmlExpMaxToken</a><br />
|
||||||
<a href="html/libxml-xmlregexp.html#xmlExpNewCtxt">xmlExpNewCtxt</a><br />
|
<a href="html/libxml-xmlregexp.html#xmlExpNewCtxt">xmlExpNewCtxt</a><br />
|
||||||
<a href="html/libxml-pattern.html#xmlPatternMaxDepth">xmlPatternMaxDepth</a><br />
|
<a href="html/libxml-pattern.html#xmlPatternMaxDepth">xmlPatternMaxDepth</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>maybe</dt><dd><a href="html/libxml-schemasInternals.html#_xmlSchemaElement">_xmlSchemaElement</a><br />
|
</dd><dt>maybe</dt><dd><a href="html/libxml-schemasInternals.html#_xmlSchemaElement">_xmlSchemaElement</a><br />
|
||||||
</dd><dt>mean</dt><dd><a href="html/libxml-pattern.html#xmlPatternMinDepth">xmlPatternMinDepth</a><br />
|
</dd><dt>mean</dt><dd><a href="html/libxml-pattern.html#xmlPatternMinDepth">xmlPatternMinDepth</a><br />
|
||||||
</dd><dt>means</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpNewRange">xmlExpNewRange</a><br />
|
</dd><dt>means</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpNewRange">xmlExpNewRange</a><br />
|
||||||
@@ -238,6 +239,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-pattern.html#xmlPatternMinDepth">xmlPatternMinDepth</a><br />
|
<a href="html/libxml-pattern.html#xmlPatternMinDepth">xmlPatternMinDepth</a><br />
|
||||||
</dd><dt>minus</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
</dd><dt>minus</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
||||||
</dd><dt>minute</dt><dd><a href="html/libxml-nanoftp.html#ftpListCallback">ftpListCallback</a><br />
|
</dd><dt>minute</dt><dd><a href="html/libxml-nanoftp.html#ftpListCallback">ftpListCallback</a><br />
|
||||||
|
</dd><dt>misc</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>misleading</dt><dd><a href="html/libxml-parserInternals.html#xmlParsePEReference">xmlParsePEReference</a><br />
|
</dd><dt>misleading</dt><dd><a href="html/libxml-parserInternals.html#xmlParsePEReference">xmlParsePEReference</a><br />
|
||||||
<a href="html/libxml-parserInternals.html#xmlParserHandlePEReference">xmlParserHandlePEReference</a><br />
|
<a href="html/libxml-parserInternals.html#xmlParserHandlePEReference">xmlParserHandlePEReference</a><br />
|
||||||
</dd><dt>mixed</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a><br />
|
</dd><dt>mixed</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a><br />
|
||||||
|
|||||||
@@ -39,7 +39,9 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="APIchunk29.html">y-z</a>
|
<a href="APIchunk29.html">y-z</a>
|
||||||
</h2><h2>Letter o:</h2><dl><dt>object?</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathNumberFunction">xmlXPathNumberFunction</a><br />
|
</h2><h2>Letter o:</h2><dl><dt>object?</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathNumberFunction">xmlXPathNumberFunction</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
||||||
</dd><dt>objects</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
|
</dd><dt>objects</dt><dd><a href="html/libxml-xpath.html#_xmlXPathContext">_xmlXPathContext</a><br />
|
||||||
|
<a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathDivValues">xmlXPathDivValues</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathDivValues">xmlXPathDivValues</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathEqualValues">xmlXPathEqualValues</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathEqualValues">xmlXPathEqualValues</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathFreeNodeSetList">xmlXPathFreeNodeSetList</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathFreeNodeSetList">xmlXPathFreeNodeSetList</a><br />
|
||||||
@@ -236,6 +238,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlsave.html#xmlSaveToFilename">xmlSaveToFilename</a><br />
|
<a href="html/libxml-xmlsave.html#xmlSaveToFilename">xmlSaveToFilename</a><br />
|
||||||
<a href="html/libxml-xmlsave.html#xmlSaveToIO">xmlSaveToIO</a><br />
|
<a href="html/libxml-xmlsave.html#xmlSaveToIO">xmlSaveToIO</a><br />
|
||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
|
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>ordered</dt><dd><a href="html/libxml-list.html#xmlListAppend">xmlListAppend</a><br />
|
</dd><dt>ordered</dt><dd><a href="html/libxml-list.html#xmlListAppend">xmlListAppend</a><br />
|
||||||
<a href="html/libxml-list.html#xmlListInsert">xmlListInsert</a><br />
|
<a href="html/libxml-list.html#xmlListInsert">xmlListInsert</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathNextAncestor">xmlXPathNextAncestor</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathNextAncestor">xmlXPathNextAncestor</a><br />
|
||||||
|
|||||||
@@ -146,6 +146,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>per</dt><dd><a href="html/libxml-xmlerror.html#xmlGetLastError">xmlGetLastError</a><br />
|
</dd><dt>per</dt><dd><a href="html/libxml-xmlerror.html#xmlGetLastError">xmlGetLastError</a><br />
|
||||||
<a href="html/libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a><br />
|
<a href="html/libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a><br />
|
||||||
<a href="html/libxml-valid.html#xmlValidateElementDecl">xmlValidateElementDecl</a><br />
|
<a href="html/libxml-valid.html#xmlValidateElementDecl">xmlValidateElementDecl</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>performance</dt><dd><a href="html/libxml-tree.html#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a><br />
|
</dd><dt>performance</dt><dd><a href="html/libxml-tree.html#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a><br />
|
||||||
<a href="html/libxml-tree.html#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a><br />
|
<a href="html/libxml-tree.html#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a><br />
|
||||||
</dd><dt>performed</dt><dd><a href="html/libxml-HTMLparser.html#htmlNodeStatus">htmlNodeStatus</a><br />
|
</dd><dt>performed</dt><dd><a href="html/libxml-HTMLparser.html#htmlNodeStatus">htmlNodeStatus</a><br />
|
||||||
|
|||||||
@@ -541,9 +541,11 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-hash.html#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a><br />
|
<a href="html/libxml-hash.html#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a><br />
|
||||||
</dd><dt>retry</dt><dd><a href="html/libxml-valid.html#xmlValidGetValidElements">xmlValidGetValidElements</a><br />
|
</dd><dt>retry</dt><dd><a href="html/libxml-valid.html#xmlValidGetValidElements">xmlValidGetValidElements</a><br />
|
||||||
</dd><dt>returning</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
</dd><dt>returning</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
|
||||||
|
</dd><dt>reusal</dt><dd><a href="html/libxml-xpath.html#_xmlXPathContext">_xmlXPathContext</a><br />
|
||||||
</dd><dt>reuse</dt><dd><a href="html/libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a><br />
|
</dd><dt>reuse</dt><dd><a href="html/libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a><br />
|
||||||
<a href="html/libxml-xmlregexp.html#xmlRegExecPushString">xmlRegExecPushString</a><br />
|
<a href="html/libxml-xmlregexp.html#xmlRegExecPushString">xmlRegExecPushString</a><br />
|
||||||
<a href="html/libxml-xmlregexp.html#xmlRegExecPushString2">xmlRegExecPushString2</a><br />
|
<a href="html/libxml-xmlregexp.html#xmlRegExecPushString2">xmlRegExecPushString2</a><br />
|
||||||
|
</dd><dt>reused</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>reuses</dt><dd><a href="html/libxml-HTMLparser.html#htmlCtxtReadDoc">htmlCtxtReadDoc</a><br />
|
</dd><dt>reuses</dt><dd><a href="html/libxml-HTMLparser.html#htmlCtxtReadDoc">htmlCtxtReadDoc</a><br />
|
||||||
<a href="html/libxml-HTMLparser.html#htmlCtxtReadFd">htmlCtxtReadFd</a><br />
|
<a href="html/libxml-HTMLparser.html#htmlCtxtReadFd">htmlCtxtReadFd</a><br />
|
||||||
<a href="html/libxml-HTMLparser.html#htmlCtxtReadFile">htmlCtxtReadFile</a><br />
|
<a href="html/libxml-HTMLparser.html#htmlCtxtReadFile">htmlCtxtReadFile</a><br />
|
||||||
|
|||||||
@@ -180,6 +180,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>self</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathNextSelf">xmlXPathNextSelf</a><br />
|
</dd><dt>self</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathNextSelf">xmlXPathNextSelf</a><br />
|
||||||
</dd><dt>semantic</dt><dd><a href="html/libxml-xmlautomata.html#xmlAutomataNewNegTrans">xmlAutomataNewNegTrans</a><br />
|
</dd><dt>semantic</dt><dd><a href="html/libxml-xmlautomata.html#xmlAutomataNewNegTrans">xmlAutomataNewNegTrans</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathNodeSetFreeNs">xmlXPathNodeSetFreeNs</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathNodeSetFreeNs">xmlXPathNodeSetFreeNs</a><br />
|
||||||
|
</dd><dt>semantics</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>sense</dt><dd><a href="html/libxml-entities.html#xmlCreateEntitiesTable">xmlCreateEntitiesTable</a><br />
|
</dd><dt>sense</dt><dd><a href="html/libxml-entities.html#xmlCreateEntitiesTable">xmlCreateEntitiesTable</a><br />
|
||||||
</dd><dt>separated</dt><dd><a href="html/libxml-catalog.html#xmlLoadCatalogs">xmlLoadCatalogs</a><br />
|
</dd><dt>separated</dt><dd><a href="html/libxml-catalog.html#xmlLoadCatalogs">xmlLoadCatalogs</a><br />
|
||||||
</dd><dt>separately</dt><dd><a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
</dd><dt>separately</dt><dd><a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
||||||
@@ -261,6 +262,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xpathInternals.html#xmlXPathDifference">xmlXPathDifference</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathDifference">xmlXPathDifference</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathIntersection">xmlXPathIntersection</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathIntersection">xmlXPathIntersection</a><br />
|
||||||
</dd><dt>setting</dt><dd><a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
</dd><dt>setting</dt><dd><a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>setups</dt><dd><a href="html/libxml-parserInternals.html#xmlParseEncodingDecl">xmlParseEncodingDecl</a><br />
|
</dd><dt>setups</dt><dd><a href="html/libxml-parserInternals.html#xmlParseEncodingDecl">xmlParseEncodingDecl</a><br />
|
||||||
</dd><dt>sgmlsource</dt><dd><a href="html/libxml-SAX.html#getSystemId">getSystemId</a><br />
|
</dd><dt>sgmlsource</dt><dd><a href="html/libxml-SAX.html#getSystemId">getSystemId</a><br />
|
||||||
<a href="html/libxml-SAX2.html#xmlSAX2GetSystemId">xmlSAX2GetSystemId</a><br />
|
<a href="html/libxml-SAX2.html#xmlSAX2GetSystemId">xmlSAX2GetSystemId</a><br />
|
||||||
@@ -388,6 +390,8 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>skipped</dt><dd><a href="html/libxml-parserInternals.html#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a><br />
|
</dd><dt>skipped</dt><dd><a href="html/libxml-parserInternals.html#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a><br />
|
||||||
<a href="html/libxml-parserInternals.html#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a><br />
|
<a href="html/libxml-parserInternals.html#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a><br />
|
||||||
<a href="html/libxml-parserInternals.html#xmlSkipBlankChars">xmlSkipBlankChars</a><br />
|
<a href="html/libxml-parserInternals.html#xmlSkipBlankChars">xmlSkipBlankChars</a><br />
|
||||||
|
</dd><dt>slot</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
|
</dd><dt>slots</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>smallest</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
|
</dd><dt>smallest</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
|
||||||
</dd><dt>socket</dt><dd><a href="html/libxml-xmlIO.html#xmlCheckFilename">xmlCheckFilename</a><br />
|
</dd><dt>socket</dt><dd><a href="html/libxml-xmlIO.html#xmlCheckFilename">xmlCheckFilename</a><br />
|
||||||
<a href="html/libxml-nanoftp.html#xmlNanoFTPGetSocket">xmlNanoFTPGetSocket</a><br />
|
<a href="html/libxml-nanoftp.html#xmlNanoFTPGetSocket">xmlNanoFTPGetSocket</a><br />
|
||||||
@@ -797,6 +801,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-hash.html#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a><br />
|
<a href="html/libxml-hash.html#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a><br />
|
||||||
<a href="html/libxml-xmlschemastypes.html#xmlSchemaValueAppend">xmlSchemaValueAppend</a><br />
|
<a href="html/libxml-xmlschemastypes.html#xmlSchemaValueAppend">xmlSchemaValueAppend</a><br />
|
||||||
<a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>succeeds</dt><dd><a href="html/libxml-xmlIO.html#xmlCheckFilename">xmlCheckFilename</a><br />
|
</dd><dt>succeeds</dt><dd><a href="html/libxml-xmlIO.html#xmlCheckFilename">xmlCheckFilename</a><br />
|
||||||
<a href="html/libxml-xmlwriter.html#xmlNewTextWriterPushParser">xmlNewTextWriterPushParser</a><br />
|
<a href="html/libxml-xmlwriter.html#xmlNewTextWriterPushParser">xmlNewTextWriterPushParser</a><br />
|
||||||
</dd><dt>successful</dt><dd><a href="html/libxml-catalog.html#xmlACatalogAdd">xmlACatalogAdd</a><br />
|
</dd><dt>successful</dt><dd><a href="html/libxml-catalog.html#xmlACatalogAdd">xmlACatalogAdd</a><br />
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
</dd><dt>Optional</dt><dd><a href="html/libxml-HTMLparser.html#_htmlElemDesc">_htmlElemDesc</a><br />
|
</dd><dt>Optional</dt><dd><a href="html/libxml-HTMLparser.html#_htmlElemDesc">_htmlElemDesc</a><br />
|
||||||
</dd><dt>Oriya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOriya">xmlUCSIsOriya</a><br />
|
</dd><dt>Oriya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOriya">xmlUCSIsOriya</a><br />
|
||||||
</dd><dt>Osmanya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOsmanya">xmlUCSIsOsmanya</a><br />
|
</dd><dt>Osmanya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOsmanya">xmlUCSIsOsmanya</a><br />
|
||||||
|
</dd><dt>Other</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>Otherwise</dt><dd><a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
|
</dd><dt>Otherwise</dt><dd><a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
|
||||||
<a href="html/libxml-pattern.html#xmlStreamPushAttr">xmlStreamPushAttr</a><br />
|
<a href="html/libxml-pattern.html#xmlStreamPushAttr">xmlStreamPushAttr</a><br />
|
||||||
</dd><dt>Output</dt><dd><a href="html/libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a><br />
|
</dd><dt>Output</dt><dd><a href="html/libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a><br />
|
||||||
|
|||||||
@@ -114,6 +114,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-parserInternals.html#xmlParseMarkupDecl">xmlParseMarkupDecl</a><br />
|
<a href="html/libxml-parserInternals.html#xmlParseMarkupDecl">xmlParseMarkupDecl</a><br />
|
||||||
</dd><dt>Then</dt><dd><a href="html/libxml-valid.html#xmlValidateOneElement">xmlValidateOneElement</a><br />
|
</dd><dt>Then</dt><dd><a href="html/libxml-valid.html#xmlValidateOneElement">xmlValidateOneElement</a><br />
|
||||||
</dd><dt>There</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpParse">xmlExpParse</a><br />
|
</dd><dt>There</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpParse">xmlExpParse</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>Those</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
|
</dd><dt>Those</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
|
||||||
</dd><dt>Thus:</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
|
</dd><dt>Thus:</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
|
||||||
</dd><dt>Tibetan</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsTibetan">xmlUCSIsTibetan</a><br />
|
</dd><dt>Tibetan</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsTibetan">xmlUCSIsTibetan</a><br />
|
||||||
@@ -249,6 +250,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidate">xmlTextReaderSchemaValidate</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#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
|
||||||
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
<a href="html/libxml-xmlreader.html#xmlTextReaderSetSchema">xmlTextReaderSetSchema</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
</dd><dt>Used</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ANY_LAX">XML_SCHEMAS_ANY_LAX</a><br />
|
</dd><dt>Used</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ANY_LAX">XML_SCHEMAS_ANY_LAX</a><br />
|
||||||
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ANY_STRICT">XML_SCHEMAS_ANY_STRICT</a><br />
|
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ANY_STRICT">XML_SCHEMAS_ANY_STRICT</a><br />
|
||||||
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ATTR_USE_PROHIBITED">XML_SCHEMAS_ATTR_USE_PROHIBITED</a><br />
|
<a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ATTR_USE_PROHIBITED">XML_SCHEMAS_ATTR_USE_PROHIBITED</a><br />
|
||||||
|
|||||||
@@ -2457,6 +2457,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR">XML_SCHEMAV_INVALIDATTR</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR">XML_SCHEMAV_INVALIDATTR</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM">XML_SCHEMAV_INVALIDELEM</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM">XML_SCHEMAV_INVALIDELEM</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT">XML_SCHEMAV_ISABSTRACT</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT">XML_SCHEMAV_ISABSTRACT</a><br />
|
||||||
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISC">XML_SCHEMAV_MISC</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISSING">XML_SCHEMAV_MISSING</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISSING">XML_SCHEMAV_MISSING</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK">XML_SCHEMAV_NOROLLBACK</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK">XML_SCHEMAV_NOROLLBACK</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT">XML_SCHEMAV_NOROOT</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT">XML_SCHEMAV_NOROOT</a><br />
|
||||||
@@ -3274,6 +3275,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xpath.html#xmlXPathCompiledEval">xmlXPathCompiledEval</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathCompiledEval">xmlXPathCompiledEval</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathContext">xmlXPathContext</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathContext">xmlXPathContext</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertNumber">xmlXPathConvertNumber</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertNumber">xmlXPathConvertNumber</a><br />
|
||||||
|
|||||||
@@ -2164,6 +2164,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xpathInternals.html#xmlXPathDebugDumpCompExpr">xmlXPathDebugDumpCompExpr</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathDebugDumpCompExpr">xmlXPathDebugDumpCompExpr</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathFreeCompExpr">xmlXPathFreeCompExpr</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathFreeCompExpr">xmlXPathFreeCompExpr</a><br />
|
||||||
</p><h2>Type xmlXPathContextPtr:</h2><p><a href="html/libxml-xpath.html#xmlXPathCompiledEval">xmlXPathCompiledEval</a><br />
|
</p><h2>Type xmlXPathContextPtr:</h2><p><a href="html/libxml-xpath.html#xmlXPathCompiledEval">xmlXPathCompiledEval</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathCtxtCompile">xmlXPathCtxtCompile</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathCtxtCompile">xmlXPathCtxtCompile</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathEval">xmlXPathEval</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathEval">xmlXPathEval</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathEvalExpression">xmlXPathEvalExpression</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathEvalExpression">xmlXPathEvalExpression</a><br />
|
||||||
|
|||||||
@@ -1199,6 +1199,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR">XML_SCHEMAV_INVALIDATTR</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR">XML_SCHEMAV_INVALIDATTR</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM">XML_SCHEMAV_INVALIDELEM</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM">XML_SCHEMAV_INVALIDELEM</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT">XML_SCHEMAV_ISABSTRACT</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT">XML_SCHEMAV_ISABSTRACT</a><br />
|
||||||
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISC">XML_SCHEMAV_MISC</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISSING">XML_SCHEMAV_MISSING</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_MISSING">XML_SCHEMAV_MISSING</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK">XML_SCHEMAV_NOROLLBACK</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK">XML_SCHEMAV_NOROLLBACK</a><br />
|
||||||
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT">XML_SCHEMAV_NOROOT</a><br />
|
<a href="html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT">XML_SCHEMAV_NOROOT</a><br />
|
||||||
@@ -3292,6 +3293,7 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<a href="html/libxml-xpathInternals.html#xmlXPathContainsFunction">xmlXPathContainsFunction</a><br />
|
<a href="html/libxml-xpathInternals.html#xmlXPathContainsFunction">xmlXPathContainsFunction</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathContext">xmlXPathContext</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathContext">xmlXPathContext</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a><br />
|
||||||
|
<a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a><br />
|
||||||
<a href="html/libxml-xpath.html#xmlXPathConvertNumber">xmlXPathConvertNumber</a><br />
|
<a href="html/libxml-xpath.html#xmlXPathConvertNumber">xmlXPathConvertNumber</a><br />
|
||||||
|
|||||||
15
doc/DOM.html
15
doc/DOM.html
File diff suppressed because one or more lines are too long
338
doc/FAQ.html
338
doc/FAQ.html
@@ -12,53 +12,51 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<li><a href="FAQ.html#Compilatio">Compilation</a></li>
|
<li><a href="FAQ.html#Compilatio">Compilation</a></li>
|
||||||
<li><a href="FAQ.html#Developer">Developer corner</a></li>
|
<li><a href="FAQ.html#Developer">Developer corner</a></li>
|
||||||
</ul><h3><a name="License" id="License">License</a>(s)</h3><ol><li><em>Licensing Terms for libxml</em>
|
</ul><h3><a name="License" id="License">License</a>(s)</h3><ol><li><em>Licensing Terms for libxml</em>
|
||||||
<p>libxml2 is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
|
<p>libxml2 is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MITLicense</a>;
|
||||||
License</a>; see the file Copyright in the distribution for the precise
|
see the file Copyright in the distribution for the precisewording</p>
|
||||||
wording</p>
|
|
||||||
</li>
|
</li>
|
||||||
<li><em>Can I embed libxml2 in a proprietary application ?</em>
|
<li><em>Can I embed libxml2 in a proprietary application ?</em>
|
||||||
<p>Yes. The MIT License allows you to keep proprietary the changes you
|
<p>Yes. The MIT License allows you to keep proprietary the changes
|
||||||
made to libxml, but it would be graceful to send-back bug fixes and
|
youmade to libxml, but it would be graceful to send-back bug fixes
|
||||||
improvements as patches for possible incorporation in the main
|
andimprovements as patches for possible incorporation in the
|
||||||
development tree.</p>
|
maindevelopment tree.</p>
|
||||||
</li>
|
</li>
|
||||||
</ol><h3><a name="Installati" id="Installati">Installation</a></h3><ol><li><strong><span style="background-color: #FF0000">Do Not Use
|
</ol><h3><a name="Installati" id="Installati">Installation</a></h3><ol><li><strong><span style="background-color: #FF0000">Do Not
|
||||||
libxml1</span></strong>, use libxml2</li>
|
Uselibxml1</span></strong>, use libxml2</li>
|
||||||
<li><em>Where can I get libxml</em> ?
|
<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>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
|
<p>Most Linux and BSD distributions include libxml, this is probably
|
||||||
safer way for end-users to use libxml.</p>
|
thesafer 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>
|
<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>
|
</li>
|
||||||
<li><em>I see libxml and libxml2 releases, which one should I install ?</em>
|
<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
|
<ul><li>If you are not constrained by backward compatibility issues
|
||||||
existing applications, install libxml2 only</li>
|
withexisting applications, install libxml2 only</li>
|
||||||
<li>If you are not doing development, you can safely install both.
|
<li>If you are not doing development, you can safely install
|
||||||
Usually the packages <a href="http://rpmfind.net/linux/RPM/libxml.html">libxml</a> and <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a> are
|
both.Usually the packages <a href="http://rpmfind.net/linux/RPM/libxml.html">libxml</a>and <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a>arecompatible
|
||||||
compatible (this is not the case for development packages).</li>
|
(this is not the case for development packages).</li>
|
||||||
<li>If you are a developer and your system provides separate packaging
|
<li>If you are a developer and your system provides separate
|
||||||
for shared libraries and the development components, it is possible
|
packagingfor shared libraries and the development components, it is
|
||||||
to install libxml and libxml2, and also <a href="http://rpmfind.net/linux/RPM/libxml-devel.html">libxml-devel</a>
|
possibleto install libxml and libxml2, and also <a href="http://rpmfind.net/linux/RPM/libxml-devel.html">libxml-devel</a>and
|
||||||
and <a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>
|
<a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>too
|
||||||
too for libxml2 >= 2.3.0</li>
|
for libxml2 >= 2.3.0</li>
|
||||||
<li>If you are developing a new application, please develop against
|
<li>If you are developing a new application, please develop
|
||||||
libxml2(-devel)</li>
|
againstlibxml2(-devel)</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><em>I can't install the libxml package, it conflicts with libxml0</em>
|
<li><em>I can't install the libxml package, it conflicts with libxml0</em>
|
||||||
<p>You probably have an old libxml0 package used to provide the shared
|
<p>You probably have an old libxml0 package used to provide the
|
||||||
library for libxml.so.0, you can probably safely remove it. The libxml
|
sharedlibrary for libxml.so.0, you can probably safely remove it. The
|
||||||
packages provided on <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a> provide
|
libxmlpackages provided on <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a>providelibxml.so.0</p>
|
||||||
libxml.so.0</p>
|
|
||||||
</li>
|
</li>
|
||||||
<li><em>I can't install the libxml(2) RPM package due to failed
|
<li><em>I can't install the libxml(2) RPM package due to
|
||||||
dependencies</em>
|
faileddependencies</em>
|
||||||
<p>The most generic solution is to re-fetch the latest src.rpm , and
|
<p>The most generic solution is to re-fetch the latest src.rpm ,
|
||||||
rebuild it locally with</p>
|
andrebuild it locally with</p>
|
||||||
<p><code>rpm --rebuild libxml(2)-xxx.src.rpm</code>.</p>
|
<p><code>rpm --rebuild libxml(2)-xxx.src.rpm</code>.</p>
|
||||||
<p>If everything goes well it will generate two binary rpm packages (one
|
<p>If everything goes well it will generate two binary rpm packages
|
||||||
providing the shared libs and xmllint, and the other one, the -devel
|
(oneproviding the shared libs and xmllint, and the other one, the
|
||||||
package, providing includes, static libraries and scripts needed to build
|
-develpackage, providing includes, static libraries and scripts needed to
|
||||||
applications with libxml(2)) that you can install locally.</p>
|
buildapplications with libxml(2)) that you can install locally.</p>
|
||||||
</li>
|
</li>
|
||||||
</ol><h3><a name="Compilatio" id="Compilatio">Compilation</a></h3><ol><li><em>What is the process to compile libxml2 ?</em>
|
</ol><h3><a name="Compilatio" id="Compilatio">Compilation</a></h3><ol><li><em>What is the process to compile libxml2 ?</em>
|
||||||
<p>As most UNIX libraries libxml2 follows the "standard":</p>
|
<p>As most UNIX libraries libxml2 follows the "standard":</p>
|
||||||
@@ -69,109 +67,107 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<p><code>./configure [possible options]</code></p>
|
<p><code>./configure [possible options]</code></p>
|
||||||
<p><code>make</code></p>
|
<p><code>make</code></p>
|
||||||
<p><code>make install</code></p>
|
<p><code>make install</code></p>
|
||||||
<p>At that point you may have to rerun ldconfig or a similar utility to
|
<p>At that point you may have to rerun ldconfig or a similar utility
|
||||||
update your list of installed shared libs.</p>
|
toupdate your list of installed shared libs.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>What other libraries are needed to compile/install libxml2 ?</em>
|
<li><em>What other libraries are needed to compile/install libxml2 ?</em>
|
||||||
<p>Libxml2 does not require any other library, the normal C ANSI API
|
<p>Libxml2 does not require any other library, the normal C ANSI
|
||||||
should be sufficient (please report any violation to this rule you may
|
APIshould be sufficient (please report any violation to this rule you
|
||||||
find).</p>
|
mayfind).</p>
|
||||||
<p>However if found at configuration time libxml2 will detect and use the
|
<p>However if found at configuration time libxml2 will detect and use
|
||||||
following libs:</p>
|
thefollowing libs:</p>
|
||||||
<ul><li><a href="http://www.info-zip.org/pub/infozip/zlib/">libz</a> : a
|
<ul><li><a href="http://www.info-zip.org/pub/infozip/zlib/">libz</a>:
|
||||||
highly portable and available widely compression library.</li>
|
ahighly portable and available widely compression library.</li>
|
||||||
<li>iconv: a powerful character encoding conversion library. It is
|
<li>iconv: a powerful character encoding conversion library. It
|
||||||
included by default in recent glibc libraries, so it doesn't need to
|
isincluded by default in recent glibc libraries, so it doesn't need
|
||||||
be installed specifically on Linux. It now seems a <a href="http://www.opennc.org/onlinepubs/7908799/xsh/iconv.html">part
|
tobe installed specifically on Linux. It now seems a <a href="http://www.opennc.org/onlinepubs/7908799/xsh/iconv.html">partof
|
||||||
of the official UNIX</a> specification. Here is one <a href="http://www.gnu.org/software/libiconv/">implementation of the
|
the official UNIX</a>specification. Here is one <a href="http://www.gnu.org/software/libiconv/">implementation of
|
||||||
library</a> which source can be found <a href="ftp://ftp.ilog.fr/pub/Users/haible/gnu/">here</a>.</li>
|
thelibrary</a>which source can be found <a href="ftp://ftp.ilog.fr/pub/Users/haible/gnu/">here</a>.</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><em>Make check fails on some platforms</em>
|
<li><em>Make check fails on some platforms</em>
|
||||||
<p>Sometimes the regression tests' results don't completely match the
|
<p>Sometimes the regression tests' results don't completely match
|
||||||
value produced by the parser, and the makefile uses diff to print the
|
thevalue produced by the parser, and the makefile uses diff to print
|
||||||
delta. On some platforms the diff return breaks the compilation process;
|
thedelta. On some platforms the diff return breaks the compilation
|
||||||
if the diff is small this is probably not a serious problem.</p>
|
process;if the diff is small this is probably not a serious problem.</p>
|
||||||
<p>Sometimes (especially on Solaris) make checks fail due to limitations
|
<p>Sometimes (especially on Solaris) make checks fail due to
|
||||||
in make. Try using GNU-make instead.</p>
|
limitationsin make. Try using GNU-make instead.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>I use the CVS version and there is no configure script</em>
|
<li><em>I use the CVS version and there is no configure script</em>
|
||||||
<p>The configure script (and other Makefiles) are generated. Use the
|
<p>The configure script (and other Makefiles) are generated. Use
|
||||||
autogen.sh script to regenerate the configure script and Makefiles,
|
theautogen.sh script to regenerate the configure script and
|
||||||
like:</p>
|
Makefiles,like:</p>
|
||||||
<p><code>./autogen.sh --prefix=/usr --disable-shared</code></p>
|
<p><code>./autogen.sh --prefix=/usr --disable-shared</code></p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>I have troubles when running make tests with gcc-3.0</em>
|
<li><em>I have troubles when running make tests with gcc-3.0</em>
|
||||||
<p>It seems the initial release of gcc-3.0 has a problem with the
|
<p>It seems the initial release of gcc-3.0 has a problem with
|
||||||
optimizer which miscompiles the URI module. Please use another
|
theoptimizer which miscompiles the URI module. Please use
|
||||||
compiler.</p>
|
anothercompiler.</p>
|
||||||
</li>
|
</li>
|
||||||
</ol><h3><a name="Developer" id="Developer">Developer</a> corner</h3><ol><li><em>Troubles compiling or linking programs using libxml2</em>
|
</ol><h3><a name="Developer" id="Developer">Developer</a>corner</h3><ol><li><em>Troubles compiling or linking programs using libxml2</em>
|
||||||
<p>Usually the problem comes from the fact that the compiler doesn't get
|
<p>Usually the problem comes from the fact that the compiler doesn't
|
||||||
the right compilation or linking flags. There is a small shell script
|
getthe right compilation or linking flags. There is a small shell
|
||||||
<code>xml2-config</code> which is installed as part of libxml2 usual
|
script<code>xml2-config</code>which is installed as part of libxml2
|
||||||
install process which provides those flags. Use</p>
|
usualinstall process which provides those flags. Use</p>
|
||||||
<p><code>xml2-config --cflags</code></p>
|
<p><code>xml2-config --cflags</code></p>
|
||||||
<p>to get the compilation flags and</p>
|
<p>to get the compilation flags and</p>
|
||||||
<p><code>xml2-config --libs</code></p>
|
<p><code>xml2-config --libs</code></p>
|
||||||
<p>to get the linker flags. Usually this is done directly from the
|
<p>to get the linker flags. Usually this is done directly from
|
||||||
Makefile as:</p>
|
theMakefile as:</p>
|
||||||
<p><code>CFLAGS=`xml2-config --cflags`</code></p>
|
<p><code>CFLAGS=`xml2-config --cflags`</code></p>
|
||||||
<p><code>LIBS=`xml2-config --libs`</code></p>
|
<p><code>LIBS=`xml2-config --libs`</code></p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>I want to install my own copy of libxml2 in my home directory and
|
<li><em>I want to install my own copy of libxml2 in my home directory
|
||||||
link my programs against it, but it doesn't work</em>
|
andlink my programs against it, but it doesn't work</em>
|
||||||
<p>There are many different ways to accomplish this. Here is one way to
|
<p>There are many different ways to accomplish this. Here is one way
|
||||||
do this under Linux. Suppose your home directory is <code>/home/user.
|
todo this under Linux. Suppose your home directory is
|
||||||
</code>Then:</p>
|
<code>/home/user.</code>Then:</p>
|
||||||
<ul><li>Create a subdirectory, let's call it <code>myxml</code></li>
|
<ul><li>Create a subdirectory, let's call it <code>myxml</code></li>
|
||||||
<li>unpack the libxml2 distribution into that subdirectory</li>
|
<li>unpack the libxml2 distribution into that subdirectory</li>
|
||||||
<li>chdir into the unpacked distribution
|
<li>chdir into the unpacked distribution(<code>/home/user/myxml/libxml2
|
||||||
(<code>/home/user/myxml/libxml2 </code>)</li>
|
</code>)</li>
|
||||||
<li>configure the library using the "<code>--prefix</code>" switch,
|
<li>configure the library using the "<code>--prefix</code>"
|
||||||
specifying an installation subdirectory in
|
switch,specifying an installation subdirectory
|
||||||
<code>/home/user/myxml</code>, e.g.
|
in<code>/home/user/myxml</code>, e.g.
|
||||||
<p><code>./configure --prefix /home/user/myxml/xmlinst</code> {other
|
<p><code>./configure --prefix
|
||||||
configuration options}</p>
|
/home/user/myxml/xmlinst</code>{otherconfiguration options}</p>
|
||||||
</li>
|
</li>
|
||||||
<li>now run <code>make</code> followed by <code>make install</code></li>
|
<li>now run <code>make</code>followed by <code>make install</code></li>
|
||||||
<li>At this point, the installation subdirectory contains the complete
|
<li>At this point, the installation subdirectory contains the
|
||||||
"private" include files, library files and binary program files (e.g.
|
complete"private" include files, library files and binary program
|
||||||
xmllint), located in
|
files (e.g.xmllint), located in
|
||||||
<p><code>/home/user/myxml/xmlinst/lib,
|
<p><code>/home/user/myxml/xmlinst/lib,/home/user/myxml/xmlinst/include
|
||||||
/home/user/myxml/xmlinst/include </code> and <code>
|
</code>and <code>/home/user/myxml/xmlinst/bin</code></p>
|
||||||
/home/user/myxml/xmlinst/bin</code></p>
|
|
||||||
respectively.</li>
|
respectively.</li>
|
||||||
<li>In order to use this "private" library, you should first add it to
|
<li>In order to use this "private" library, you should first add it
|
||||||
the beginning of your default PATH (so that your own private program
|
tothe beginning of your default PATH (so that your own private
|
||||||
files such as xmllint will be used instead of the normal system
|
programfiles such as xmllint will be used instead of the normal
|
||||||
ones). To do this, the Bash command would be
|
systemones). To do this, the Bash command would be
|
||||||
<p><code>export PATH=/home/user/myxml/xmlinst/bin:$PATH</code></p>
|
<p><code>export PATH=/home/user/myxml/xmlinst/bin:$PATH</code></p>
|
||||||
</li>
|
</li>
|
||||||
<li>Now suppose you have a program <code>test1.c</code> that you would
|
<li>Now suppose you have a program <code>test1.c</code>that you
|
||||||
like to compile with your "private" library. Simply compile it using
|
wouldlike to compile with your "private" library. Simply compile it
|
||||||
the command
|
usingthe command
|
||||||
<p><code>gcc `xml2-config --cflags --libs` -o test test.c</code></p>
|
<p><code>gcc `xml2-config --cflags --libs` -o test test.c</code></p>
|
||||||
Note that, because your PATH has been set with <code>
|
Note that, because your PATH has been set with
|
||||||
/home/user/myxml/xmlinst/bin</code> at the beginning, the xml2-config
|
<code>/home/user/myxml/xmlinst/bin</code>at the beginning, the
|
||||||
program which you just installed will be used instead of the system
|
xml2-configprogram which you just installed will be used instead of
|
||||||
default one, and this will <em>automatically</em> get the correct
|
the systemdefault one, and this will <em>automatically</em>get the
|
||||||
libraries linked with your program.</li>
|
correctlibraries linked with your program.</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
|
|
||||||
<p></p>
|
<p></p>
|
||||||
<li><em>xmlDocDump() generates output on one line.</em>
|
<li><em>xmlDocDump() generates output on one line.</em>
|
||||||
<p>Libxml2 will not <strong>invent</strong> spaces in the content of a
|
<p>Libxml2 will not <strong>invent</strong>spaces in the content of
|
||||||
document since <strong>all spaces in the content of a document are
|
adocument since <strong>all spaces in the content of a document
|
||||||
significant</strong>. If you build a tree from the API and want
|
aresignificant</strong>. If you build a tree from the API and
|
||||||
indentation:</p>
|
wantindentation:</p>
|
||||||
<ol><li>the correct way is to generate those yourself too.</li>
|
<ol><li>the correct way is to generate those yourself too.</li>
|
||||||
<li>the dangerous way is to ask libxml2 to add those blanks to your
|
<li>the dangerous way is to ask libxml2 to add those blanks to
|
||||||
content <strong>modifying the content of your document in the
|
yourcontent <strong>modifying the content of your document in
|
||||||
process</strong>. The result may not be what you expect. There is
|
theprocess</strong>. The result may not be what you expect. There
|
||||||
<strong>NO</strong> way to guarantee that such a modification won't
|
is<strong>NO</strong>way to guarantee that such a modification
|
||||||
affect other parts of the content of your document. See <a href="http://xmlsoft.org/html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault
|
won'taffect other parts of the content of your document. See <a href="http://xmlsoft.org/html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault()</a>and
|
||||||
()</a> and <a href="http://xmlsoft.org/html/libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile
|
<a href="http://xmlsoft.org/html/libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile()</a></li>
|
||||||
()</a></li>
|
|
||||||
</ol></li>
|
</ol></li>
|
||||||
<li>Extra nodes in the document:
|
<li>Extra nodes in the document:
|
||||||
<p><em>For a XML file as below:</em></p>
|
<p><em>For a XML file as below:</em></p>
|
||||||
@@ -180,10 +176,10 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<NODE CommFlag="0"/>
|
<NODE CommFlag="0"/>
|
||||||
<NODE CommFlag="1"/>
|
<NODE CommFlag="1"/>
|
||||||
</PLAN></pre>
|
</PLAN></pre>
|
||||||
<p><em>after parsing it with the function
|
<p><em>after parsing it with the
|
||||||
pxmlDoc=xmlParseFile(...);</em></p>
|
functionpxmlDoc=xmlParseFile(...);</em></p>
|
||||||
<p><em>I want to the get the content of the first node (node with the
|
<p><em>I want to the get the content of the first node (node with
|
||||||
CommFlag="0")</em></p>
|
theCommFlag="0")</em></p>
|
||||||
<p><em>so I did it as following;</em></p>
|
<p><em>so I did it as following;</em></p>
|
||||||
<pre>xmlNodePtr pnode;
|
<pre>xmlNodePtr pnode;
|
||||||
pnode=pxmlDoc->children->children;</pre>
|
pnode=pxmlDoc->children->children;</pre>
|
||||||
@@ -191,63 +187,64 @@ pnode=pxmlDoc->children->children;</pre>
|
|||||||
<pre>pnode=pxmlDoc->children->children->next;</pre>
|
<pre>pnode=pxmlDoc->children->children->next;</pre>
|
||||||
<p><em>then it works. Can someone explain it to me.</em></p>
|
<p><em>then it works. Can someone explain it to me.</em></p>
|
||||||
<p></p>
|
<p></p>
|
||||||
<p>In XML all characters in the content of the document are significant
|
<p>In XML all characters in the content of the document are
|
||||||
<strong>including blanks and formatting line breaks</strong>.</p>
|
significant<strong>including blanks and formatting line
|
||||||
<p>The extra nodes you are wondering about are just that, text nodes with
|
breaks</strong>.</p>
|
||||||
the formatting spaces which are part of the document but that people tend
|
<p>The extra nodes you are wondering about are just that, text nodes
|
||||||
to forget. There is a function <a href="http://xmlsoft.org/html/libxml-parser.html">xmlKeepBlanksDefault
|
withthe formatting spaces which are part of the document but that people
|
||||||
()</a> to remove those at parse time, but that's an heuristic, and its
|
tendto forget. There is a function <a href="http://xmlsoft.org/html/libxml-parser.html">xmlKeepBlanksDefault()</a>to
|
||||||
use should be limited to cases where you are certain there is no
|
remove those at parse time, but that's an heuristic, and itsuse should be
|
||||||
mixed-content in the document.</p>
|
limited to cases where you are certain there is nomixed-content in the
|
||||||
|
document.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>I get compilation errors of existing code like when accessing
|
<li><em>I get compilation errors of existing code like when
|
||||||
<strong>root</strong> or <strong>child fields</strong> of nodes.</em>
|
accessing<strong>root</strong>or <strong>child fields</strong>of
|
||||||
<p>You are compiling code developed for libxml version 1 and using a
|
nodes.</em>
|
||||||
libxml2 development environment. Either switch back to libxml v1 devel or
|
<p>You are compiling code developed for libxml version 1 and using
|
||||||
even better fix the code to compile with libxml2 (or both) by <a href="upgrade.html">following the instructions</a>.</p>
|
alibxml2 development environment. Either switch back to libxml v1 devel
|
||||||
|
oreven better fix the code to compile with libxml2 (or both) by <a href="upgrade.html">following the instructions</a>.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>I get compilation errors about non existing
|
<li><em>I get compilation errors about non
|
||||||
<strong>xmlRootNode</strong> or <strong>xmlChildrenNode</strong>
|
existing<strong>xmlRootNode</strong>or
|
||||||
fields.</em>
|
<strong>xmlChildrenNode</strong>fields.</em>
|
||||||
<p>The source code you are using has been <a href="upgrade.html">upgraded</a> to be able to compile with both libxml
|
<p>The source code you are using has been <a href="upgrade.html">upgraded</a>to be able to compile with both libxmland
|
||||||
and libxml2, but you need to install a more recent version:
|
libxml2, but you need to install a more recent version:libxml(-devel)
|
||||||
libxml(-devel) >= 1.8.8 or libxml2(-devel) >= 2.1.0</p>
|
>= 1.8.8 or libxml2(-devel) >= 2.1.0</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>XPath implementation looks seriously broken</em>
|
<li><em>XPath implementation looks seriously broken</em>
|
||||||
<p>XPath implementation prior to 2.3.0 was really incomplete. Upgrade to
|
<p>XPath implementation prior to 2.3.0 was really incomplete. Upgrade toa
|
||||||
a recent version, there are no known bugs in the current version.</p>
|
recent version, there are no known bugs in the current version.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>The example provided in the web page does not compile.</em>
|
<li><em>The example provided in the web page does not compile.</em>
|
||||||
<p>It's hard to maintain the documentation in sync with the code
|
<p>It's hard to maintain the documentation in sync with the
|
||||||
<grin/> ...</p>
|
code<grin/> ...</p>
|
||||||
<p>Check the previous points 1/ and 2/ raised before, and please send
|
<p>Check the previous points 1/ and 2/ raised before, and please
|
||||||
patches.</p>
|
sendpatches.</p>
|
||||||
</li>
|
</li>
|
||||||
<li><em>Where can I get more examples and information than provided on the
|
<li><em>Where can I get more examples and information than provided on
|
||||||
web page?</em>
|
theweb page?</em>
|
||||||
<p>Ideally a libxml2 book would be nice. I have no such plan ... But you
|
<p>Ideally a libxml2 book would be nice. I have no such plan ... But
|
||||||
can:</p>
|
youcan:</p>
|
||||||
<ul><li>check more deeply the <a href="html/libxml-lib.html">existing
|
<ul><li>check more deeply the <a href="html/libxml-lib.html">existinggenerated doc</a></li>
|
||||||
generated doc</a></li>
|
<li>have a look at <a href="examples/index.html">the set
|
||||||
<li>have a look at <a href="examples/index.html">the set of
|
ofexamples</a>.</li>
|
||||||
examples</a>.</li>
|
<li>look for examples of use for libxml2 function using the Gnome
|
||||||
<li>look for examples of use for libxml2 function using the Gnome code.
|
code.For example the following will query the full Gnome CVS base for
|
||||||
For example the following will query the full Gnome CVS base for the
|
theuse of the <strong>xmlAddChild()</strong>function:
|
||||||
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
|
<p>This may be slow, a large hardware donation to the gnome
|
||||||
could cure this :-)</p>
|
projectcould cure this :-)</p>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&dir=gnome-xml">Browse
|
<li><a href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&dir=gnome-xml">Browsethe
|
||||||
the libxml2 source</a> , I try to write code as clean and documented
|
libxml2 source</a>, I try to write code as clean and documentedas
|
||||||
as possible, so looking at it may be helpful. In particular the code
|
possible, so looking at it may be helpful. In particular the codeof
|
||||||
of xmllint.c and of the various testXXX.c test programs should
|
xmllint.c and of the various testXXX.c test programs shouldprovide
|
||||||
provide good examples of how to do things with the library.</li>
|
good examples of how to do things with the library.</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li>What about C++ ?
|
<li>What about C++ ?
|
||||||
<p>libxml2 is written in pure C in order to allow easy reuse on a number
|
<p>libxml2 is written in pure C in order to allow easy reuse on a
|
||||||
of platforms, including embedded systems. I don't intend to convert to
|
numberof platforms, including embedded systems. I don't intend to convert
|
||||||
C++.</p>
|
toC++.</p>
|
||||||
<p>There is however a C++ wrapper which may fulfill your needs:</p>
|
<p>There is however a C++ wrapper which may fulfill your needs:</p>
|
||||||
<ul><li>by Ari Johnson <ari@btigate.com>:
|
<ul><li>by Ari Johnson <ari@btigate.com>:
|
||||||
<p>Website: <a href="http://libxmlplusplus.sourceforge.net/">http://libxmlplusplus.sourceforge.net/</a></p>
|
<p>Website: <a href="http://libxmlplusplus.sourceforge.net/">http://libxmlplusplus.sourceforge.net/</a></p>
|
||||||
@@ -261,11 +258,10 @@ pnode=pxmlDoc->children->children;</pre>
|
|||||||
-->
|
-->
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li>How to validate a document a posteriori ?
|
<li>How to validate a document a posteriori ?
|
||||||
<p>It is possible to validate documents which had not been validated at
|
<p>It is possible to validate documents which had not been validated
|
||||||
initial parsing time or documents which have been built from scratch
|
atinitial parsing time or documents which have been built from
|
||||||
using the API. Use the <a href="http://xmlsoft.org/html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd()</a>
|
scratchusing the API. Use the <a href="http://xmlsoft.org/html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd()</a>function.
|
||||||
function. It is also possible to simply add a DTD to an existing
|
It is also possible to simply add a DTD to an existingdocument:</p>
|
||||||
document:</p>
|
|
||||||
<pre>xmlDocPtr doc; /* your existing document */
|
<pre>xmlDocPtr doc; /* your existing document */
|
||||||
xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
||||||
|
|
||||||
@@ -277,10 +273,10 @@ xmlDtdPtr dtd = xmlParseDTD(NULL, filename_of_dtd); /* parse the DTD */
|
|||||||
</pre>
|
</pre>
|
||||||
</li>
|
</li>
|
||||||
<li>So what is this funky "xmlChar" used all the time?
|
<li>So what is this funky "xmlChar" used all the time?
|
||||||
<p>It is a null terminated sequence of utf-8 characters. And only utf-8!
|
<p>It is a null terminated sequence of utf-8 characters. And only
|
||||||
You need to convert strings encoded in different ways to utf-8 before
|
utf-8!You need to convert strings encoded in different ways to utf-8
|
||||||
passing them to the API. This can be accomplished with the iconv library
|
beforepassing them to the API. This can be accomplished with the iconv
|
||||||
for instance.</p>
|
libraryfor instance.</p>
|
||||||
</li>
|
</li>
|
||||||
<li>etc ...</li>
|
<li>etc ...</li>
|
||||||
</ol><p></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>
|
</ol><p></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>
|
||||||
|
|||||||
@@ -7,9 +7,8 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>XML</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>XML</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><a href="http://www.w3.org/TR/REC-xml">XML is a standard</a> for
|
</style><title>XML</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>XML</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><a href="http://www.w3.org/TR/REC-xml">XML is a
|
||||||
markup-based structured documents. Here is <a name="example" id="example">an example XML
|
standard</a>formarkup-based structured documents. Here is <a name="example" id="example">an example XMLdocument</a>:</p><pre><?xml version="1.0"?>
|
||||||
document</a>:</p><pre><?xml version="1.0"?>
|
|
||||||
<EXAMPLE prop1="gnome is great" prop2="&amp; linux too">
|
<EXAMPLE prop1="gnome is great" prop2="&amp; linux too">
|
||||||
<head>
|
<head>
|
||||||
<title>Welcome to Gnome</title>
|
<title>Welcome to Gnome</title>
|
||||||
@@ -20,16 +19,16 @@ document</a>:</p><pre><?xml version="1.0"?>
|
|||||||
<image href="linus.gif"/>
|
<image href="linus.gif"/>
|
||||||
<p>...</p>
|
<p>...</p>
|
||||||
</chapter>
|
</chapter>
|
||||||
</EXAMPLE></pre><p>The first line specifies that it is an XML document and gives useful
|
</EXAMPLE></pre><p>The first line specifies that it is an XML document and gives
|
||||||
information about its encoding. Then the rest of the document is a text
|
usefulinformation about its encoding. Then the rest of the document is a
|
||||||
format whose structure is specified by tags between brackets. <strong>Each
|
textformat whose structure is specified by tags between brackets.
|
||||||
tag opened has to be closed</strong>. XML is pedantic about this. However, if
|
<strong>Eachtag opened has to be closed</strong>. XML is pedantic about this.
|
||||||
a tag is empty (no content), a single tag can serve as both the opening and
|
However, ifa tag is empty (no content), a single tag can serve as both the
|
||||||
closing tag if it ends with <code>/></code> rather than with
|
opening andclosing tag if it ends with <code>/></code>rather than
|
||||||
<code>></code>. Note that, for example, the image tag has no content (just
|
with<code>></code>. Note that, for example, the image tag has no content
|
||||||
an attribute) and is closed by ending the tag with <code>/></code>.</p><p>XML can be applied successfully to a wide range of tasks, ranging from
|
(justan attribute) and is closed by ending the tag with
|
||||||
long term structured document maintenance (where it follows the steps of
|
<code>/></code>.</p><p>XML can be applied successfully to a wide range of tasks, ranging fromlong
|
||||||
SGML) to simple data encoding mechanisms like configuration file formatting
|
term structured document maintenance (where it follows the steps ofSGML) to
|
||||||
(glade), spreadsheets (gnumeric), or even shorter lived documents such as
|
simple data encoding mechanisms like configuration file formatting(glade),
|
||||||
WebDAV where it is used to encode remote calls between a client and a
|
spreadsheets (gnumeric), or even shorter lived documents such asWebDAV where
|
||||||
server.</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>
|
it is used to encode remote calls between a client and aserver.</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>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
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
|
</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 alanguage
|
||||||
language for transforming XML documents into other XML documents (or
|
for transforming XML documents into other XML documents (orHTML/textual
|
||||||
HTML/textual output).</p><p>A separate library called libxslt is available implementing XSLT-1.0 for
|
output).</p><p>A separate library called libxslt is available implementing XSLT-1.0
|
||||||
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>
|
forlibxml2. 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>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
116
doc/bugs.html
116
doc/bugs.html
@@ -7,62 +7,60 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>Reporting bugs and getting help</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>Reporting bugs and getting help</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>Well, bugs or missing features are always possible, and I will make a
|
</style><title>Reporting bugs and getting help</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>Reporting bugs and getting help</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>Well, bugs or missing features are always possible, and I will make apoint
|
||||||
point of fixing them in a timely fashion. The best way to report a bug is to
|
of fixing them in a timely fashion. The best way to report a bug is touse the
|
||||||
use the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Gnome
|
<a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Gnomebug
|
||||||
bug tracking database</a> (make sure to use the "libxml2" module name). I
|
tracking database</a>(make sure to use the "libxml2" module name). Ilook at
|
||||||
look at reports there regularly and it's good to have a reminder when a bug
|
reports there regularly and it's good to have a reminder when a bugis still
|
||||||
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
|
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
|
||||||
irc.gnome.org (port 6667) usually have a few person subscribed which may help
|
onirc.gnome.org (port 6667) usually have a few person subscribed which may
|
||||||
(but there is no garantee and if a real issue is raised it should go on the
|
help(but there is no garantee and if a real issue is raised it should go on
|
||||||
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,
|
themailing-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
|
||||||
please visit the <a href="http://mail.gnome.org/mailman/listinfo/xml">associated Web</a> page and
|
visit the <a href="http://mail.gnome.org/mailman/listinfo/xml">associated
|
||||||
follow the instructions. <strong>Do not send code, I won't debug it</strong>
|
Web</a>page andfollow the instructions. <strong>Do not send code, I won't
|
||||||
(but patches are really appreciated!).</p><p>Please note that with the current amount of virus and SPAM, sending mail
|
debug it</strong>(but patches are really appreciated!).</p><p>Please note that with the current amount of virus and SPAM, sending mailto
|
||||||
to the list without being subscribed won't work. There is *far too many
|
the list without being subscribed won't work. There is *far too manybounces*
|
||||||
bounces* (in the order of a thousand a day !) I cannot approve them manually
|
(in the order of a thousand a day !) I cannot approve them manuallyanymore.
|
||||||
anymore. If your mail to the list bounced waiting for administrator approval,
|
If your mail to the list bounced waiting for administrator approval,it is
|
||||||
it is LOST ! Repost it and fix the problem triggering the error. Also please
|
LOST ! Repost it and fix the problem triggering the error. Also pleasenote
|
||||||
note that <span style="color: #FF0000; background-color: #FFFFFF">emails with
|
that <span style="color: #FF0000; background-color: #FFFFFF">emails witha
|
||||||
a legal warning asking to not copy or redistribute freely the informations
|
legal warning asking to not copy or redistribute freely the informationsthey
|
||||||
they contain</span> are <strong>NOT</strong> acceptable for the mailing-list,
|
contain</span>are <strong>NOT</strong>acceptable for the mailing-list,such
|
||||||
such mail will as much as possible be discarded automatically, and are less
|
mail will as much as possible be discarded automatically, and are lesslikely
|
||||||
likely to be answered if they made it to the list, <strong>DO NOT</strong>
|
to be answered if they made it to the list, <strong>DO NOT</strong>post to
|
||||||
post to the list from an email address where such legal requirements are
|
the list from an email address where such legal requirements areautomatically
|
||||||
automatically added, get private paying support if you can't share
|
added, get private paying support if you can't shareinformations.</p><p>Check the following <strong><span style="color: #FF0000">beforeposting</span></strong>:</p><ul><li>Read the <a href="FAQ.html">FAQ</a>and <a href="search.php">use
|
||||||
informations.</p><p>Check the following <strong><span style="color: #FF0000">before
|
thesearch engine</a>to get information related to your problem.</li>
|
||||||
posting</span></strong>:</p><ul><li>Read the <a href="FAQ.html">FAQ</a> and <a href="search.php">use the
|
<li>Make sure you are <a href="ftp://xmlsoft.org/libxml2/">using a
|
||||||
search engine</a> to get information related to your problem.</li>
|
recentversion</a>, and that the problem still shows up in a recent
|
||||||
<li>Make sure you are <a href="ftp://xmlsoft.org/libxml2/">using a recent
|
version.</li>
|
||||||
version</a>, and that the problem still shows up in a recent version.</li>
|
<li>Check the <a href="http://mail.gnome.org/archives/xml/">listarchives</a>to see if the
|
||||||
<li>Check the <a href="http://mail.gnome.org/archives/xml/">list
|
problem was reported already. In this casethere is probably a fix
|
||||||
archives</a> to see if the problem was reported already. In this case
|
available, similarly check the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">registeredopen
|
||||||
there is probably a fix available, similarly check the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">registered
|
bugs</a>.</li>
|
||||||
open bugs</a>.</li>
|
<li>Make sure you can reproduce the bug with xmllint or one of the
|
||||||
<li>Make sure you can reproduce the bug with xmllint or one of the test
|
testprograms found in source in the distribution.</li>
|
||||||
programs found in source in the distribution.</li>
|
<li>Please send the command showing the error as well as the input (as
|
||||||
<li>Please send the command showing the error as well as the input (as an
|
anattachment)</li>
|
||||||
attachment)</li>
|
</ul><p>Then send the bug with associated information to reproduce it to the <a href="mailto:xml@gnome.org">xml@gnome.org</a>list; if it's really
|
||||||
</ul><p>Then send the bug with associated information to reproduce it to the <a href="mailto:xml@gnome.org">xml@gnome.org</a> list; if it's really libxml
|
libxmlrelated I will approve it. Please do not send mail to me directly, it
|
||||||
related I will approve it. Please do not send mail to me directly, it makes
|
makesthings really hard to track and in some cases I am not the best person
|
||||||
things really hard to track and in some cases I am not the best person to
|
toanswer a given question, ask on the list.</p><p>To <span style="color: #E50000">be really clear about support</span>:</p><ul><li>Support or help <span style="color: #E50000">requests MUST be sent
|
||||||
answer a given question, ask on the list.</p><p>To <span style="color: #E50000">be really clear about support</span>:</p><ul><li>Support or help <span style="color: #E50000">requests MUST be sent to
|
tothe list or on bugzilla</span>in case of problems, so that the
|
||||||
the list or on bugzilla</span> in case of problems, so that the Question
|
Questionand Answers can be shared publicly. Failing to do so carries the
|
||||||
and Answers can be shared publicly. Failing to do so carries the implicit
|
implicitmessage "I want free support but I don't want to share the
|
||||||
message "I want free support but I don't want to share the benefits with
|
benefits withothers" and is not welcome. I will automatically Carbon-Copy
|
||||||
others" and is not welcome. I will automatically Carbon-Copy the
|
thexml@gnome.org mailing list for any technical reply made about libxml2
|
||||||
xml@gnome.org mailing list for any technical reply made about libxml2 or
|
orlibxslt.</li>
|
||||||
libxslt.</li>
|
<li>There is <span style="color: #E50000">no garantee of support</span>,
|
||||||
<li>There is <span style="color: #E50000">no garantee of support</span>, if
|
ifyour question remains unanswered after a week, repost it, making sure
|
||||||
your question remains unanswered after a week, repost it, making sure you
|
yougave all the detail needed and the information requested.</li>
|
||||||
gave all the detail needed and the information requested.</li>
|
<li>Failing to provide information as requested or double checking firstfor
|
||||||
<li>Failing to provide information as requested or double checking first
|
prior feedback also carries the implicit message "the time of thelibrary
|
||||||
for prior feedback also carries the implicit message "the time of the
|
maintainers is less valuable than my time" and might not bewelcome.</li>
|
||||||
library maintainers is less valuable than my time" and might not be
|
</ul><p>Of course, bugs reported with a suggested patch for fixing them
|
||||||
welcome.</li>
|
willprobably be processed faster than those without.</p><p>If you're looking for help, a quick look at <a href="http://mail.gnome.org/archives/xml/">the list archive</a>may
|
||||||
</ul><p>Of course, bugs reported with a suggested patch for fixing them will
|
actuallyprovide the answer. I usually send source samples when answering
|
||||||
probably be processed faster than those without.</p><p>If you're looking for help, a quick look at <a href="http://mail.gnome.org/archives/xml/">the list archive</a> may actually
|
libxml2usage questions. The <a href="http://xmlsoft.org/html/book1.html">auto-generated
|
||||||
provide the answer. I usually send source samples when answering libxml2
|
documentation</a>isnot as polished as I would like (i need to learn more
|
||||||
usage questions. The <a href="http://xmlsoft.org/html/book1.html">auto-generated documentation</a> is
|
about DocBook), butit's a good starting point.</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>
|
||||||
not as polished as I would like (i need to learn more about DocBook), but
|
|
||||||
it's a good starting point.</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>
|
|
||||||
|
|||||||
325
doc/catalog.html
325
doc/catalog.html
@@ -14,77 +14,77 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<li><a href="#reference">How to tune catalog usage</a></li>
|
<li><a href="#reference">How to tune catalog usage</a></li>
|
||||||
<li><a href="#validate">How to debug catalog processing</a></li>
|
<li><a href="#validate">How to debug catalog processing</a></li>
|
||||||
<li><a href="#Declaring">How to create and maintain catalogs</a></li>
|
<li><a href="#Declaring">How to create and maintain catalogs</a></li>
|
||||||
<li><a href="#implemento">The implementor corner quick review of the
|
<li><a href="#implemento">The implementor corner quick review of
|
||||||
API</a></li>
|
theAPI</a></li>
|
||||||
<li><a href="#Other">Other resources</a></li>
|
<li><a href="#Other">Other resources</a></li>
|
||||||
</ol><h3><a name="General2" id="General2">General overview</a></h3><p>What is a catalog? Basically it's a lookup mechanism used when an entity
|
</ol><h3><a name="General2" id="General2">General overview</a></h3><p>What is a catalog? Basically it's a lookup mechanism used when an entity(a
|
||||||
(a file or a remote resource) references another entity. The catalog lookup
|
file or a remote resource) references another entity. The catalog lookupis
|
||||||
is inserted between the moment the reference is recognized by the software
|
inserted between the moment the reference is recognized by the software(XML
|
||||||
(XML parser, stylesheet processing, or even images referenced for inclusion
|
parser, stylesheet processing, or even images referenced for inclusionin a
|
||||||
in a rendering) and the time where loading that resource is actually
|
rendering) and the time where loading that resource is actuallystarted.</p><p>It is basically used for 3 things:</p><ul><li>mapping from "logical" names, the public identifiers and a moreconcrete
|
||||||
started.</p><p>It is basically used for 3 things:</p><ul><li>mapping from "logical" names, the public identifiers and a more
|
name usable for download (and URI). For example it can associatethe
|
||||||
concrete name usable for download (and URI). For example it can associate
|
logical name
|
||||||
the logical name
|
|
||||||
<p>"-//OASIS//DTD DocBook XML V4.1.2//EN"</p>
|
<p>"-//OASIS//DTD DocBook XML V4.1.2//EN"</p>
|
||||||
<p>of the DocBook 4.1.2 XML DTD with the actual URL where it can be
|
<p>of the DocBook 4.1.2 XML DTD with the actual URL where it can
|
||||||
downloaded</p>
|
bedownloaded</p>
|
||||||
<p>http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd</p>
|
<p>http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd</p>
|
||||||
</li>
|
</li>
|
||||||
<li>remapping from a given URL to another one, like an HTTP indirection
|
<li>remapping from a given URL to another one, like an HTTP
|
||||||
saying that
|
indirectionsaying that
|
||||||
<p>"http://www.oasis-open.org/committes/tr.xsl"</p>
|
<p>"http://www.oasis-open.org/committes/tr.xsl"</p>
|
||||||
<p>should really be looked at</p>
|
<p>should really be looked at</p>
|
||||||
<p>"http://www.oasis-open.org/committes/entity/stylesheets/base/tr.xsl"</p>
|
<p>"http://www.oasis-open.org/committes/entity/stylesheets/base/tr.xsl"</p>
|
||||||
</li>
|
</li>
|
||||||
<li>providing a local cache mechanism allowing to load the entities
|
<li>providing a local cache mechanism allowing to load the
|
||||||
associated to public identifiers or remote resources, this is a really
|
entitiesassociated to public identifiers or remote resources, this is a
|
||||||
important feature for any significant deployment of XML or SGML since it
|
reallyimportant feature for any significant deployment of XML or SGML
|
||||||
allows to avoid the aleas and delays associated to fetching remote
|
since itallows to avoid the aleas and delays associated to fetching
|
||||||
resources.</li>
|
remoteresources.</li>
|
||||||
</ul><h3><a name="definition" id="definition">The definitions</a></h3><p>Libxml, as of 2.4.3 implements 2 kind of catalogs:</p><ul><li>the older SGML catalogs, the official spec is SGML Open Technical
|
</ul><h3><a name="definition" id="definition">The definitions</a></h3><p>Libxml, as of 2.4.3 implements 2 kind of catalogs:</p><ul><li>the older SGML catalogs, the official spec is SGML Open
|
||||||
Resolution TR9401:1997, but is better understood by reading <a href="http://www.jclark.com/sp/catalog.htm">the SP Catalog page</a> from
|
TechnicalResolution TR9401:1997, but is better understood by reading <a href="http://www.jclark.com/sp/catalog.htm">the SP Catalog
|
||||||
James Clark. This is relatively old and not the preferred mode of
|
page</a>fromJames Clark. This is relatively old and not the preferred
|
||||||
operation of libxml.</li>
|
mode ofoperation of libxml.</li>
|
||||||
<li><a href="http://www.oasis-open.org/committees/entity/spec.html">XML
|
<li><a href="http://www.oasis-open.org/committees/entity/spec.html">XMLCatalogs</a>is
|
||||||
Catalogs</a> is far more flexible, more recent, uses an XML syntax and
|
far more flexible, more recent, uses an XML syntax andshould scale quite
|
||||||
should scale quite better. This is the default option of libxml.</li>
|
better. This is the default option of libxml.</li>
|
||||||
</ul><p></p><h3><a name="Simple" id="Simple">Using catalog</a></h3><p>In a normal environment libxml2 will by default check the presence of a
|
</ul><p></p><h3><a name="Simple" id="Simple">Using catalog</a></h3><p>In a normal environment libxml2 will by default check the presence of
|
||||||
catalog in /etc/xml/catalog, and assuming it has been correctly populated,
|
acatalog in /etc/xml/catalog, and assuming it has been correctly
|
||||||
the processing is completely transparent to the document user. To take a
|
populated,the processing is completely transparent to the document user. To
|
||||||
concrete example, suppose you are authoring a DocBook document, this one
|
take aconcrete example, suppose you are authoring a DocBook document, this
|
||||||
starts with the following DOCTYPE definition:</p><pre><?xml version='1.0'?>
|
onestarts with the following DOCTYPE definition:</p><pre><?xml version='1.0'?>
|
||||||
<!DOCTYPE book PUBLIC "-//Norman Walsh//DTD DocBk XML V3.1.4//EN"
|
<!DOCTYPE book PUBLIC "-//Norman Walsh//DTD DocBk XML V3.1.4//EN"
|
||||||
"http://nwalsh.com/docbook/xml/3.1.4/db3xml.dtd"></pre><p>When validating the document with libxml, the catalog will be
|
"http://nwalsh.com/docbook/xml/3.1.4/db3xml.dtd"></pre><p>When validating the document with libxml, the catalog will beautomatically
|
||||||
automatically consulted to lookup the public identifier "-//Norman Walsh//DTD
|
consulted to lookup the public identifier "-//Norman Walsh//DTDDocBk XML
|
||||||
DocBk XML V3.1.4//EN" and the system identifier
|
V3.1.4//EN" and the system
|
||||||
"http://nwalsh.com/docbook/xml/3.1.4/db3xml.dtd", and if these entities have
|
identifier"http://nwalsh.com/docbook/xml/3.1.4/db3xml.dtd", and if these
|
||||||
been installed on your system and the catalogs actually point to them, libxml
|
entities havebeen installed on your system and the catalogs actually point to
|
||||||
will fetch them from the local disk.</p><p style="font-size: 10pt"><strong>Note</strong>: Really don't use this
|
them, libxmlwill fetch them from the local disk.</p><p style="font-size: 10pt"><strong>Note</strong>: Really don't use
|
||||||
DOCTYPE example it's a really old version, but is fine as an example.</p><p>Libxml2 will check the catalog each time that it is requested to load an
|
thisDOCTYPE example it's a really old version, but is fine as an example.</p><p>Libxml2 will check the catalog each time that it is requested to load
|
||||||
entity, this includes DTD, external parsed entities, stylesheets, etc ... If
|
anentity, this includes DTD, external parsed entities, stylesheets, etc ...
|
||||||
your system is correctly configured all the authoring phase and processing
|
Ifyour system is correctly configured all the authoring phase and
|
||||||
should use only local files, even if your document stays portable because it
|
processingshould use only local files, even if your document stays portable
|
||||||
uses the canonical public and system ID, referencing the remote document.</p><h3><a name="Some" id="Some">Some examples:</a></h3><p>Here is a couple of fragments from XML Catalogs used in libxml2 early
|
because ituses the canonical public and system ID, referencing the remote
|
||||||
regression tests in <code>test/catalogs</code> :</p><pre><?xml version="1.0"?>
|
document.</p><h3><a name="Some" id="Some">Some examples:</a></h3><p>Here is a couple of fragments from XML Catalogs used in libxml2
|
||||||
|
earlyregression tests in <code>test/catalogs</code>:</p><pre><?xml version="1.0"?>
|
||||||
<!DOCTYPE catalog PUBLIC
|
<!DOCTYPE catalog PUBLIC
|
||||||
"-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
"-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
||||||
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
||||||
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
|
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
|
||||||
<public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
|
<public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
uri="http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"/>
|
uri="http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"/>
|
||||||
...</pre><p>This is the beginning of a catalog for DocBook 4.1.2, XML Catalogs are
|
...</pre><p>This is the beginning of a catalog for DocBook 4.1.2, XML Catalogs
|
||||||
written in XML, there is a specific namespace for catalog elements
|
arewritten in XML, there is a specific namespace for catalog
|
||||||
"urn:oasis:names:tc:entity:xmlns:xml:catalog". The first entry in this
|
elements"urn:oasis:names:tc:entity:xmlns:xml:catalog". The first entry in
|
||||||
catalog is a <code>public</code> mapping it allows to associate a Public
|
thiscatalog is a <code>public</code>mapping it allows to associate a
|
||||||
Identifier with an URI.</p><pre>...
|
PublicIdentifier with an URI.</p><pre>...
|
||||||
<rewriteSystem systemIdStartString="http://www.oasis-open.org/docbook/"
|
<rewriteSystem systemIdStartString="http://www.oasis-open.org/docbook/"
|
||||||
rewritePrefix="file:///usr/share/xml/docbook/"/>
|
rewritePrefix="file:///usr/share/xml/docbook/"/>
|
||||||
...</pre><p>A <code>rewriteSystem</code> is a very powerful instruction, it says that
|
...</pre><p>A <code>rewriteSystem</code>is a very powerful instruction, it says
|
||||||
any URI starting with a given prefix should be looked at another URI
|
thatany URI starting with a given prefix should be looked at another
|
||||||
constructed by replacing the prefix with an new one. In effect this acts like
|
URIconstructed by replacing the prefix with an new one. In effect this acts
|
||||||
a cache system for a full area of the Web. In practice it is extremely useful
|
likea cache system for a full area of the Web. In practice it is extremely
|
||||||
with a file prefix if you have installed a copy of those resources on your
|
usefulwith a file prefix if you have installed a copy of those resources on
|
||||||
local system.</p><pre>...
|
yourlocal system.</p><pre>...
|
||||||
<delegatePublic publicIdStartString="-//OASIS//DTD XML Catalog //"
|
<delegatePublic publicIdStartString="-//OASIS//DTD XML Catalog //"
|
||||||
catalog="file:///usr/share/xml/docbook.xml"/>
|
catalog="file:///usr/share/xml/docbook.xml"/>
|
||||||
<delegatePublic publicIdStartString="-//OASIS//ENTITIES DocBook XML"
|
<delegatePublic publicIdStartString="-//OASIS//ENTITIES DocBook XML"
|
||||||
@@ -95,21 +95,21 @@ local system.</p><pre>...
|
|||||||
catalog="file:///usr/share/xml/docbook.xml"/>
|
catalog="file:///usr/share/xml/docbook.xml"/>
|
||||||
<delegateURI uriStartString="http://www.oasis-open.org/docbook/"
|
<delegateURI uriStartString="http://www.oasis-open.org/docbook/"
|
||||||
catalog="file:///usr/share/xml/docbook.xml"/>
|
catalog="file:///usr/share/xml/docbook.xml"/>
|
||||||
...</pre><p>Delegation is the core features which allows to build a tree of catalogs,
|
...</pre><p>Delegation is the core features which allows to build a tree of
|
||||||
easier to maintain than a single catalog, based on Public Identifier, System
|
catalogs,easier to maintain than a single catalog, based on Public
|
||||||
Identifier or URI prefixes it instructs the catalog software to look up
|
Identifier, SystemIdentifier or URI prefixes it instructs the catalog
|
||||||
entries in another resource. This feature allow to build hierarchies of
|
software to look upentries in another resource. This feature allow to build
|
||||||
catalogs, the set of entries presented should be sufficient to redirect the
|
hierarchies ofcatalogs, the set of entries presented should be sufficient to
|
||||||
resolution of all DocBook references to the specific catalog in
|
redirect theresolution of all DocBook references to the specific catalog
|
||||||
<code>/usr/share/xml/docbook.xml</code> this one in turn could delegate all
|
in<code>/usr/share/xml/docbook.xml</code>this one in turn could delegate
|
||||||
references for DocBook 4.2.1 to a specific catalog installed at the same time
|
allreferences for DocBook 4.2.1 to a specific catalog installed at the same
|
||||||
as the DocBook resources on the local machine.</p><h3><a name="reference" id="reference">How to tune catalog usage:</a></h3><p>The user can change the default catalog behaviour by redirecting queries
|
timeas the DocBook resources on the local machine.</p><h3><a name="reference" id="reference">How to tune catalog usage:</a></h3><p>The user can change the default catalog behaviour by redirecting queriesto
|
||||||
to its own set of catalogs, this can be done by setting the
|
its own set of catalogs, this can be done by setting
|
||||||
<code>XML_CATALOG_FILES</code> environment variable to a list of catalogs, an
|
the<code>XML_CATALOG_FILES</code>environment variable to a list of catalogs,
|
||||||
empty one should deactivate loading the default <code>/etc/xml/catalog</code>
|
anempty one should deactivate loading the default
|
||||||
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
|
<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 willmake
|
||||||
make libxml2 output debugging informations for each catalog operations, for
|
libxml2 output debugging informations for each catalog operations,
|
||||||
example:</p><pre>orchis:~/XML -> xmllint --memory --noout test/ent2
|
forexample:</p><pre>orchis:~/XML -> xmllint --memory --noout test/ent2
|
||||||
warning: failed to load external entity "title.xml"
|
warning: failed to load external entity "title.xml"
|
||||||
orchis:~/XML -> export XML_DEBUG_CATALOG=
|
orchis:~/XML -> export XML_DEBUG_CATALOG=
|
||||||
orchis:~/XML -> xmllint --memory --noout test/ent2
|
orchis:~/XML -> xmllint --memory --noout test/ent2
|
||||||
@@ -117,26 +117,26 @@ Failed to parse catalog /etc/xml/catalog
|
|||||||
Failed to parse catalog /etc/xml/catalog
|
Failed to parse catalog /etc/xml/catalog
|
||||||
warning: failed to load external entity "title.xml"
|
warning: failed to load external entity "title.xml"
|
||||||
Catalogs cleanup
|
Catalogs cleanup
|
||||||
orchis:~/XML -> </pre><p>The test/ent2 references an entity, running the parser from memory makes
|
orchis:~/XML -> </pre><p>The test/ent2 references an entity, running the parser from memory
|
||||||
the base URI unavailable and the the "title.xml" entity cannot be loaded.
|
makesthe base URI unavailable and the the "title.xml" entity cannot be
|
||||||
Setting up the debug environment variable allows to detect that an attempt is
|
loaded.Setting up the debug environment variable allows to detect that an
|
||||||
made to load the <code>/etc/xml/catalog</code> but since it's not present the
|
attempt ismade to load the <code>/etc/xml/catalog</code>but since it's not
|
||||||
resolution fails.</p><p>But the most advanced way to debug XML catalog processing is to use the
|
present theresolution fails.</p><p>But the most advanced way to debug XML catalog processing is to use
|
||||||
<strong>xmlcatalog</strong> command shipped with libxml2, it allows to load
|
the<strong>xmlcatalog</strong>command shipped with libxml2, it allows to
|
||||||
catalogs and make resolution queries to see what is going on. This is also
|
loadcatalogs and make resolution queries to see what is going on. This is
|
||||||
used for the regression tests:</p><pre>orchis:~/XML -> ./xmlcatalog test/catalogs/docbook.xml \
|
alsoused for the regression tests:</p><pre>orchis:~/XML -> ./xmlcatalog test/catalogs/docbook.xml \
|
||||||
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
||||||
orchis:~/XML -> </pre><p>For debugging what is going on, adding one -v flags increase the verbosity
|
orchis:~/XML -> </pre><p>For debugging what is going on, adding one -v flags increase the
|
||||||
level to indicate the processing done (adding a second flag also indicate
|
verbositylevel to indicate the processing done (adding a second flag also
|
||||||
what elements are recognized at parsing):</p><pre>orchis:~/XML -> ./xmlcatalog -v test/catalogs/docbook.xml \
|
indicatewhat elements are recognized at parsing):</p><pre>orchis:~/XML -> ./xmlcatalog -v test/catalogs/docbook.xml \
|
||||||
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
Parsing catalog test/catalogs/docbook.xml's content
|
Parsing catalog test/catalogs/docbook.xml's content
|
||||||
Found public match -//OASIS//DTD DocBook XML V4.1.2//EN
|
Found public match -//OASIS//DTD DocBook XML V4.1.2//EN
|
||||||
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
||||||
Catalogs cleanup
|
Catalogs cleanup
|
||||||
orchis:~/XML -> </pre><p>A shell interface is also available to debug and process multiple queries
|
orchis:~/XML -> </pre><p>A shell interface is also available to debug and process multiple
|
||||||
(and for regression tests):</p><pre>orchis:~/XML -> ./xmlcatalog -shell test/catalogs/docbook.xml \
|
queries(and for regression tests):</p><pre>orchis:~/XML -> ./xmlcatalog -shell test/catalogs/docbook.xml \
|
||||||
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
> help
|
> help
|
||||||
Commands available:
|
Commands available:
|
||||||
@@ -152,18 +152,18 @@ exit: quit the shell
|
|||||||
> public "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
> public "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
|
||||||
> quit
|
> quit
|
||||||
orchis:~/XML -> </pre><p>This should be sufficient for most debugging purpose, this was actually
|
orchis:~/XML -> </pre><p>This should be sufficient for most debugging purpose, this was
|
||||||
used heavily to debug the XML Catalog implementation itself.</p><h3><a name="Declaring" id="Declaring">How to create and maintain</a> catalogs:</h3><p>Basically XML Catalogs are XML files, you can either use XML tools to
|
actuallyused heavily to debug the XML Catalog implementation itself.</p><h3><a name="Declaring" id="Declaring">How to create and maintain</a>catalogs:</h3><p>Basically XML Catalogs are XML files, you can either use XML tools
|
||||||
manage them or use <strong>xmlcatalog</strong> for this. The basic step is
|
tomanage them or use <strong>xmlcatalog</strong>for this. The basic step
|
||||||
to create a catalog the -create option provide this facility:</p><pre>orchis:~/XML -> ./xmlcatalog --create tst.xml
|
isto create a catalog the -create option provide this facility:</p><pre>orchis:~/XML -> ./xmlcatalog --create tst.xml
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
||||||
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
||||||
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"/>
|
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"/>
|
||||||
orchis:~/XML -> </pre><p>By default xmlcatalog does not overwrite the original catalog and save the
|
orchis:~/XML -> </pre><p>By default xmlcatalog does not overwrite the original catalog and save
|
||||||
result on the standard output, this can be overridden using the -noout
|
theresult on the standard output, this can be overridden using the
|
||||||
option. The <code>-add</code> command allows to add entries in the
|
-nooutoption. The <code>-add</code>command allows to add entries in
|
||||||
catalog:</p><pre>orchis:~/XML -> ./xmlcatalog --noout --create --add "public" \
|
thecatalog:</p><pre>orchis:~/XML -> ./xmlcatalog --noout --create --add "public" \
|
||||||
"-//OASIS//DTD DocBook XML V4.1.2//EN" \
|
"-//OASIS//DTD DocBook XML V4.1.2//EN" \
|
||||||
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd tst.xml
|
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd tst.xml
|
||||||
orchis:~/XML -> cat tst.xml
|
orchis:~/XML -> cat tst.xml
|
||||||
@@ -174,83 +174,82 @@ orchis:~/XML -> cat tst.xml
|
|||||||
<public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
|
<public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||||
uri="http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"/>
|
uri="http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"/>
|
||||||
</catalog>
|
</catalog>
|
||||||
orchis:~/XML -> </pre><p>The <code>-add</code> option will always take 3 parameters even if some of
|
orchis:~/XML -> </pre><p>The <code>-add</code>option will always take 3 parameters even if some
|
||||||
the XML Catalog constructs (like nextCatalog) will have only a single
|
ofthe XML Catalog constructs (like nextCatalog) will have only a
|
||||||
argument, just pass a third empty string, it will be ignored.</p><p>Similarly the <code>-del</code> option remove matching entries from the
|
singleargument, just pass a third empty string, it will be ignored.</p><p>Similarly the <code>-del</code>option remove matching entries from
|
||||||
catalog:</p><pre>orchis:~/XML -> ./xmlcatalog --del \
|
thecatalog:</p><pre>orchis:~/XML -> ./xmlcatalog --del \
|
||||||
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" tst.xml
|
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" tst.xml
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
|
||||||
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
|
||||||
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"/>
|
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"/>
|
||||||
orchis:~/XML -> </pre><p>The catalog is now empty. Note that the matching of <code>-del</code> is
|
orchis:~/XML -> </pre><p>The catalog is now empty. Note that the matching of
|
||||||
exact and would have worked in a similar fashion with the Public ID
|
<code>-del</code>isexact and would have worked in a similar fashion with the
|
||||||
string.</p><p>This is rudimentary but should be sufficient to manage a not too complex
|
Public IDstring.</p><p>This is rudimentary but should be sufficient to manage a not too
|
||||||
catalog tree of resources.</p><h3><a name="implemento" id="implemento">The implementor corner quick review of the
|
complexcatalog tree of resources.</p><h3><a name="implemento" id="implemento">The implementor corner quick review of
|
||||||
API:</a></h3><p>First, and like for every other module of libxml, there is an
|
theAPI:</a></h3><p>First, and like for every other module of libxml, there is anautomatically
|
||||||
automatically generated <a href="html/libxml-catalog.html">API page for
|
generated <a href="html/libxml-catalog.html">API page forcatalog
|
||||||
catalog support</a>.</p><p>The header for the catalog interfaces should be included as:</p><pre>#include <libxml/catalog.h></pre><p>The API is voluntarily kept very simple. First it is not obvious that
|
support</a>.</p><p>The header for the catalog interfaces should be included as:</p><pre>#include <libxml/catalog.h></pre><p>The API is voluntarily kept very simple. First it is not obvious
|
||||||
applications really need access to it since it is the default behaviour of
|
thatapplications really need access to it since it is the default behaviour
|
||||||
libxml2 (Note: it is possible to completely override libxml2 default catalog
|
oflibxml2 (Note: it is possible to completely override libxml2 default
|
||||||
by using <a href="html/libxml-parser.html">xmlSetExternalEntityLoader</a> to
|
catalogby using <a href="html/libxml-parser.html">xmlSetExternalEntityLoader</a>toplug an
|
||||||
plug an application specific resolver).</p><p>Basically libxml2 support 2 catalog lists:</p><ul><li>the default one, global shared by all the application</li>
|
application specific resolver).</p><p>Basically libxml2 support 2 catalog lists:</p><ul><li>the default one, global shared by all the application</li>
|
||||||
<li>a per-document catalog, this one is built if the document uses the
|
<li>a per-document catalog, this one is built if the document uses
|
||||||
<code>oasis-xml-catalog</code> PIs to specify its own catalog list, it is
|
the<code>oasis-xml-catalog</code>PIs to specify its own catalog list, it
|
||||||
associated to the parser context and destroyed when the parsing context
|
isassociated to the parser context and destroyed when the parsing
|
||||||
is destroyed.</li>
|
contextis destroyed.</li>
|
||||||
</ul><p>the document one will be used first if it exists.</p><h4>Initialization routines:</h4><p>xmlInitializeCatalog(), xmlLoadCatalog() and xmlLoadCatalogs() should be
|
</ul><p>the document one will be used first if it exists.</p><h4>Initialization routines:</h4><p>xmlInitializeCatalog(), xmlLoadCatalog() and xmlLoadCatalogs() should
|
||||||
used at startup to initialize the catalog, if the catalog should be
|
beused at startup to initialize the catalog, if the catalog should
|
||||||
initialized with specific values xmlLoadCatalog() or xmlLoadCatalogs()
|
beinitialized with specific values xmlLoadCatalog() or
|
||||||
should be called before xmlInitializeCatalog() which would otherwise do a
|
xmlLoadCatalogs()should be called before xmlInitializeCatalog() which would
|
||||||
default initialization first.</p><p>The xmlCatalogAddLocal() call is used by the parser to grow the document
|
otherwise do adefault initialization first.</p><p>The xmlCatalogAddLocal() call is used by the parser to grow the
|
||||||
own catalog list if needed.</p><h4>Preferences setup:</h4><p>The XML Catalog spec requires the possibility to select default
|
documentown catalog list if needed.</p><h4>Preferences setup:</h4><p>The XML Catalog spec requires the possibility to select defaultpreferences
|
||||||
preferences between public and system delegation,
|
between public and system delegation,xmlCatalogSetDefaultPrefer() allows
|
||||||
xmlCatalogSetDefaultPrefer() allows this, xmlCatalogSetDefaults() and
|
this, xmlCatalogSetDefaults() andxmlCatalogGetDefaults() allow to control if
|
||||||
xmlCatalogGetDefaults() allow to control if XML Catalogs resolution should
|
XML Catalogs resolution shouldbe forbidden, allowed for global catalog, for
|
||||||
be forbidden, allowed for global catalog, for document catalog or both, the
|
document catalog or both, thedefault is to allow both.</p><p>And of course xmlCatalogSetDebug() allows to generate debug
|
||||||
default is to allow both.</p><p>And of course xmlCatalogSetDebug() allows to generate debug messages
|
messages(through the xmlGenericError() mechanism).</p><h4>Querying routines:</h4><p>xmlCatalogResolve(), xmlCatalogResolveSystem(),
|
||||||
(through the xmlGenericError() mechanism).</p><h4>Querying routines:</h4><p>xmlCatalogResolve(), xmlCatalogResolveSystem(), xmlCatalogResolvePublic()
|
xmlCatalogResolvePublic()and xmlCatalogResolveURI() are relatively explicit
|
||||||
and xmlCatalogResolveURI() are relatively explicit if you read the XML
|
if you read the XMLCatalog specification they correspond to section 7
|
||||||
Catalog specification they correspond to section 7 algorithms, they should
|
algorithms, they shouldalso work if you have loaded an SGML catalog with a
|
||||||
also work if you have loaded an SGML catalog with a simplified semantic.</p><p>xmlCatalogLocalResolve() and xmlCatalogLocalResolveURI() are the same but
|
simplified semantic.</p><p>xmlCatalogLocalResolve() and xmlCatalogLocalResolveURI() are the same
|
||||||
operate on the document catalog list</p><h4>Cleanup and Miscellaneous:</h4><p>xmlCatalogCleanup() free-up the global catalog, xmlCatalogFreeLocal() is
|
butoperate on the document catalog list</p><h4>Cleanup and Miscellaneous:</h4><p>xmlCatalogCleanup() free-up the global catalog, xmlCatalogFreeLocal()
|
||||||
the per-document equivalent.</p><p>xmlCatalogAdd() and xmlCatalogRemove() are used to dynamically modify the
|
isthe per-document equivalent.</p><p>xmlCatalogAdd() and xmlCatalogRemove() are used to dynamically modify
|
||||||
first catalog in the global list, and xmlCatalogDump() allows to dump a
|
thefirst catalog in the global list, and xmlCatalogDump() allows to dump
|
||||||
catalog state, those routines are primarily designed for xmlcatalog, I'm not
|
acatalog state, those routines are primarily designed for xmlcatalog, I'm
|
||||||
sure that exposing more complex interfaces (like navigation ones) would be
|
notsure that exposing more complex interfaces (like navigation ones) would
|
||||||
really useful.</p><p>The xmlParseCatalogFile() is a function used to load XML Catalog files,
|
bereally useful.</p><p>The xmlParseCatalogFile() is a function used to load XML Catalog
|
||||||
it's similar as xmlParseFile() except it bypass all catalog lookups, it's
|
files,it's similar as xmlParseFile() except it bypass all catalog lookups,
|
||||||
provided because this functionality may be useful for client tools.</p><h4>threaded environments:</h4><p>Since the catalog tree is built progressively, some care has been taken to
|
it'sprovided because this functionality may be useful for client tools.</p><h4>threaded environments:</h4><p>Since the catalog tree is built progressively, some care has been taken
|
||||||
try to avoid troubles in multithreaded environments. The code is now thread
|
totry to avoid troubles in multithreaded environments. The code is now
|
||||||
safe assuming that the libxml2 library has been compiled with threads
|
threadsafe assuming that the libxml2 library has been compiled with
|
||||||
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
|
threadssupport.</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
|
||||||
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
|
muchliterature 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">theneed
|
||||||
need for catalogs</a>, it provides a lot of context informations even if
|
for catalogs</a>, it provides a lot of context informations even ifI
|
||||||
I don't agree with everything presented. Norm also wrote a more recent
|
don't agree with everything presented. Norm also wrote a more
|
||||||
article <a href="http://wwws.sun.com/software/xml/developers/resolver/article/">XML
|
recentarticle <a href="http://wwws.sun.com/software/xml/developers/resolver/article/">XMLentities
|
||||||
entities and URI resolvers</a> describing them.</li>
|
and URI resolvers</a>describing them.</li>
|
||||||
<li>An <a href="http://home.ccil.org/~cowan/XML/XCatalog.html">old XML
|
<li>An <a href="http://home.ccil.org/~cowan/XML/XCatalog.html">old
|
||||||
catalog proposal</a> from John Cowan</li>
|
XMLcatalog proposal</a>from John Cowan</li>
|
||||||
<li>The <a href="http://www.rddl.org/">Resource Directory Description
|
<li>The <a href="http://www.rddl.org/">Resource Directory
|
||||||
Language</a> (RDDL) another catalog system but more oriented toward
|
DescriptionLanguage</a>(RDDL) another catalog system but more oriented
|
||||||
providing metadata for XML namespaces.</li>
|
towardproviding metadata for XML namespaces.</li>
|
||||||
<li>the page from the OASIS Technical <a href="http://www.oasis-open.org/committees/entity/">Committee on Entity
|
<li>the page from the OASIS Technical <a href="http://www.oasis-open.org/committees/entity/">Committee on
|
||||||
Resolution</a> who maintains XML Catalog, you will find pointers to the
|
EntityResolution</a>who maintains XML Catalog, you will find pointers to
|
||||||
specification update, some background and pointers to others tools
|
thespecification update, some background and pointers to others
|
||||||
providing XML Catalog support</li>
|
toolsproviding XML Catalog support</li>
|
||||||
<li>There is a <a href="buildDocBookCatalog">shell script</a> to generate
|
<li>There is a <a href="buildDocBookCatalog">shell script</a>to generateXML
|
||||||
XML Catalogs for DocBook 4.1.2 . If it can write to the /etc/xml/
|
Catalogs for DocBook 4.1.2 . If it can write to the /etc/xml/directory,
|
||||||
directory, it will set-up /etc/xml/catalog and /etc/xml/docbook based on
|
it will set-up /etc/xml/catalog and /etc/xml/docbook based onthe
|
||||||
the resources found on the system. Otherwise it will just create
|
resources found on the system. Otherwise it will just create~/xmlcatalog
|
||||||
~/xmlcatalog and ~/dbkxmlcatalog and doing:
|
and ~/dbkxmlcatalog and doing:
|
||||||
<p><code>export XML_CATALOG_FILES=$HOME/xmlcatalog</code></p>
|
<p><code>export XML_CATALOG_FILES=$HOME/xmlcatalog</code></p>
|
||||||
<p>should allow to process DocBook documentations without requiring
|
<p>should allow to process DocBook documentations without
|
||||||
network accesses for the DTD or stylesheets</p>
|
requiringnetwork accesses for the DTD or stylesheets</p>
|
||||||
</li>
|
</li>
|
||||||
<li>I have uploaded <a href="ftp://xmlsoft.org/libxml2/test/dbk412catalog.tar.gz">a
|
<li>I have uploaded <a href="ftp://xmlsoft.org/libxml2/test/dbk412catalog.tar.gz">asmall
|
||||||
small tarball</a> containing XML Catalogs for DocBook 4.1.2 which seems
|
tarball</a>containing XML Catalogs for DocBook 4.1.2 which seemsto work
|
||||||
to work fine for me too</li>
|
fine for me too</li>
|
||||||
<li>The <a href="http://www.xmlsoft.org/xmlcatalog_man.html">xmlcatalog
|
<li>The <a href="http://www.xmlsoft.org/xmlcatalog_man.html">xmlcatalogmanual
|
||||||
manual page</a></li>
|
page</a></li>
|
||||||
</ul><p>If you have suggestions for corrections or additions, simply contact
|
</ul><p>If you have suggestions for corrections or additions, simply contactme:</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>
|
||||||
me:</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>
|
|
||||||
|
|||||||
@@ -7,34 +7,33 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>Contributions</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>Contributions</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"><ul><li>Bjorn Reese, William Brack and Thomas Broyer have provided a number of
|
</style><title>Contributions</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>Contributions</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"><ul><li>Bjorn Reese, William Brack and Thomas Broyer have provided a number
|
||||||
patches, Gary Pennington worked on the validation API, threading support
|
ofpatches, Gary Pennington worked on the validation API, threading
|
||||||
and Solaris port.</li>
|
supportand Solaris port.</li>
|
||||||
<li>John Fleck helps maintaining the documentation and man pages.</li>
|
<li>John Fleck helps maintaining the documentation and man pages.</li>
|
||||||
<li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the
|
<li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a>is now
|
||||||
maintainer of the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
|
themaintainer of the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he
|
||||||
binaries</a></li>
|
providesbinaries</a></li>
|
||||||
<li><a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a> provides
|
<li><a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a>provides<a href="http://garypennington.net/libxml2/">Solaris binaries</a></li>
|
||||||
<a href="http://garypennington.net/libxml2/">Solaris binaries</a></li>
|
<li><a href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">MattSergeant</a>developed
|
||||||
<li><a href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
|
<a href="http://axkit.org/download/">XML::LibXSLT</a>, a Perl wrapper
|
||||||
Sergeant</a> developed <a href="http://axkit.org/download/">XML::LibXSLT</a>, a Perl wrapper for
|
forlibxml2/libxslt as part of the <a href="http://axkit.com/">AxKit
|
||||||
libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML
|
XMLapplication server</a></li>
|
||||||
application server</a></li>
|
<li><a href="mailto:fnatter@gmx.net">Felix Natter</a>and <a href="mailto:geertk@ai.rug.nl">Geert Kloosterman</a>provide <a href="libxml-doc.el">an emacs module</a>to lookup libxml(2)
|
||||||
<li><a href="mailto:fnatter@gmx.net">Felix Natter</a> and <a href="mailto:geertk@ai.rug.nl">Geert Kloosterman</a> provide <a href="libxml-doc.el">an emacs module</a> to lookup libxml(2) functions
|
functionsdocumentation</li>
|
||||||
documentation</li>
|
<li><a href="mailto:sherwin@nlm.nih.gov">Ziying Sherwin</a>provided <a href="http://xmlsoft.org/messages/0488.html">man pages</a></li>
|
||||||
<li><a href="mailto:sherwin@nlm.nih.gov">Ziying Sherwin</a> provided <a href="http://xmlsoft.org/messages/0488.html">man pages</a></li>
|
<li>there is a module for <a href="http://acs-misc.sourceforge.net/nsxml.html">libxml/libxslt
|
||||||
<li>there is a module for <a href="http://acs-misc.sourceforge.net/nsxml.html">libxml/libxslt support
|
supportin OpenNSD/AOLServer</a></li>
|
||||||
in OpenNSD/AOLServer</a></li>
|
<li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a>provided
|
||||||
<li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provided the
|
thefirst version of libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
|
||||||
first version of libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
|
<li>Petr Kozelka provides <a href="http://sourceforge.net/projects/libxml2-pas">Pascal units to
|
||||||
<li>Petr Kozelka provides <a href="http://sourceforge.net/projects/libxml2-pas">Pascal units to glue
|
gluelibxml2</a>with Kylix and Delphi and other Pascal compilers</li>
|
||||||
libxml2</a> with Kylix and Delphi and other Pascal compilers</li>
|
<li><a href="mailto:aleksey@aleksey.com">Aleksey Sanin</a>implemented the<a href="http://www.w3.org/Signature/">XML Canonicalization and XMLDigital
|
||||||
<li><a href="mailto:aleksey@aleksey.com">Aleksey Sanin</a> implemented the
|
Signature</a><a href="http://www.aleksey.com/xmlsec/">implementations for
|
||||||
<a href="http://www.w3.org/Signature/">XML Canonicalization and XML
|
libxml2</a></li>
|
||||||
Digital Signature</a> <a href="http://www.aleksey.com/xmlsec/">implementations for libxml2</a></li>
|
<li><a href="mailto:Steve.Ball@explain.com.au">Steve
|
||||||
<li><a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a> and
|
Ball</a>andcontributors maintain <a href="http://tclxml.sourceforge.net/">tclbindings for libxml2 and
|
||||||
contributors maintain <a href="http://tclxml.sourceforge.net/">tcl
|
libxslt</a>, as well as <a href="http://tclxml.sf.net/tkxmllint.html">tkxmllint</a>a GUI forxmllint
|
||||||
bindings for libxml2 and libxslt</a>, as well as <a href="http://tclxml.sf.net/tkxmllint.html">tkxmllint</a> a GUI for
|
and <a href="http://tclxml.sf.net/tkxsltproc.html">tkxsltproc</a>a GUI
|
||||||
xmllint and <a href="http://tclxml.sf.net/tkxsltproc.html">tkxsltproc</a>
|
for xsltproc.</li>
|
||||||
a GUI for xsltproc.</li>
|
|
||||||
</ul><p></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>
|
</ul><p></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>
|
||||||
|
|||||||
@@ -707,6 +707,7 @@ void <a href="#xmlResetError">xmlResetError</a> (<a href="libxml2-xmlerror.htm
|
|||||||
<a name="XML_SCHEMAV_CVC_TYPE_2">XML_SCHEMAV_CVC_TYPE_2</a> = 1876 /* 1876 */
|
<a name="XML_SCHEMAV_CVC_TYPE_2">XML_SCHEMAV_CVC_TYPE_2</a> = 1876 /* 1876 */
|
||||||
<a name="XML_SCHEMAV_CVC_IDC">XML_SCHEMAV_CVC_IDC</a> = 1877 /* 1877 */
|
<a name="XML_SCHEMAV_CVC_IDC">XML_SCHEMAV_CVC_IDC</a> = 1877 /* 1877 */
|
||||||
<a name="XML_SCHEMAV_CVC_WILDCARD">XML_SCHEMAV_CVC_WILDCARD</a> = 1878 /* 1878 */
|
<a name="XML_SCHEMAV_CVC_WILDCARD">XML_SCHEMAV_CVC_WILDCARD</a> = 1878 /* 1878 */
|
||||||
|
<a name="XML_SCHEMAV_MISC">XML_SCHEMAV_MISC</a> = 1879 /* 1879 */
|
||||||
<a name="XML_XPTR_UNKNOWN_SCHEME">XML_XPTR_UNKNOWN_SCHEME</a> = 1900
|
<a name="XML_XPTR_UNKNOWN_SCHEME">XML_XPTR_UNKNOWN_SCHEME</a> = 1900
|
||||||
<a name="XML_XPTR_CHILDSEQ_START">XML_XPTR_CHILDSEQ_START</a> = 1901 /* 1901 */
|
<a name="XML_XPTR_CHILDSEQ_START">XML_XPTR_CHILDSEQ_START</a> = 1901 /* 1901 */
|
||||||
<a name="XML_XPTR_EVAL_FAILED">XML_XPTR_EVAL_FAILED</a> = 1902 /* 1902 */
|
<a name="XML_XPTR_EVAL_FAILED">XML_XPTR_EVAL_FAILED</a> = 1902 /* 1902 */
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ int <a href="#xmlXPathCastNodeSetToBoolean">xmlXPathCastNodeSetToBoolean</a> (<a
|
|||||||
typedef <a href="libxml2-xpath.html#xmlXPathFunction">xmlXPathFunction</a> <a href="#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> (void * ctxt, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ns_uri);
|
typedef <a href="libxml2-xpath.html#xmlXPathFunction">xmlXPathFunction</a> <a href="#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> (void * ctxt, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ns_uri);
|
||||||
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlXPathCastNodeToString">xmlXPathCastNodeToString</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
|
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlXPathCastNodeToString">xmlXPathCastNodeToString</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
|
||||||
int <a href="#xmlXPathIsNaN">xmlXPathIsNaN</a> (double val);
|
int <a href="#xmlXPathIsNaN">xmlXPathIsNaN</a> (double val);
|
||||||
|
int <a href="#xmlXPathContextSetCache">xmlXPathContextSetCache</a> (<a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br/> int active, <br/> int value, <br/> int options);
|
||||||
<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertString">xmlXPathConvertString</a> (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
|
<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertString">xmlXPathConvertString</a> (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
|
||||||
<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a> (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
|
<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a> (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val);
|
||||||
int <a href="#xmlXPathIsInf">xmlXPathIsInf</a> (double val);
|
int <a href="#xmlXPathIsInf">xmlXPathIsInf</a> (double val);
|
||||||
@@ -209,7 +210,8 @@ The content of this structure is not made public by the API.
|
|||||||
<a href="libxml2-xmlerror.html#xmlError">xmlError</a> lastError : the last error
|
<a href="libxml2-xmlerror.html#xmlError">xmlError</a> lastError : the last error
|
||||||
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> debugNode : the source node XSLT dictionnary
|
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> debugNode : the source node XSLT dictionnary
|
||||||
<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict : dictionnary if any
|
<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict : dictionnary if any
|
||||||
int flags : flags to control compilation
|
int flags : flags to control compilation Cache for reusal of XPath objects
|
||||||
|
void * cache
|
||||||
} xmlXPathContext;
|
} xmlXPathContext;
|
||||||
</pre><p/>
|
</pre><p/>
|
||||||
</div>
|
</div>
|
||||||
@@ -435,6 +437,10 @@ The content of this structure is not made public by the API.
|
|||||||
<div class="refsect2" lang="en"><h3><a name="xmlXPathCompiledEval"/>xmlXPathCompiledEval ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathCompiledEval (<a href="libxml2-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br/>
|
<div class="refsect2" lang="en"><h3><a name="xmlXPathCompiledEval"/>xmlXPathCompiledEval ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathCompiledEval (<a href="libxml2-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br/>
|
||||||
</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
|
</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
|
||||||
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div></div>
|
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div></div>
|
||||||
|
<hr/>
|
||||||
|
<div class="refsect2" lang="en"><h3><a name="xmlXPathContextSetCache"/>xmlXPathContextSetCache ()</h3><pre class="programlisting">int xmlXPathContextSetCache (<a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br/> int active, <br/> int value, <br/> int options)<br/>
|
||||||
|
</pre><p>Creates/frees an object cache on the XPath context. If activates XPath objects (xmlXPathObject) will be cached internally to be reused. @options: 0: This will set the XPath object caching: @value: This will set the maximum number of XPath objects to be cached per slot There are 5 slots for: node-set, string, number, boolean, and misc objects. Use <0 for the default number (100). Other values for @options have currently no effect.</p>
|
||||||
|
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>active</tt></i>:</span></td><td>enables/disables (creates/frees) the cache</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a value with semantics dependant on @options</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>options (currently only the value 0 is used)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the setting succeeded, and -1 on API or internal errors.</td></tr></tbody></table></div></div>
|
||||||
<hr/>
|
<hr/>
|
||||||
<div class="refsect2" lang="en"><h3><a name="xmlXPathConvertBoolean"/>xmlXPathConvertBoolean ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathConvertBoolean (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br/>
|
<div class="refsect2" lang="en"><h3><a name="xmlXPathConvertBoolean"/>xmlXPathConvertBoolean ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathConvertBoolean (<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br/>
|
||||||
</pre><p>Converts an existing object to its boolean() equivalent</p>
|
</pre><p>Converts an existing object to its boolean() equivalent</p>
|
||||||
|
|||||||
@@ -1297,6 +1297,7 @@
|
|||||||
<function name="XML_SCHEMAV_INVALIDATTR" link="libxml2-xmlerror.html#XML_SCHEMAV_INVALIDATTR"/>
|
<function name="XML_SCHEMAV_INVALIDATTR" link="libxml2-xmlerror.html#XML_SCHEMAV_INVALIDATTR"/>
|
||||||
<function name="XML_SCHEMAV_INVALIDELEM" link="libxml2-xmlerror.html#XML_SCHEMAV_INVALIDELEM"/>
|
<function name="XML_SCHEMAV_INVALIDELEM" link="libxml2-xmlerror.html#XML_SCHEMAV_INVALIDELEM"/>
|
||||||
<function name="XML_SCHEMAV_ISABSTRACT" link="libxml2-xmlerror.html#XML_SCHEMAV_ISABSTRACT"/>
|
<function name="XML_SCHEMAV_ISABSTRACT" link="libxml2-xmlerror.html#XML_SCHEMAV_ISABSTRACT"/>
|
||||||
|
<function name="XML_SCHEMAV_MISC" link="libxml2-xmlerror.html#XML_SCHEMAV_MISC"/>
|
||||||
<function name="XML_SCHEMAV_MISSING" link="libxml2-xmlerror.html#XML_SCHEMAV_MISSING"/>
|
<function name="XML_SCHEMAV_MISSING" link="libxml2-xmlerror.html#XML_SCHEMAV_MISSING"/>
|
||||||
<function name="XML_SCHEMAV_NOROLLBACK" link="libxml2-xmlerror.html#XML_SCHEMAV_NOROLLBACK"/>
|
<function name="XML_SCHEMAV_NOROLLBACK" link="libxml2-xmlerror.html#XML_SCHEMAV_NOROLLBACK"/>
|
||||||
<function name="XML_SCHEMAV_NOROOT" link="libxml2-xmlerror.html#XML_SCHEMAV_NOROOT"/>
|
<function name="XML_SCHEMAV_NOROOT" link="libxml2-xmlerror.html#XML_SCHEMAV_NOROOT"/>
|
||||||
@@ -3320,6 +3321,7 @@
|
|||||||
<function name="xmlXPathCompiledEval ()" link="libxml2-xpath.html#xmlXPathCompiledEval"/>
|
<function name="xmlXPathCompiledEval ()" link="libxml2-xpath.html#xmlXPathCompiledEval"/>
|
||||||
<function name="xmlXPathConcatFunction ()" link="libxml2-xpathInternals.html#xmlXPathConcatFunction"/>
|
<function name="xmlXPathConcatFunction ()" link="libxml2-xpathInternals.html#xmlXPathConcatFunction"/>
|
||||||
<function name="xmlXPathContainsFunction ()" link="libxml2-xpathInternals.html#xmlXPathContainsFunction"/>
|
<function name="xmlXPathContainsFunction ()" link="libxml2-xpathInternals.html#xmlXPathContainsFunction"/>
|
||||||
|
<function name="xmlXPathContextSetCache ()" link="libxml2-xpath.html#xmlXPathContextSetCache"/>
|
||||||
<function name="xmlXPathConvertBoolean ()" link="libxml2-xpath.html#xmlXPathConvertBoolean"/>
|
<function name="xmlXPathConvertBoolean ()" link="libxml2-xpath.html#xmlXPathConvertBoolean"/>
|
||||||
<function name="xmlXPathConvertNumber ()" link="libxml2-xpath.html#xmlXPathConvertNumber"/>
|
<function name="xmlXPathConvertNumber ()" link="libxml2-xpath.html#xmlXPathConvertNumber"/>
|
||||||
<function name="xmlXPathConvertString ()" link="libxml2-xpath.html#xmlXPathConvertString"/>
|
<function name="xmlXPathConvertString ()" link="libxml2-xpath.html#xmlXPathConvertString"/>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -7,30 +7,30 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
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 is
|
||||||
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>
|
alsomirrors (<a href="ftp://ftp.planetmirror.com/pub/xmlsoft/">Australia</a>(
|
||||||
, Antonin Sprinzl also provide <a href="ftp://gd.tuwien.ac.at/pub/libxml/">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>,
|
||||||
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>
|
Antonin Sprinzl also provide <a href="ftp://gd.tuwien.ac.at/pub/libxml/">amirror in Austria</a>. (NOTE that
|
||||||
packages installed to compile applications using libxml.)</p><p>You can find all the history of libxml(2) and libxslt releases in the <a href="http://xmlsoft.org/sources/old/">old</a> directory. The precompiled
|
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>packages
|
||||||
Windows binaries made by Igor Zlatovic are available in the <a href="http://xmlsoft.org/sources/win32/">win32</a> directory.</p><p>Binary ports:</p><ul><li>Red Hat RPMs for i386 are available directly on <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a>, the source RPM will compile on
|
installed to compile applications using libxml.)</p><p>You can find all the history of libxml(2) and libxslt releases in the <a href="http://xmlsoft.org/sources/old/">old</a>directory. The
|
||||||
any architecture supported by Red Hat.</li>
|
precompiledWindows binaries made by Igor Zlatovic are available in the <a href="http://xmlsoft.org/sources/win32/">win32</a>directory.</p><p>Binary ports:</p><ul><li>Red Hat RPMs for i386 are available directly on <a href="ftp://xmlsoft.org/libxml2/">xmlsoft.org</a>, the source RPM will
|
||||||
<li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the
|
compile onany architecture supported by Red Hat.</li>
|
||||||
maintainer of the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
|
<li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a>is now
|
||||||
binaries</a>.</li>
|
themaintainer of the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he
|
||||||
<li>Blastwave provides <a href="http://www.blastwave.org/packages.php/libxml2">Solaris
|
providesbinaries</a>.</li>
|
||||||
binaries</a>.</li>
|
<li>Blastwave provides <a href="http://www.blastwave.org/packages.php/libxml2">Solarisbinaries</a>.</li>
|
||||||
<li><a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a> provides <a href="http://www.explain.com.au/oss/libxml2xslt.html">Mac Os X
|
<li><a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a>provides <a href="http://www.explain.com.au/oss/libxml2xslt.html">Mac Os
|
||||||
binaries</a>.</li>
|
Xbinaries</a>.</li>
|
||||||
<li>The HP-UX porting center provides <a href="http://hpux.connect.org.uk/hppd/hpux/Gnome/">HP-UX binaries</a></li>
|
<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
|
<li>Bull provides precompiled <a href="http://gnome.bullfreeware.com/new_index.html">RPMs for
|
||||||
patr of their GNOME packages</li>
|
AIX</a>aspatr 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 cvs 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>
|
<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
|
</ul><p><a name="Contribs" id="Contribs">Contributions:</a></p><p>I do accept external contributions, especially if compiling on
|
||||||
platform, get in touch with the list to upload the package, wrappers for
|
anotherplatform, get in touch with the list to upload the package, wrappers
|
||||||
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
|
forvarious 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
|
||||||
base</a>. Check the <a href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>
|
CVSbase</a>. Check the <a href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>page;
|
||||||
page; the CVS module is <b>libxml2</b>.</p>
|
the CVS module is <b>libxml2</b>.</p>
|
||||||
</li>
|
</li>
|
||||||
<li>The <strong>libxslt</strong> module is also present there</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>
|
</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>
|
||||||
|
|||||||
@@ -7,44 +7,44 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>Encodings support</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>Encodings support</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>If you are not really familiar with Internationalization (usual shortcut
|
</style><title>Encodings support</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>Encodings support</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>If you are not really familiar with Internationalization (usual shortcutis
|
||||||
is I18N) , Unicode, characters and glyphs, I suggest you read a <a href="http://www.tbray.org/ongoing/When/200x/2003/04/06/Unicode">presentation</a>
|
I18N) , Unicode, characters and glyphs, I suggest you read a <a href="http://www.tbray.org/ongoing/When/200x/2003/04/06/Unicode">presentation</a>by
|
||||||
by Tim Bray on Unicode and why you should care about it.</p><p>If you don't understand why <b>it does not make sense to have a string
|
Tim Bray on Unicode and why you should care about it.</p><p>If you don't understand why <b>it does not make sense to have a
|
||||||
without knowing what encoding it uses</b>, then as Joel Spolsky said <a href="http://www.joelonsoftware.com/articles/Unicode.html">please do not
|
stringwithout knowing what encoding it uses</b>, then as Joel Spolsky said <a href="http://www.joelonsoftware.com/articles/Unicode.html">please do notwrite
|
||||||
write another line of code until you finish reading that article.</a>. It is
|
another line of code until you finish reading that article.</a>. It isa
|
||||||
a prerequisite to understand this page, and avoid a lot of problems with
|
prerequisite to understand this page, and avoid a lot of problems
|
||||||
libxml2, XML or text processing in general.</p><p>Table of Content:</p><ol><li><a href="encoding.html#What">What does internationalization support
|
withlibxml2, XML or text processing in general.</p><p>Table of Content:</p><ol><li><a href="encoding.html#What">What does internationalization supportmean
|
||||||
mean ?</a></li>
|
?</a></li>
|
||||||
<li><a href="encoding.html#internal">The internal encoding, how and
|
<li><a href="encoding.html#internal">The internal encoding, how
|
||||||
why</a></li>
|
andwhy</a></li>
|
||||||
<li><a href="encoding.html#implemente">How is it implemented ?</a></li>
|
<li><a href="encoding.html#implemente">How is it implemented ?</a></li>
|
||||||
<li><a href="encoding.html#Default">Default supported encodings</a></li>
|
<li><a href="encoding.html#Default">Default supported encodings</a></li>
|
||||||
<li><a href="encoding.html#extend">How to extend the existing
|
<li><a href="encoding.html#extend">How to extend the
|
||||||
support</a></li>
|
existingsupport</a></li>
|
||||||
</ol><h3><a name="What" id="What">What does internationalization support mean ?</a></h3><p>XML was designed from the start to allow the support of any character set
|
</ol><h3><a name="What" id="What">What does internationalization support mean ?</a></h3><p>XML was designed from the start to allow the support of any character
|
||||||
by using Unicode. Any conformant XML parser has to support the UTF-8 and
|
setby using Unicode. Any conformant XML parser has to support the UTF-8
|
||||||
UTF-16 default encodings which can both express the full unicode ranges. UTF8
|
andUTF-16 default encodings which can both express the full unicode ranges.
|
||||||
is a variable length encoding whose greatest points are to reuse the same
|
UTF8is a variable length encoding whose greatest points are to reuse the
|
||||||
encoding for ASCII and to save space for Western encodings, but it is a bit
|
sameencoding for ASCII and to save space for Western encodings, but it is a
|
||||||
more complex to handle in practice. UTF-16 use 2 bytes per character (and
|
bitmore complex to handle in practice. UTF-16 use 2 bytes per character
|
||||||
sometimes combines two pairs), it makes implementation easier, but looks a
|
(andsometimes combines two pairs), it makes implementation easier, but looks
|
||||||
bit overkill for Western languages encoding. Moreover the XML specification
|
abit overkill for Western languages encoding. Moreover the XML
|
||||||
allows the document to be encoded in other encodings at the condition that
|
specificationallows the document to be encoded in other encodings at the
|
||||||
they are clearly labeled as such. For example the following is a wellformed
|
condition thatthey are clearly labeled as such. For example the following is
|
||||||
XML document encoded in ISO-8859-1 and using accentuated letters that we
|
a wellformedXML document encoded in ISO-8859-1 and using accentuated letters
|
||||||
French like for both markup and content:</p><pre><?xml version="1.0" encoding="ISO-8859-1"?>
|
that weFrench like for both markup and content:</p><pre><?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
<tr<EFBFBD>s>l<EFBFBD></tr<74>s></pre><p>Having internationalization support in libxml2 means the following:</p><ul><li>the document is properly parsed</li>
|
<tr<EFBFBD>s>l<EFBFBD></tr<74>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>informations about it's encoding are saved</li>
|
||||||
<li>it can be modified</li>
|
<li>it can be modified</li>
|
||||||
<li>it can be saved in its original encoding</li>
|
<li>it can be saved in its original encoding</li>
|
||||||
<li>it can also be saved in another encoding supported by libxml2 (for
|
<li>it can also be saved in another encoding supported by libxml2
|
||||||
example straight UTF8 or even an ASCII form)</li>
|
(forexample straight UTF8 or even an ASCII form)</li>
|
||||||
</ul><p>Another very important point is that the whole libxml2 API, with the
|
</ul><p>Another very important point is that the whole libxml2 API, with
|
||||||
exception of a few routines to read with a specific encoding or save to a
|
theexception of a few routines to read with a specific encoding or save to
|
||||||
specific encoding, is completely agnostic about the original encoding of the
|
aspecific encoding, is completely agnostic about the original encoding of
|
||||||
document.</p><p>It should be noted too that the HTML parser embedded in libxml2 now obey
|
thedocument.</p><p>It should be noted too that the HTML parser embedded in libxml2 now
|
||||||
the same rules too, the following document will be (as of 2.2.2) handled in
|
obeythe same rules too, the following document will be (as of 2.2.2) handled
|
||||||
an internationalized fashion by libxml2 too:</p><pre><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
|
inan internationalized fashion by libxml2 too:</p><pre><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
|
||||||
"http://www.w3.org/TR/REC-html40/loose.dtd">
|
"http://www.w3.org/TR/REC-html40/loose.dtd">
|
||||||
<html lang="fr">
|
<html lang="fr">
|
||||||
<head>
|
<head>
|
||||||
@@ -52,59 +52,60 @@ an internationalized fashion by libxml2 too:</p><pre><!DOCTYPE HTML PUBLIC "-
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<p>W3C cr<63>e des standards pour le Web.</body>
|
<p>W3C cr<63>e des standards pour le Web.</body>
|
||||||
</html></pre><h3><a name="internal" id="internal">The internal encoding, how and why</a></h3><p>One of the core decisions was to force all documents to be converted to a
|
</html></pre><h3><a name="internal" id="internal">The internal encoding, how and why</a></h3><p>One of the core decisions was to force all documents to be converted to
|
||||||
default internal encoding, and that encoding to be UTF-8, here are the
|
adefault internal encoding, and that encoding to be UTF-8, here are
|
||||||
rationales for those choices:</p><ul><li>keeping the native encoding in the internal form would force the libxml
|
therationales for those choices:</p><ul><li>keeping the native encoding in the internal form would force the
|
||||||
users (or the code associated) to be fully aware of the encoding of the
|
libxmlusers (or the code associated) to be fully aware of the encoding of
|
||||||
original document, for examples when adding a text node to a document,
|
theoriginal document, for examples when adding a text node to a
|
||||||
the content would have to be provided in the document encoding, i.e. the
|
document,the content would have to be provided in the document encoding,
|
||||||
client code would have to check it before hand, make sure it's conformant
|
i.e. theclient code would have to check it before hand, make sure it's
|
||||||
to the encoding, etc ... Very hard in practice, though in some specific
|
conformantto the encoding, etc ... Very hard in practice, though in some
|
||||||
cases this may make sense.</li>
|
specificcases this may make sense.</li>
|
||||||
<li>the second decision was which encoding. From the XML spec only UTF8 and
|
<li>the second decision was which encoding. From the XML spec only UTF8
|
||||||
UTF16 really makes sense as being the two only encodings for which there
|
andUTF16 really makes sense as being the two only encodings for which
|
||||||
is mandatory support. UCS-4 (32 bits fixed size encoding) could be
|
thereis mandatory support. UCS-4 (32 bits fixed size encoding) could
|
||||||
considered an intelligent choice too since it's a direct Unicode mapping
|
beconsidered an intelligent choice too since it's a direct Unicode
|
||||||
support. I selected UTF-8 on the basis of efficiency and compatibility
|
mappingsupport. I selected UTF-8 on the basis of efficiency and
|
||||||
with surrounding software:
|
compatibilitywith surrounding software:
|
||||||
<ul><li>UTF-8 while a bit more complex to convert from/to (i.e. slightly
|
<ul><li>UTF-8 while a bit more complex to convert from/to (i.e.
|
||||||
more costly to import and export CPU wise) is also far more compact
|
slightlymore costly to import and export CPU wise) is also far more
|
||||||
than UTF-16 (and UCS-4) for a majority of the documents I see it used
|
compactthan UTF-16 (and UCS-4) for a majority of the documents I see
|
||||||
for right now (RPM RDF catalogs, advogato data, various configuration
|
it usedfor right now (RPM RDF catalogs, advogato data, various
|
||||||
file formats, etc.) and the key point for today's computer
|
configurationfile formats, etc.) and the key point for today's
|
||||||
architecture is efficient uses of caches. If one nearly double the
|
computerarchitecture is efficient uses of caches. If one nearly
|
||||||
memory requirement to store the same amount of data, this will trash
|
double thememory requirement to store the same amount of data, this
|
||||||
caches (main memory/external caches/internal caches) and my take is
|
will trashcaches (main memory/external caches/internal caches) and my
|
||||||
that this harms the system far more than the CPU requirements needed
|
take isthat this harms the system far more than the CPU requirements
|
||||||
for the conversion to UTF-8</li>
|
neededfor the conversion to UTF-8</li>
|
||||||
<li>Most of libxml2 version 1 users were using it with straight ASCII
|
<li>Most of libxml2 version 1 users were using it with straight
|
||||||
most of the time, doing the conversion with an internal encoding
|
ASCIImost of the time, doing the conversion with an internal
|
||||||
requiring all their code to be rewritten was a serious show-stopper
|
encodingrequiring all their code to be rewritten was a serious
|
||||||
for using UTF-16 or UCS-4.</li>
|
show-stopperfor using UTF-16 or UCS-4.</li>
|
||||||
<li>UTF-8 is being used as the de-facto internal encoding standard for
|
<li>UTF-8 is being used as the de-facto internal encoding standard
|
||||||
related code like the <a href="http://www.pango.org/">pango</a>
|
forrelated code like the <a href="http://www.pango.org/">pango</a>upcoming Gnome text widget, and
|
||||||
upcoming Gnome text widget, and a lot of Unix code (yet another place
|
a lot of Unix code (yet another placewhere Unix programmer base takes
|
||||||
where Unix programmer base takes a different approach from Microsoft
|
a different approach from Microsoft- they are using UTF-16)</li>
|
||||||
- they are using UTF-16)</li>
|
|
||||||
</ul></li>
|
</ul></li>
|
||||||
</ul><p>What does this mean in practice for the libxml2 user:</p><ul><li>xmlChar, the libxml2 data type is a byte, those bytes must be assembled
|
</ul><p>What does this mean in practice for the libxml2 user:</p><ul><li>xmlChar, the libxml2 data type is a byte, those bytes must be
|
||||||
as UTF-8 valid strings. The proper way to terminate an xmlChar * string
|
assembledas UTF-8 valid strings. The proper way to terminate an xmlChar *
|
||||||
is simply to append 0 byte, as usual.</li>
|
stringis simply to append 0 byte, as usual.</li>
|
||||||
<li>One just need to make sure that when using chars outside the ASCII set,
|
<li>One just need to make sure that when using chars outside the ASCII
|
||||||
the values has been properly converted to UTF-8</li>
|
set,the values has been properly converted to UTF-8</li>
|
||||||
</ul><h3><a name="implemente" id="implemente">How is it implemented ?</a></h3><p>Let's describe how all this works within libxml, basically the I18N
|
</ul><h3><a name="implemente" id="implemente">How is it implemented ?</a></h3><p>Let's describe how all this works within libxml, basically the
|
||||||
(internationalization) support get triggered only during I/O operation, i.e.
|
I18N(internationalization) support get triggered only during I/O operation,
|
||||||
when reading a document or saving one. Let's look first at the reading
|
i.e.when reading a document or saving one. Let's look first at the
|
||||||
sequence:</p><ol><li>when a document is processed, we usually don't know the encoding, a
|
readingsequence:</p><ol><li>when a document is processed, we usually don't know the encoding,
|
||||||
simple heuristic allows to detect UTF-16 and UCS-4 from encodings where
|
asimple heuristic allows to detect UTF-16 and UCS-4 from encodings
|
||||||
the ASCII range (0-0x7F) maps with ASCII</li>
|
wherethe ASCII range (0-0x7F) maps with ASCII</li>
|
||||||
<li>the xml declaration if available is parsed, including the encoding
|
<li>the xml declaration if available is parsed, including the
|
||||||
declaration. At that point, if the autodetected encoding is different
|
encodingdeclaration. At that point, if the autodetected encoding is
|
||||||
from the one declared a call to xmlSwitchEncoding() is issued.</li>
|
differentfrom the one declared a call to xmlSwitchEncoding() is
|
||||||
<li>If there is no encoding declaration, then the input has to be in either
|
issued.</li>
|
||||||
UTF-8 or UTF-16, if it is not then at some point when processing the
|
<li>If there is no encoding declaration, then the input has to be in
|
||||||
input, the converter/checker of UTF-8 form will raise an encoding error.
|
eitherUTF-8 or UTF-16, if it is not then at some point when processing
|
||||||
You may end-up with a garbled document, or no document at all ! Example:
|
theinput, the converter/checker of UTF-8 form will raise an encoding
|
||||||
|
error.You may end-up with a garbled document, or no document at all !
|
||||||
|
Example:
|
||||||
<pre>~/XML -> ./xmllint err.xml
|
<pre>~/XML -> ./xmllint err.xml
|
||||||
err.xml:1: error: Input is not proper UTF-8, indicate encoding !
|
err.xml:1: error: Input is not proper UTF-8, indicate encoding !
|
||||||
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
||||||
@@ -113,94 +114,94 @@ err.xml:1: error: Bytes: 0xE8 0x73 0x3E 0x6C
|
|||||||
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
||||||
^</pre>
|
^</pre>
|
||||||
</li>
|
</li>
|
||||||
<li>xmlSwitchEncoding() does an encoding name lookup, canonicalize it, and
|
<li>xmlSwitchEncoding() does an encoding name lookup, canonicalize it,
|
||||||
then search the default registered encoding converters for that encoding.
|
andthen search the default registered encoding converters for that
|
||||||
If it's not within the default set and iconv() support has been compiled
|
encoding.If it's not within the default set and iconv() support has been
|
||||||
it, it will ask iconv for such an encoder. If this fails then the parser
|
compiledit, it will ask iconv for such an encoder. If this fails then the
|
||||||
will report an error and stops processing:
|
parserwill report an error and stops processing:
|
||||||
<pre>~/XML -> ./xmllint err2.xml
|
<pre>~/XML -> ./xmllint err2.xml
|
||||||
err2.xml:1: error: Unsupported encoding UnsupportedEnc
|
err2.xml:1: error: Unsupported encoding UnsupportedEnc
|
||||||
<?xml version="1.0" encoding="UnsupportedEnc"?>
|
<?xml version="1.0" encoding="UnsupportedEnc"?>
|
||||||
^</pre>
|
^</pre>
|
||||||
</li>
|
</li>
|
||||||
<li>From that point the encoder processes progressively the input (it is
|
<li>From that point the encoder processes progressively the input (it
|
||||||
plugged as a front-end to the I/O module) for that entity. It captures
|
isplugged as a front-end to the I/O module) for that entity. It
|
||||||
and converts on-the-fly the document to be parsed to UTF-8. The parser
|
capturesand converts on-the-fly the document to be parsed to UTF-8. The
|
||||||
itself just does UTF-8 checking of this input and process it
|
parseritself just does UTF-8 checking of this input and process
|
||||||
transparently. The only difference is that the encoding information has
|
ittransparently. The only difference is that the encoding information
|
||||||
been added to the parsing context (more precisely to the input
|
hasbeen added to the parsing context (more precisely to the
|
||||||
corresponding to this entity).</li>
|
inputcorresponding to this entity).</li>
|
||||||
<li>The result (when using DOM) is an internal form completely in UTF-8
|
<li>The result (when using DOM) is an internal form completely in UTF-8with
|
||||||
with just an encoding information on the document node.</li>
|
just an encoding information on the document node.</li>
|
||||||
</ol><p>Ok then what happens when saving the document (assuming you
|
</ol><p>Ok then what happens when saving the document (assuming youcollected/built
|
||||||
collected/built an xmlDoc DOM like structure) ? It depends on the function
|
an xmlDoc DOM like structure) ? It depends on the functioncalled,
|
||||||
called, xmlSaveFile() will just try to save in the original encoding, while
|
xmlSaveFile() will just try to save in the original encoding,
|
||||||
xmlSaveFileTo() and xmlSaveFileEnc() can optionally save to a given
|
whilexmlSaveFileTo() and xmlSaveFileEnc() can optionally save to a
|
||||||
encoding:</p><ol><li>if no encoding is given, libxml2 will look for an encoding value
|
givenencoding:</p><ol><li>if no encoding is given, libxml2 will look for an encoding
|
||||||
associated to the document and if it exists will try to save to that
|
valueassociated to the document and if it exists will try to save to
|
||||||
encoding,
|
thatencoding,
|
||||||
<p>otherwise everything is written in the internal form, i.e. UTF-8</p>
|
<p>otherwise everything is written in the internal form, i.e. UTF-8</p>
|
||||||
</li>
|
</li>
|
||||||
<li>so if an encoding was specified, either at the API level or on the
|
<li>so if an encoding was specified, either at the API level or on
|
||||||
document, libxml2 will again canonicalize the encoding name, lookup for a
|
thedocument, libxml2 will again canonicalize the encoding name, lookup
|
||||||
converter in the registered set or through iconv. If not found the
|
for aconverter in the registered set or through iconv. If not found
|
||||||
function will return an error code</li>
|
thefunction will return an error code</li>
|
||||||
<li>the converter is placed before the I/O buffer layer, as another kind of
|
<li>the converter is placed before the I/O buffer layer, as another kind
|
||||||
buffer, then libxml2 will simply push the UTF-8 serialization to through
|
ofbuffer, then libxml2 will simply push the UTF-8 serialization to
|
||||||
that buffer, which will then progressively be converted and pushed onto
|
throughthat buffer, which will then progressively be converted and pushed
|
||||||
the I/O layer.</li>
|
ontothe I/O layer.</li>
|
||||||
<li>It is possible that the converter code fails on some input, for example
|
<li>It is possible that the converter code fails on some input, for
|
||||||
trying to push an UTF-8 encoded Chinese character through the UTF-8 to
|
exampletrying to push an UTF-8 encoded Chinese character through the
|
||||||
ISO-8859-1 converter won't work. Since the encoders are progressive they
|
UTF-8 toISO-8859-1 converter won't work. Since the encoders are
|
||||||
will just report the error and the number of bytes converted, at that
|
progressive theywill just report the error and the number of bytes
|
||||||
point libxml2 will decode the offending character, remove it from the
|
converted, at thatpoint libxml2 will decode the offending character,
|
||||||
buffer and replace it with the associated charRef encoding &#123; and
|
remove it from thebuffer and replace it with the associated charRef
|
||||||
resume the conversion. This guarantees that any document will be saved
|
encoding &#123; andresume the conversion. This guarantees that any
|
||||||
without losses (except for markup names where this is not legal, this is
|
document will be savedwithout losses (except for markup names where this
|
||||||
a problem in the current version, in practice avoid using non-ascii
|
is not legal, this isa problem in the current version, in practice avoid
|
||||||
characters for tag or attribute names). A special "ascii" encoding name
|
using non-asciicharacters for tag or attribute names). A special "ascii"
|
||||||
is used to save documents to a pure ascii form can be used when
|
encoding nameis used to save documents to a pure ascii form can be used
|
||||||
portability is really crucial</li>
|
whenportability is really crucial</li>
|
||||||
</ol><p>Here are a few examples based on the same test document:</p><pre>~/XML -> ./xmllint isolat1
|
</ol><p>Here are a few examples based on the same test document:</p><pre>~/XML -> ./xmllint isolat1
|
||||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
<tr<EFBFBD>s>l<EFBFBD></tr<74>s>
|
||||||
~/XML -> ./xmllint --encode UTF-8 isolat1
|
~/XML -> ./xmllint --encode UTF-8 isolat1
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<très>l<EFBFBD> <20></très>
|
<très>l<EFBFBD> <20></très>
|
||||||
~/XML -> </pre><p>The same processing is applied (and reuse most of the code) for HTML I18N
|
~/XML -> </pre><p>The same processing is applied (and reuse most of the code) for HTML
|
||||||
processing. Looking up and modifying the content encoding is a bit more
|
I18Nprocessing. Looking up and modifying the content encoding is a bit
|
||||||
difficult since it is located in a <meta> tag under the <head>,
|
moredifficult since it is located in a <meta> tag under the
|
||||||
so a couple of functions htmlGetMetaEncoding() and htmlSetMetaEncoding() have
|
<head>,so a couple of functions htmlGetMetaEncoding() and
|
||||||
been provided. The parser also attempts to switch encoding on the fly when
|
htmlSetMetaEncoding() havebeen provided. The parser also attempts to switch
|
||||||
detecting such a tag on input. Except for that the processing is the same
|
encoding on the fly whendetecting such a tag on input. Except for that the
|
||||||
(and again reuses the same code).</p><h3><a name="Default" id="Default">Default supported encodings</a></h3><p>libxml2 has a set of default converters for the following encodings
|
processing is the same(and again reuses the same code).</p><h3><a name="Default" id="Default">Default supported encodings</a></h3><p>libxml2 has a set of default converters for the following
|
||||||
(located in encoding.c):</p><ol><li>UTF-8 is supported by default (null handlers)</li>
|
encodings(located in encoding.c):</p><ol><li>UTF-8 is supported by default (null handlers)</li>
|
||||||
<li>UTF-16, both little and big endian</li>
|
<li>UTF-16, both little and big endian</li>
|
||||||
<li>ISO-Latin-1 (ISO-8859-1) covering most western languages</li>
|
<li>ISO-Latin-1 (ISO-8859-1) covering most western languages</li>
|
||||||
<li>ASCII, useful mostly for saving</li>
|
<li>ASCII, useful mostly for saving</li>
|
||||||
<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
|
||||||
predefined entities like &copy; for the Copyright sign.</li>
|
HTMLpredefined entities like &copy; for the Copyright sign.</li>
|
||||||
</ol><p>More over when compiled on an Unix platform with iconv support the full
|
</ol><p>More over when compiled on an Unix platform with iconv support the fullset
|
||||||
set of encodings supported by iconv can be instantly be used by libxml. On a
|
of encodings supported by iconv can be instantly be used by libxml. On alinux
|
||||||
linux machine with glibc-2.1 the list of supported encodings and aliases fill
|
machine with glibc-2.1 the list of supported encodings and aliases fill3 full
|
||||||
3 full pages, and include UCS-4, the full set of ISO-Latin encodings, and the
|
pages, and include UCS-4, the full set of ISO-Latin encodings, and thevarious
|
||||||
various Japanese ones.</p><p>To convert from the UTF-8 values returned from the API to another encoding
|
Japanese ones.</p><p>To convert from the UTF-8 values returned from the API to another
|
||||||
then it is possible to use the function provided from <a href="html/libxml-encoding.html">the encoding module</a> like <a href="html/libxml-encoding.html#UTF8Toisolat1">UTF8Toisolat1</a>, or use the
|
encodingthen it is possible to use the function provided from <a href="html/libxml-encoding.html">the encoding module</a>like <a href="html/libxml-encoding.html#UTF8Toisolat1">UTF8Toisolat1</a>, or use
|
||||||
POSIX <a href="http://www.opengroup.org/onlinepubs/009695399/functions/iconv.html">iconv()</a>
|
thePOSIX <a href="http://www.opengroup.org/onlinepubs/009695399/functions/iconv.html">iconv()</a>API
|
||||||
API directly.</p><h4>Encoding aliases</h4><p>From 2.2.3, libxml2 has support to register encoding names aliases. The
|
directly.</p><h4>Encoding aliases</h4><p>From 2.2.3, libxml2 has support to register encoding names aliases.
|
||||||
goal is to be able to parse document whose encoding is supported but where
|
Thegoal is to be able to parse document whose encoding is supported but
|
||||||
the name differs (for example from the default set of names accepted by
|
wherethe name differs (for example from the default set of names accepted
|
||||||
iconv). The following functions allow to register and handle new aliases for
|
byiconv). The following functions allow to register and handle new aliases
|
||||||
existing encodings. Once registered libxml2 will automatically lookup the
|
forexisting encodings. Once registered libxml2 will automatically lookup
|
||||||
aliases when handling a document:</p><ul><li>int xmlAddEncodingAlias(const char *name, const char *alias);</li>
|
thealiases when handling a document:</p><ul><li>int xmlAddEncodingAlias(const char *name, const char *alias);</li>
|
||||||
<li>int xmlDelEncodingAlias(const char *alias);</li>
|
<li>int xmlDelEncodingAlias(const char *alias);</li>
|
||||||
<li>const char * xmlGetEncodingAlias(const char *alias);</li>
|
<li>const char * xmlGetEncodingAlias(const char *alias);</li>
|
||||||
<li>void xmlCleanupEncodingAliases(void);</li>
|
<li>void xmlCleanupEncodingAliases(void);</li>
|
||||||
</ul><h3><a name="extend" id="extend">How to extend the existing support</a></h3><p>Well adding support for new encoding, or overriding one of the encoders
|
</ul><h3><a name="extend" id="extend">How to extend the existing support</a></h3><p>Well adding support for new encoding, or overriding one of the
|
||||||
(assuming it is buggy) should not be hard, just write input and output
|
encoders(assuming it is buggy) should not be hard, just write input and
|
||||||
conversion routines to/from UTF-8, and register them using
|
outputconversion routines to/from UTF-8, and register them
|
||||||
xmlNewCharEncodingHandler(name, xxxToUTF8, UTF8Toxxx), and they will be
|
usingxmlNewCharEncodingHandler(name, xxxToUTF8, UTF8Toxxx), and they will
|
||||||
called automatically if the parser(s) encounter such an encoding name
|
becalled automatically if the parser(s) encounter such an encoding
|
||||||
(register it uppercase, this will help). The description of the encoders,
|
name(register it uppercase, this will help). The description of the
|
||||||
their arguments and expected return values are described in the encoding.h
|
encoders,their arguments and expected return values are described in the
|
||||||
header.</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>
|
encoding.hheader.</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>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -7,19 +7,18 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>How to help</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>How to help</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>You can help the project in various ways, the best thing to do first is to
|
</style><title>How to help</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>How to help</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>You can help the project in various ways, the best thing to do first is
|
||||||
subscribe to the mailing-list as explained before, check the <a href="http://mail.gnome.org/archives/xml/">archives </a>and the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Gnome bug
|
tosubscribe to the mailing-list as explained before, check the <a href="http://mail.gnome.org/archives/xml/">archives </a>and the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Gnome
|
||||||
database</a>:</p><ol><li>Provide patches when you find problems.</li>
|
bugdatabase</a>:</p><ol><li>Provide patches when you find problems.</li>
|
||||||
<li>Provide the diffs when you port libxml2 to a new platform. They may not
|
<li>Provide the diffs when you port libxml2 to a new platform. They may
|
||||||
be integrated in all cases but help pinpointing portability problems
|
notbe integrated in all cases but help pinpointing portability
|
||||||
and</li>
|
problemsand</li>
|
||||||
<li>Provide documentation fixes (either as patches to the code comments or
|
<li>Provide documentation fixes (either as patches to the code comments
|
||||||
as HTML diffs).</li>
|
oras HTML diffs).</li>
|
||||||
<li>Provide new documentations pieces (translations, examples, etc
|
<li>Provide new documentations pieces (translations, examples, etc...).</li>
|
||||||
...).</li>
|
|
||||||
<li>Check the TODO file and try to close one of the items.</li>
|
<li>Check the TODO file and try to close one of the items.</li>
|
||||||
<li>Take one of the points raised in the archive or the bug database and
|
<li>Take one of the points raised in the archive or the bug database
|
||||||
provide a fix. <a href="mailto:daniel@veillard.com">Get in touch with me
|
andprovide a fix. <a href="mailto:daniel@veillard.com">Get in touch with
|
||||||
</a>before to avoid synchronization problems and check that the suggested
|
me</a>before to avoid synchronization problems and check that the
|
||||||
fix will fit in nicely :-)</li>
|
suggestedfix will fit in nicely :-)</li>
|
||||||
</ol><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>
|
</ol><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>
|
||||||
|
|||||||
@@ -657,6 +657,7 @@ void <a href="#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> (void * userD
|
|||||||
<a name="XML_SCHEMAV_CVC_TYPE_2" id="XML_SCHEMAV_CVC_TYPE_2">XML_SCHEMAV_CVC_TYPE_2</a> = 1876 : 1876
|
<a name="XML_SCHEMAV_CVC_TYPE_2" id="XML_SCHEMAV_CVC_TYPE_2">XML_SCHEMAV_CVC_TYPE_2</a> = 1876 : 1876
|
||||||
<a name="XML_SCHEMAV_CVC_IDC" id="XML_SCHEMAV_CVC_IDC">XML_SCHEMAV_CVC_IDC</a> = 1877 : 1877
|
<a name="XML_SCHEMAV_CVC_IDC" id="XML_SCHEMAV_CVC_IDC">XML_SCHEMAV_CVC_IDC</a> = 1877 : 1877
|
||||||
<a name="XML_SCHEMAV_CVC_WILDCARD" id="XML_SCHEMAV_CVC_WILDCARD">XML_SCHEMAV_CVC_WILDCARD</a> = 1878 : 1878
|
<a name="XML_SCHEMAV_CVC_WILDCARD" id="XML_SCHEMAV_CVC_WILDCARD">XML_SCHEMAV_CVC_WILDCARD</a> = 1878 : 1878
|
||||||
|
<a name="XML_SCHEMAV_MISC" id="XML_SCHEMAV_MISC">XML_SCHEMAV_MISC</a> = 1879 : 1879
|
||||||
<a name="XML_XPTR_UNKNOWN_SCHEME" id="XML_XPTR_UNKNOWN_SCHEME">XML_XPTR_UNKNOWN_SCHEME</a> = 1900
|
<a name="XML_XPTR_UNKNOWN_SCHEME" id="XML_XPTR_UNKNOWN_SCHEME">XML_XPTR_UNKNOWN_SCHEME</a> = 1900
|
||||||
<a name="XML_XPTR_CHILDSEQ_START" id="XML_XPTR_CHILDSEQ_START">XML_XPTR_CHILDSEQ_START</a> = 1901 : 1901
|
<a name="XML_XPTR_CHILDSEQ_START" id="XML_XPTR_CHILDSEQ_START">XML_XPTR_CHILDSEQ_START</a> = 1901 : 1901
|
||||||
<a name="XML_XPTR_EVAL_FAILED" id="XML_XPTR_EVAL_FAILED">XML_XPTR_EVAL_FAILED</a> = 1902 : 1902
|
<a name="XML_XPTR_EVAL_FAILED" id="XML_XPTR_EVAL_FAILED">XML_XPTR_EVAL_FAILED</a> = 1902 : 1902
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ The content of this structure is not made public by the API.
|
|||||||
<pre class="programlisting">int <a href="#xmlXPathCmpNodes">xmlXPathCmpNodes</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
|
<pre class="programlisting">int <a href="#xmlXPathCmpNodes">xmlXPathCmpNodes</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
|
||||||
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> <a href="#xmlXPathCompile">xmlXPathCompile</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str)</pre>
|
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> <a href="#xmlXPathCompile">xmlXPathCompile</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str)</pre>
|
||||||
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathCompiledEval">xmlXPathCompiledEval</a> (<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)</pre>
|
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathCompiledEval">xmlXPathCompiledEval</a> (<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)</pre>
|
||||||
|
<pre class="programlisting">int <a href="#xmlXPathContextSetCache">xmlXPathContextSetCache</a> (<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br /> int active, <br /> int value, <br /> int options)</pre>
|
||||||
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
|
<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
|
||||||
<pre class="programlisting">Function type: <a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a>
|
<pre class="programlisting">Function type: <a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a>
|
||||||
int <a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br /> int type)
|
int <a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a> (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br /> int type)
|
||||||
@@ -138,7 +139,8 @@ The content of this structure is not made public by the API.
|
|||||||
<a href="libxml-xmlerror.html#xmlError">xmlError</a> lastError : the last error
|
<a href="libxml-xmlerror.html#xmlError">xmlError</a> lastError : the last error
|
||||||
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> debugNode : the source node XSLT dictionnary
|
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> debugNode : the source node XSLT dictionnary
|
||||||
<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict : dictionnary if any
|
<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict : dictionnary if any
|
||||||
int flags : flags to control compilation
|
int flags : flags to control compilation Cache for
|
||||||
|
void * cache
|
||||||
}</pre><h3>Enum <a name="xmlXPathError" id="xmlXPathError">xmlXPathError</a></h3><pre class="programlisting">Enum xmlXPathError {
|
}</pre><h3>Enum <a name="xmlXPathError" id="xmlXPathError">xmlXPathError</a></h3><pre class="programlisting">Enum xmlXPathError {
|
||||||
<a name="XPATH_EXPRESSION_OK" id="XPATH_EXPRESSION_OK">XPATH_EXPRESSION_OK</a> = 0
|
<a name="XPATH_EXPRESSION_OK" id="XPATH_EXPRESSION_OK">XPATH_EXPRESSION_OK</a> = 0
|
||||||
<a name="XPATH_NUMBER_ERROR" id="XPATH_NUMBER_ERROR">XPATH_NUMBER_ERROR</a> = 1
|
<a name="XPATH_NUMBER_ERROR" id="XPATH_NUMBER_ERROR">XPATH_NUMBER_ERROR</a> = 1
|
||||||
@@ -244,7 +246,9 @@ The content of this structure is not made public by the API.
|
|||||||
</pre><p>Compile an XPath expression</p>
|
</pre><p>Compile an XPath expression</p>
|
||||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathCompiledEval" id="xmlXPathCompiledEval"></a>Function: xmlXPathCompiledEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathCompiledEval (<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
|
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathCompiledEval" id="xmlXPathCompiledEval"></a>Function: xmlXPathCompiledEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathCompiledEval (<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
|
||||||
</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
|
</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
|
||||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathConvertBoolean" id="xmlXPathConvertBoolean"></a>Function: xmlXPathConvertBoolean</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathConvertBoolean (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
|
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathContextSetCache" id="xmlXPathContextSetCache"></a>Function: xmlXPathContextSetCache</h3><pre class="programlisting">int xmlXPathContextSetCache (<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br /> int active, <br /> int value, <br /> int options)<br />
|
||||||
|
</pre><p>Creates/frees an object cache on the XPath context. If activates XPath objects (xmlXPathObject) will be cached internally to be reused. @options: 0: This will set the XPath object caching: @value: This will set the maximum number of XPath objects to be cached per slot There are 5 slots for: node-set, string, number, boolean, and misc objects. Use <0 for the default number (100). Other values for @options have currently no effect.</p>
|
||||||
|
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>active</tt></i>:</span></td><td>enables/disables (creates/frees) the cache</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a value with semantics dependant on @options</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>options (currently only the value 0 is used)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the setting succeeded, and -1 on API or internal errors.</td></tr></tbody></table></div><h3><a name="xmlXPathConvertBoolean" id="xmlXPathConvertBoolean"></a>Function: xmlXPathConvertBoolean</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathConvertBoolean (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
|
||||||
</pre><p>Converts an existing object to its boolean() equivalent</p>
|
</pre><p>Converts an existing object to its boolean() equivalent</p>
|
||||||
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathConvertFunc" id="xmlXPathConvertFunc"></a>Function type: xmlXPathConvertFunc</h3><pre class="programlisting">Function type: xmlXPathConvertFunc
|
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathConvertFunc" id="xmlXPathConvertFunc"></a>Function type: xmlXPathConvertFunc</h3><pre class="programlisting">Function type: xmlXPathConvertFunc
|
||||||
int xmlXPathConvertFunc (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br /> int type)
|
int xmlXPathConvertFunc (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br /> int type)
|
||||||
|
|||||||
109
doc/index.html
109
doc/index.html
@@ -216,74 +216,73 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<tr>
|
<tr>
|
||||||
<td bgcolor="#fffacd">
|
<td bgcolor="#fffacd">
|
||||||
<p></p>
|
<p></p>
|
||||||
<p style="text-align: right; font-style: italic; font-size: 10pt">"Programming
|
<p style="text-align: right; font-style: italic; font-size: 10pt">"Programmingwith
|
||||||
with libxml2 is like the thrilling embrace of an exotic stranger." <a href="http://diveintomark.org/archives/2004/02/18/libxml2">Mark
|
libxml2 is like the thrilling embrace of an exotic stranger." <a href="http://diveintomark.org/archives/2004/02/18/libxml2">MarkPilgrim</a></p>
|
||||||
Pilgrim</a></p>
|
<p>Libxml2 is the XML C parser and toolkit developed for the Gnome
|
||||||
<p>Libxml2 is the XML C parser and toolkit developed for the Gnome project
|
project(but usable outside of the Gnome platform), it is free software
|
||||||
(but usable outside of the Gnome platform), it is free software available
|
availableunder the <a href="http://www.opensource.org/licenses/mit-license.html">MITLicense</a>.
|
||||||
under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
|
XML itself is a metalanguage to design markup languages, i.e.text language
|
||||||
License</a>. XML itself is a metalanguage to design markup languages, i.e.
|
where semantic and structure are added to the content usingextra "markup"
|
||||||
text language where semantic and structure are added to the content using
|
information enclosed between angle brackets. HTML is the mostwell-known
|
||||||
extra "markup" information enclosed between angle brackets. HTML is the most
|
markup language. Though the library is written in C <a href="python.html">a
|
||||||
well-known markup language. Though the library is written in C <a href="python.html">a variety of language bindings</a> make it available in
|
variety of language bindings</a>make it available inother environments.</p>
|
||||||
other environments.</p>
|
<p>Libxml2 is known to be very portable, the library should build and
|
||||||
<p>Libxml2 is known to be very portable, the library should build and work
|
workwithout serious troubles on a variety of systems (Linux, Unix,
|
||||||
without serious troubles on a variety of systems (Linux, Unix, Windows,
|
Windows,CygWin, MacOS, MacOS X, RISC Os, OS/2, VMS, QNX, MVS, ...)</p>
|
||||||
CygWin, MacOS, MacOS X, RISC Os, OS/2, VMS, QNX, MVS, ...)</p>
|
<p>Libxml2 implements a number of existing standards related to
|
||||||
<p>Libxml2 implements a number of existing standards related to markup
|
markuplanguages:</p>
|
||||||
languages:</p>
|
|
||||||
<ul><li>the XML standard: <a href="http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</a></li>
|
<ul><li>the XML standard: <a href="http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</a></li>
|
||||||
<li>Namespaces in XML: <a href="http://www.w3.org/TR/REC-xml-names/">http://www.w3.org/TR/REC-xml-names/</a></li>
|
<li>Namespaces in XML: <a href="http://www.w3.org/TR/REC-xml-names/">http://www.w3.org/TR/REC-xml-names/</a></li>
|
||||||
<li>XML Base: <a href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a></li>
|
<li>XML Base: <a href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a></li>
|
||||||
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc2396.txt">RFC 2396</a> :
|
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc2396.txt">RFC
|
||||||
Uniform Resource Identifiers <a href="http://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</a></li>
|
2396</a>:Uniform Resource Identifiers <a href="http://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</a></li>
|
||||||
<li>XML Path Language (XPath) 1.0: <a href="http://www.w3.org/TR/xpath">http://www.w3.org/TR/xpath</a></li>
|
<li>XML Path Language (XPath) 1.0: <a href="http://www.w3.org/TR/xpath">http://www.w3.org/TR/xpath</a></li>
|
||||||
<li>HTML4 parser: <a href="http://www.w3.org/TR/html401/">http://www.w3.org/TR/html401/</a></li>
|
<li>HTML4 parser: <a href="http://www.w3.org/TR/html401/">http://www.w3.org/TR/html401/</a></li>
|
||||||
<li>XML Pointer Language (XPointer) Version 1.0: <a href="http://www.w3.org/TR/xptr">http://www.w3.org/TR/xptr</a></li>
|
<li>XML Pointer Language (XPointer) Version 1.0: <a href="http://www.w3.org/TR/xptr">http://www.w3.org/TR/xptr</a></li>
|
||||||
<li>XML Inclusions (XInclude) Version 1.0: <a href="http://www.w3.org/TR/xinclude/">http://www.w3.org/TR/xinclude/</a></li>
|
<li>XML Inclusions (XInclude) Version 1.0: <a href="http://www.w3.org/TR/xinclude/">http://www.w3.org/TR/xinclude/</a></li>
|
||||||
<li>ISO-8859-x encodings, as well as <a href="http://www.cis.ohio-state.edu/rfc/rfc2044.txt">rfc2044</a> [UTF-8]
|
<li>ISO-8859-x encodings, as well as <a href="http://www.cis.ohio-state.edu/rfc/rfc2044.txt">rfc2044</a>[UTF-8]and
|
||||||
and <a href="http://www.cis.ohio-state.edu/rfc/rfc2781.txt">rfc2781</a>
|
<a href="http://www.cis.ohio-state.edu/rfc/rfc2781.txt">rfc2781</a>[UTF-16]
|
||||||
[UTF-16] Unicode encodings, and more if using iconv support</li>
|
Unicode encodings, and more if using iconv support</li>
|
||||||
<li>part of SGML Open Technical Resolution TR9401:1997</li>
|
<li>part of SGML Open Technical Resolution TR9401:1997</li>
|
||||||
<li>XML Catalogs Working Draft 06 August 2001: <a href="http://www.oasis-open.org/committees/entity/spec-2001-08-06.html">http://www.oasis-open.org/committees/entity/spec-2001-08-06.html</a></li>
|
<li>XML Catalogs Working Draft 06 August 2001: <a href="http://www.oasis-open.org/committees/entity/spec-2001-08-06.html">http://www.oasis-open.org/committees/entity/spec-2001-08-06.html</a></li>
|
||||||
<li>Canonical XML Version 1.0: <a href="http://www.w3.org/TR/xml-c14n">http://www.w3.org/TR/xml-c14n</a>
|
<li>Canonical XML Version 1.0: <a href="http://www.w3.org/TR/xml-c14n">http://www.w3.org/TR/xml-c14n</a>and
|
||||||
and the Exclusive XML Canonicalization CR draft <a href="http://www.w3.org/TR/xml-exc-c14n">http://www.w3.org/TR/xml-exc-c14n</a></li>
|
the Exclusive XML Canonicalization CR draft <a href="http://www.w3.org/TR/xml-exc-c14n">http://www.w3.org/TR/xml-exc-c14n</a></li>
|
||||||
<li>Relax NG, ISO/IEC 19757-2:2003, <a href="http://www.oasis-open.org/committees/relax-ng/spec-20011203.html">http://www.oasis-open.org/committees/relax-ng/spec-20011203.html</a></li>
|
<li>Relax NG, ISO/IEC 19757-2:2003, <a href="http://www.oasis-open.org/committees/relax-ng/spec-20011203.html">http://www.oasis-open.org/committees/relax-ng/spec-20011203.html</a></li>
|
||||||
<li>W3C XML Schemas Part 2: Datatypes <a href="http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/">REC 02 May
|
<li>W3C XML Schemas Part 2: Datatypes <a href="http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/">REC 02
|
||||||
2001</a></li>
|
May2001</a></li>
|
||||||
<li>W3C <a href="http://www.w3.org/TR/xml-id/">xml:id</a> Working Draft 7
|
<li>W3C <a href="http://www.w3.org/TR/xml-id/">xml:id</a>Working Draft
|
||||||
April 2004</li>
|
7April 2004</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>In most cases libxml2 tries to implement the specifications in a
|
<p>In most cases libxml2 tries to implement the specifications in arelatively
|
||||||
relatively strictly compliant way. As of release 2.4.16, libxml2 passed all
|
strictly compliant way. As of release 2.4.16, libxml2 passed all1800+ tests
|
||||||
1800+ tests from the <a href="http://www.oasis-open.org/committees/xml-conformance/">OASIS XML Tests
|
from the <a href="http://www.oasis-open.org/committees/xml-conformance/">OASIS XML
|
||||||
Suite</a>.</p>
|
TestsSuite</a>.</p>
|
||||||
<p>To some extent libxml2 provides support for the following additional
|
<p>To some extent libxml2 provides support for the following
|
||||||
specifications but doesn't claim to implement them completely:</p>
|
additionalspecifications but doesn't claim to implement them completely:</p>
|
||||||
<ul><li>Document Object Model (DOM) <a href="http://www.w3.org/TR/DOM-Level-2-Core/">http://www.w3.org/TR/DOM-Level-2-Core/</a>
|
<ul><li>Document Object Model (DOM) <a href="http://www.w3.org/TR/DOM-Level-2-Core/">http://www.w3.org/TR/DOM-Level-2-Core/</a>the
|
||||||
the document model, but it doesn't implement the API itself, gdome2 does
|
document model, but it doesn't implement the API itself, gdome2 doesthis
|
||||||
this on top of libxml2</li>
|
on top of libxml2</li>
|
||||||
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc959.txt">RFC 959</a> :
|
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc959.txt">RFC
|
||||||
libxml2 implements a basic FTP client code</li>
|
959</a>:libxml2 implements a basic FTP client code</li>
|
||||||
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc1945.txt">RFC 1945</a> :
|
<li><a href="http://www.cis.ohio-state.edu/rfc/rfc1945.txt">RFC
|
||||||
HTTP/1.0, again a basic HTTP client code</li>
|
1945</a>:HTTP/1.0, again a basic HTTP client code</li>
|
||||||
<li>SAX: a SAX2 like interface and a minimal SAX1 implementation compatible
|
<li>SAX: a SAX2 like interface and a minimal SAX1 implementation
|
||||||
with early expat versions</li>
|
compatiblewith early expat versions</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>A partial implementation of <a href="http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/">XML Schemas Part
|
<p>A partial implementation of <a href="http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/">XML Schemas Part1:
|
||||||
1: Structure</a> is being worked on but it would be far too early to make any
|
Structure</a>is being worked on but it would be far too early to make
|
||||||
conformance statement about it at the moment.</p>
|
anyconformance statement about it at the moment.</p>
|
||||||
<p>Separate documents:</p>
|
<p>Separate documents:</p>
|
||||||
<ul><li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a> providing an
|
<ul><li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a>providing
|
||||||
implementation of XSLT 1.0 and common extensions like EXSLT for
|
animplementation of XSLT 1.0 and common extensions like EXSLT
|
||||||
libxml2</li>
|
forlibxml2</li>
|
||||||
<li><a href="http://www.cs.unibo.it/~casarini/gdome2/">the gdome2 page</a>
|
<li><a href="http://www.cs.unibo.it/~casarini/gdome2/">the gdome2 page</a>:
|
||||||
: a standard DOM2 implementation for libxml2</li>
|
a standard DOM2 implementation for libxml2</li>
|
||||||
<li><a href="http://www.aleksey.com/xmlsec/">the XMLSec page</a>: an
|
<li><a href="http://www.aleksey.com/xmlsec/">the XMLSec page</a>:
|
||||||
implementation of <a href="http://www.w3.org/TR/xmldsig-core/">W3C XML
|
animplementation of <a href="http://www.w3.org/TR/xmldsig-core/">W3C
|
||||||
Digital Signature</a> for libxml2</li>
|
XMLDigital Signature</a>for libxml2</li>
|
||||||
<li>also check the related links section below for more related and active
|
<li>also check the related links section below for more related and
|
||||||
projects.</li>
|
activeprojects.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</p>
|
<p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</p>
|
||||||
<p>
|
<p>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -7,25 +7,23 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>Introduction</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>Introduction</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>This document describes libxml, the <a href="http://www.w3.org/XML/">XML</a> C parser and toolkit developed for the
|
</style><title>Introduction</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>Introduction</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>This document describes libxml, the <a href="http://www.w3.org/XML/">XML</a>C parser and toolkit developed for the<a href="http://www.gnome.org/">Gnome</a>project. <a href="http://www.w3.org/XML/">XML is a standard</a>for building
|
||||||
<a href="http://www.gnome.org/">Gnome</a> project. <a href="http://www.w3.org/XML/">XML is a standard</a> for building tag-based
|
tag-basedstructured documents/data.</p><p>Here are some key points about libxml:</p><ul><li>Libxml2 exports Push (progressive) and Pull (blocking) type
|
||||||
structured documents/data.</p><p>Here are some key points about libxml:</p><ul><li>Libxml2 exports Push (progressive) and Pull (blocking) type parser
|
parserinterfaces for both XML and HTML.</li>
|
||||||
interfaces for both XML and HTML.</li>
|
<li>Libxml2 can do DTD validation at parse time, using a parsed
|
||||||
<li>Libxml2 can do DTD validation at parse time, using a parsed document
|
documentinstance, or with an arbitrary DTD.</li>
|
||||||
instance, or with an arbitrary DTD.</li>
|
<li>Libxml2 includes complete <a href="http://www.w3.org/TR/xpath">XPath</a>, <a href="http://www.w3.org/TR/xptr">XPointer</a>and <a href="http://www.w3.org/TR/xinclude">XInclude</a>implementations.</li>
|
||||||
<li>Libxml2 includes complete <a href="http://www.w3.org/TR/xpath">XPath</a>, <a href="http://www.w3.org/TR/xptr">XPointer</a> and <a href="http://www.w3.org/TR/xinclude">XInclude</a> implementations.</li>
|
<li>It is written in plain C, making as few assumptions as possible,
|
||||||
<li>It is written in plain C, making as few assumptions as possible, and
|
andsticking closely to ANSI C/POSIX for easy embedding. Works
|
||||||
sticking closely to ANSI C/POSIX for easy embedding. Works on
|
onLinux/Unix/Windows, ported to a number of other platforms.</li>
|
||||||
Linux/Unix/Windows, ported to a number of other platforms.</li>
|
<li>Basic support for HTTP and FTP client allowing applications to
|
||||||
<li>Basic support for HTTP and FTP client allowing applications to fetch
|
fetchremote resources.</li>
|
||||||
remote resources.</li>
|
|
||||||
<li>The design is modular, most of the extensions can be compiled out.</li>
|
<li>The design is modular, most of the extensions can be compiled out.</li>
|
||||||
<li>The internal document representation is as close as possible to the <a href="http://www.w3.org/DOM/">DOM</a> interfaces.</li>
|
<li>The internal document representation is as close as possible to the <a href="http://www.w3.org/DOM/">DOM</a>interfaces.</li>
|
||||||
<li>Libxml2 also has a <a href="http://www.megginson.com/SAX/index.html">SAX like interface</a>;
|
<li>Libxml2 also has a <a href="http://www.megginson.com/SAX/index.html">SAX like interface</a>;the
|
||||||
the interface is designed to be compatible with <a href="http://www.jclark.com/xml/expat.html">Expat</a>.</li>
|
interface is designed to be compatible with <a href="http://www.jclark.com/xml/expat.html">Expat</a>.</li>
|
||||||
<li>This library is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
|
<li>This library is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MITLicense</a>.
|
||||||
License</a>. See the Copyright file in the distribution for the precise
|
See the Copyright file in the distribution for the precisewording.</li>
|
||||||
wording.</li>
|
</ul><p>Warning: unless you are forced to because your application links with
|
||||||
</ul><p>Warning: unless you are forced to because your application links with a
|
aGnome-1.X library requiring it, <strong><span style="background-color: #FF0000">Do Not Use libxml1</span></strong>,
|
||||||
Gnome-1.X library requiring it, <strong><span style="background-color: #FF0000">Do Not Use libxml1</span></strong>, use
|
uselibxml2</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</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>
|
|
||||||
|
|||||||
138
doc/library.html
138
doc/library.html
File diff suppressed because one or more lines are too long
@@ -2270,6 +2270,7 @@
|
|||||||
<exports symbol='XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3' type='enum'/>
|
<exports symbol='XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3' type='enum'/>
|
||||||
<exports symbol='XML_ERR_ENCODING_NAME' type='enum'/>
|
<exports symbol='XML_ERR_ENCODING_NAME' type='enum'/>
|
||||||
<exports symbol='XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5' type='enum'/>
|
<exports symbol='XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5' type='enum'/>
|
||||||
|
<exports symbol='XML_SCHEMAV_MISC' type='enum'/>
|
||||||
<exports symbol='XML_IO_ECONNREFUSED' type='enum'/>
|
<exports symbol='XML_IO_ECONNREFUSED' type='enum'/>
|
||||||
<exports symbol='XML_ERR_XMLDECL_NOT_FINISHED' type='enum'/>
|
<exports symbol='XML_ERR_XMLDECL_NOT_FINISHED' type='enum'/>
|
||||||
<exports symbol='XML_SCHEMAP_P_PROPS_CORRECT_1' type='enum'/>
|
<exports symbol='XML_SCHEMAP_P_PROPS_CORRECT_1' type='enum'/>
|
||||||
@@ -3498,6 +3499,7 @@
|
|||||||
<exports symbol='xmlXPathFuncLookupFunc' type='function'/>
|
<exports symbol='xmlXPathFuncLookupFunc' type='function'/>
|
||||||
<exports symbol='xmlXPathCastNodeToString' type='function'/>
|
<exports symbol='xmlXPathCastNodeToString' type='function'/>
|
||||||
<exports symbol='xmlXPathIsNaN' type='function'/>
|
<exports symbol='xmlXPathIsNaN' type='function'/>
|
||||||
|
<exports symbol='xmlXPathContextSetCache' type='function'/>
|
||||||
<exports symbol='xmlXPathConvertString' type='function'/>
|
<exports symbol='xmlXPathConvertString' type='function'/>
|
||||||
<exports symbol='xmlXPathConvertBoolean' type='function'/>
|
<exports symbol='xmlXPathConvertBoolean' type='function'/>
|
||||||
<exports symbol='xmlXPathIsInf' type='function'/>
|
<exports symbol='xmlXPathIsInf' type='function'/>
|
||||||
@@ -5521,6 +5523,7 @@
|
|||||||
<enum name='XML_SCHEMAV_INVALIDATTR' file='xmlerror' value='1814' type='xmlParserErrors' info='1814'/>
|
<enum name='XML_SCHEMAV_INVALIDATTR' file='xmlerror' value='1814' type='xmlParserErrors' info='1814'/>
|
||||||
<enum name='XML_SCHEMAV_INVALIDELEM' file='xmlerror' value='1815' type='xmlParserErrors' info='1815'/>
|
<enum name='XML_SCHEMAV_INVALIDELEM' file='xmlerror' value='1815' type='xmlParserErrors' info='1815'/>
|
||||||
<enum name='XML_SCHEMAV_ISABSTRACT' file='xmlerror' value='1808' type='xmlParserErrors' info='1808'/>
|
<enum name='XML_SCHEMAV_ISABSTRACT' file='xmlerror' value='1808' type='xmlParserErrors' info='1808'/>
|
||||||
|
<enum name='XML_SCHEMAV_MISC' file='xmlerror' value='1879' type='xmlParserErrors' info='1879'/>
|
||||||
<enum name='XML_SCHEMAV_MISSING' file='xmlerror' value='1804' type='xmlParserErrors' info='1804'/>
|
<enum name='XML_SCHEMAV_MISSING' file='xmlerror' value='1804' type='xmlParserErrors' info='1804'/>
|
||||||
<enum name='XML_SCHEMAV_NOROLLBACK' file='xmlerror' value='1807' type='xmlParserErrors' info='1807'/>
|
<enum name='XML_SCHEMAV_NOROLLBACK' file='xmlerror' value='1807' type='xmlParserErrors' info='1807'/>
|
||||||
<enum name='XML_SCHEMAV_NOROOT' file='xmlerror' value='1801' type='xmlParserErrors'/>
|
<enum name='XML_SCHEMAV_NOROOT' file='xmlerror' value='1801' type='xmlParserErrors'/>
|
||||||
@@ -6686,7 +6689,8 @@ Could we use @subtypes for this?'/>
|
|||||||
<field name='lastError' type='xmlError' info=' the last error'/>
|
<field name='lastError' type='xmlError' info=' the last error'/>
|
||||||
<field name='debugNode' type='xmlNodePtr' info=' the source node XSLT dictionnary'/>
|
<field name='debugNode' type='xmlNodePtr' info=' the source node XSLT dictionnary'/>
|
||||||
<field name='dict' type='xmlDictPtr' info=' dictionnary if any'/>
|
<field name='dict' type='xmlDictPtr' info=' dictionnary if any'/>
|
||||||
<field name='flags' type='int' info=' flags to control compilation'/>
|
<field name='flags' type='int' info=' flags to control compilation Cache for reusal of XPath objects'/>
|
||||||
|
<field name='cache' type='void *' info=''/>
|
||||||
</struct>
|
</struct>
|
||||||
<typedef name='xmlXPathContextPtr' file='xpath' type='xmlXPathContext *'/>
|
<typedef name='xmlXPathContextPtr' file='xpath' type='xmlXPathContext *'/>
|
||||||
<typedef name='xmlXPathError' file='xpath' type='enum'/>
|
<typedef name='xmlXPathError' file='xpath' type='enum'/>
|
||||||
@@ -16980,6 +16984,15 @@ Could we use @subtypes for this?'/>
|
|||||||
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
|
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
|
||||||
<arg name='nargs' type='int' info='the number of arguments'/>
|
<arg name='nargs' type='int' info='the number of arguments'/>
|
||||||
</function>
|
</function>
|
||||||
|
<function name='xmlXPathContextSetCache' file='xpath' module='xpath'>
|
||||||
|
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
|
||||||
|
<info>Creates/frees an object cache on the XPath context. If activates XPath objects (xmlXPathObject) will be cached internally to be reused. @options: 0: This will set the XPath object caching: @value: This will set the maximum number of XPath objects to be cached per slot There are 5 slots for: node-set, string, number, boolean, and misc objects. Use <0 for the default number (100). Other values for @options have currently no effect.</info>
|
||||||
|
<return type='int' info='0 if the setting succeeded, and -1 on API or internal errors.'/>
|
||||||
|
<arg name='ctxt' type='xmlXPathContextPtr' info='the XPath context'/>
|
||||||
|
<arg name='active' type='int' info='enables/disables (creates/frees) the cache'/>
|
||||||
|
<arg name='value' type='int' info='a value with semantics dependant on @options'/>
|
||||||
|
<arg name='options' type='int' info='options (currently only the value 0 is used)'/>
|
||||||
|
</function>
|
||||||
<function name='xmlXPathConvertBoolean' file='xpath' module='xpath'>
|
<function name='xmlXPathConvertBoolean' file='xpath' module='xpath'>
|
||||||
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
|
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
|
||||||
<info>Converts an existing object to its boolean() equivalent</info>
|
<info>Converts an existing object to its boolean() equivalent</info>
|
||||||
|
|||||||
@@ -1193,6 +1193,7 @@
|
|||||||
<reference name='XML_SCHEMAV_INVALIDATTR' href='html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR'/>
|
<reference name='XML_SCHEMAV_INVALIDATTR' href='html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDATTR'/>
|
||||||
<reference name='XML_SCHEMAV_INVALIDELEM' href='html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM'/>
|
<reference name='XML_SCHEMAV_INVALIDELEM' href='html/libxml-xmlerror.html#XML_SCHEMAV_INVALIDELEM'/>
|
||||||
<reference name='XML_SCHEMAV_ISABSTRACT' href='html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT'/>
|
<reference name='XML_SCHEMAV_ISABSTRACT' href='html/libxml-xmlerror.html#XML_SCHEMAV_ISABSTRACT'/>
|
||||||
|
<reference name='XML_SCHEMAV_MISC' href='html/libxml-xmlerror.html#XML_SCHEMAV_MISC'/>
|
||||||
<reference name='XML_SCHEMAV_MISSING' href='html/libxml-xmlerror.html#XML_SCHEMAV_MISSING'/>
|
<reference name='XML_SCHEMAV_MISSING' href='html/libxml-xmlerror.html#XML_SCHEMAV_MISSING'/>
|
||||||
<reference name='XML_SCHEMAV_NOROLLBACK' href='html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK'/>
|
<reference name='XML_SCHEMAV_NOROLLBACK' href='html/libxml-xmlerror.html#XML_SCHEMAV_NOROLLBACK'/>
|
||||||
<reference name='XML_SCHEMAV_NOROOT' href='html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT'/>
|
<reference name='XML_SCHEMAV_NOROOT' href='html/libxml-xmlerror.html#XML_SCHEMAV_NOROOT'/>
|
||||||
@@ -3286,6 +3287,7 @@
|
|||||||
<reference name='xmlXPathContainsFunction' href='html/libxml-xpathInternals.html#xmlXPathContainsFunction'/>
|
<reference name='xmlXPathContainsFunction' href='html/libxml-xpathInternals.html#xmlXPathContainsFunction'/>
|
||||||
<reference name='xmlXPathContext' href='html/libxml-xpath.html#xmlXPathContext'/>
|
<reference name='xmlXPathContext' href='html/libxml-xpath.html#xmlXPathContext'/>
|
||||||
<reference name='xmlXPathContextPtr' href='html/libxml-xpath.html#xmlXPathContextPtr'/>
|
<reference name='xmlXPathContextPtr' href='html/libxml-xpath.html#xmlXPathContextPtr'/>
|
||||||
|
<reference name='xmlXPathContextSetCache' href='html/libxml-xpath.html#xmlXPathContextSetCache'/>
|
||||||
<reference name='xmlXPathConvertBoolean' href='html/libxml-xpath.html#xmlXPathConvertBoolean'/>
|
<reference name='xmlXPathConvertBoolean' href='html/libxml-xpath.html#xmlXPathConvertBoolean'/>
|
||||||
<reference name='xmlXPathConvertFunc' href='html/libxml-xpath.html#xmlXPathConvertFunc'/>
|
<reference name='xmlXPathConvertFunc' href='html/libxml-xpath.html#xmlXPathConvertFunc'/>
|
||||||
<reference name='xmlXPathConvertNumber' href='html/libxml-xpath.html#xmlXPathConvertNumber'/>
|
<reference name='xmlXPathConvertNumber' href='html/libxml-xpath.html#xmlXPathConvertNumber'/>
|
||||||
@@ -4693,6 +4695,7 @@
|
|||||||
<ref name='XML_SCHEMAV_INVALIDATTR'/>
|
<ref name='XML_SCHEMAV_INVALIDATTR'/>
|
||||||
<ref name='XML_SCHEMAV_INVALIDELEM'/>
|
<ref name='XML_SCHEMAV_INVALIDELEM'/>
|
||||||
<ref name='XML_SCHEMAV_ISABSTRACT'/>
|
<ref name='XML_SCHEMAV_ISABSTRACT'/>
|
||||||
|
<ref name='XML_SCHEMAV_MISC'/>
|
||||||
<ref name='XML_SCHEMAV_MISSING'/>
|
<ref name='XML_SCHEMAV_MISSING'/>
|
||||||
<ref name='XML_SCHEMAV_NOROLLBACK'/>
|
<ref name='XML_SCHEMAV_NOROLLBACK'/>
|
||||||
<ref name='XML_SCHEMAV_NOROOT'/>
|
<ref name='XML_SCHEMAV_NOROOT'/>
|
||||||
@@ -6822,6 +6825,7 @@
|
|||||||
<ref name='xmlXPathContainsFunction'/>
|
<ref name='xmlXPathContainsFunction'/>
|
||||||
<ref name='xmlXPathContext'/>
|
<ref name='xmlXPathContext'/>
|
||||||
<ref name='xmlXPathContextPtr'/>
|
<ref name='xmlXPathContextPtr'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
<ref name='xmlXPathConvertBoolean'/>
|
<ref name='xmlXPathConvertBoolean'/>
|
||||||
<ref name='xmlXPathConvertFunc'/>
|
<ref name='xmlXPathConvertFunc'/>
|
||||||
<ref name='xmlXPathConvertNumber'/>
|
<ref name='xmlXPathConvertNumber'/>
|
||||||
@@ -10313,6 +10317,7 @@
|
|||||||
</type>
|
</type>
|
||||||
<type name='xmlXPathContextPtr'>
|
<type name='xmlXPathContextPtr'>
|
||||||
<ref name='xmlXPathCompiledEval'/>
|
<ref name='xmlXPathCompiledEval'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
<ref name='xmlXPathCtxtCompile'/>
|
<ref name='xmlXPathCtxtCompile'/>
|
||||||
<ref name='xmlXPathEval'/>
|
<ref name='xmlXPathEval'/>
|
||||||
<ref name='xmlXPathEvalExpression'/>
|
<ref name='xmlXPathEvalExpression'/>
|
||||||
@@ -12960,6 +12965,7 @@
|
|||||||
<ref name='XML_SCHEMAV_INVALIDATTR'/>
|
<ref name='XML_SCHEMAV_INVALIDATTR'/>
|
||||||
<ref name='XML_SCHEMAV_INVALIDELEM'/>
|
<ref name='XML_SCHEMAV_INVALIDELEM'/>
|
||||||
<ref name='XML_SCHEMAV_ISABSTRACT'/>
|
<ref name='XML_SCHEMAV_ISABSTRACT'/>
|
||||||
|
<ref name='XML_SCHEMAV_MISC'/>
|
||||||
<ref name='XML_SCHEMAV_MISSING'/>
|
<ref name='XML_SCHEMAV_MISSING'/>
|
||||||
<ref name='XML_SCHEMAV_NOROLLBACK'/>
|
<ref name='XML_SCHEMAV_NOROLLBACK'/>
|
||||||
<ref name='XML_SCHEMAV_NOROOT'/>
|
<ref name='XML_SCHEMAV_NOROOT'/>
|
||||||
@@ -13803,6 +13809,7 @@
|
|||||||
<ref name='xmlXPathCompiledEval'/>
|
<ref name='xmlXPathCompiledEval'/>
|
||||||
<ref name='xmlXPathContext'/>
|
<ref name='xmlXPathContext'/>
|
||||||
<ref name='xmlXPathContextPtr'/>
|
<ref name='xmlXPathContextPtr'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
<ref name='xmlXPathConvertBoolean'/>
|
<ref name='xmlXPathConvertBoolean'/>
|
||||||
<ref name='xmlXPathConvertFunc'/>
|
<ref name='xmlXPathConvertFunc'/>
|
||||||
<ref name='xmlXPathConvertNumber'/>
|
<ref name='xmlXPathConvertNumber'/>
|
||||||
@@ -14490,6 +14497,9 @@
|
|||||||
<word name='CWD'>
|
<word name='CWD'>
|
||||||
<ref name='xmlNanoFTPCwd'/>
|
<ref name='xmlNanoFTPCwd'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='Cache'>
|
||||||
|
<ref name='_xmlXPathContext'/>
|
||||||
|
</word>
|
||||||
<word name='Call'>
|
<word name='Call'>
|
||||||
<ref name='htmlInitAutoClose'/>
|
<ref name='htmlInitAutoClose'/>
|
||||||
<ref name='xmlInitParser'/>
|
<ref name='xmlInitParser'/>
|
||||||
@@ -14821,6 +14831,7 @@
|
|||||||
<ref name='xmlExpNewCtxt'/>
|
<ref name='xmlExpNewCtxt'/>
|
||||||
<ref name='xmlNewDoc'/>
|
<ref name='xmlNewDoc'/>
|
||||||
<ref name='xmlXIncludeNewContext'/>
|
<ref name='xmlXIncludeNewContext'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='Creation'>
|
<word name='Creation'>
|
||||||
<ref name='xmlNewCDataBlock'/>
|
<ref name='xmlNewCDataBlock'/>
|
||||||
@@ -16553,6 +16564,9 @@
|
|||||||
<word name='Osmanya'>
|
<word name='Osmanya'>
|
||||||
<ref name='xmlUCSIsOsmanya'/>
|
<ref name='xmlUCSIsOsmanya'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='Other'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='Otherwise'>
|
<word name='Otherwise'>
|
||||||
<ref name='xmlStreamPush'/>
|
<ref name='xmlStreamPush'/>
|
||||||
<ref name='xmlStreamPushAttr'/>
|
<ref name='xmlStreamPushAttr'/>
|
||||||
@@ -17683,6 +17697,7 @@
|
|||||||
</word>
|
</word>
|
||||||
<word name='There'>
|
<word name='There'>
|
||||||
<ref name='xmlExpParse'/>
|
<ref name='xmlExpParse'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='Those'>
|
<word name='Those'>
|
||||||
<ref name='_xmlParserCtxt'/>
|
<ref name='_xmlParserCtxt'/>
|
||||||
@@ -17892,6 +17907,7 @@
|
|||||||
<ref name='xmlTextReaderSchemaValidate'/>
|
<ref name='xmlTextReaderSchemaValidate'/>
|
||||||
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
||||||
<ref name='xmlTextReaderSetSchema'/>
|
<ref name='xmlTextReaderSetSchema'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='Used'>
|
<word name='Used'>
|
||||||
<ref name='XML_SCHEMAS_ANY_LAX'/>
|
<ref name='XML_SCHEMAS_ANY_LAX'/>
|
||||||
@@ -18445,6 +18461,9 @@
|
|||||||
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
||||||
<ref name='xmlTextReaderSetSchema'/>
|
<ref name='xmlTextReaderSetSchema'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='activates'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='activation'>
|
<word name='activation'>
|
||||||
<ref name='xmlGetLineNo'/>
|
<ref name='xmlGetLineNo'/>
|
||||||
</word>
|
</word>
|
||||||
@@ -19468,6 +19487,15 @@
|
|||||||
</chunk>
|
</chunk>
|
||||||
<chunk name='chunk12'>
|
<chunk name='chunk12'>
|
||||||
<letter name='c'>
|
<letter name='c'>
|
||||||
|
<word name='cache'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
|
<word name='cached'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
|
<word name='caching:'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='calculated'>
|
<word name='calculated'>
|
||||||
<ref name='xmlStrncatNew'/>
|
<ref name='xmlStrncatNew'/>
|
||||||
</word>
|
</word>
|
||||||
@@ -20627,6 +20655,7 @@
|
|||||||
<ref name='xmlAutomataNewTransition2'/>
|
<ref name='xmlAutomataNewTransition2'/>
|
||||||
<ref name='xmlCreateURI'/>
|
<ref name='xmlCreateURI'/>
|
||||||
<ref name='xmlStrncatNew'/>
|
<ref name='xmlStrncatNew'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='creating'>
|
<word name='creating'>
|
||||||
<ref name='xmlDOMWrapAdoptNode'/>
|
<ref name='xmlDOMWrapAdoptNode'/>
|
||||||
@@ -20677,6 +20706,7 @@
|
|||||||
<ref name='xmlMemGet'/>
|
<ref name='xmlMemGet'/>
|
||||||
<ref name='xmlMemUsed'/>
|
<ref name='xmlMemUsed'/>
|
||||||
<ref name='xmlOutputBufferCreateFilename'/>
|
<ref name='xmlOutputBufferCreateFilename'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='custom'>
|
<word name='custom'>
|
||||||
<ref name='xmlDOMWrapAdoptNode'/>
|
<ref name='xmlDOMWrapAdoptNode'/>
|
||||||
@@ -20938,6 +20968,9 @@
|
|||||||
<word name='deletion'>
|
<word name='deletion'>
|
||||||
<ref name='xmlCatalogSetDefaultPrefer'/>
|
<ref name='xmlCatalogSetDefaultPrefer'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='dependant'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='depending'>
|
<word name='depending'>
|
||||||
<ref name='xmlIsID'/>
|
<ref name='xmlIsID'/>
|
||||||
<ref name='xmlIsRef'/>
|
<ref name='xmlIsRef'/>
|
||||||
@@ -21266,6 +21299,9 @@
|
|||||||
<ref name='_xmlParserCtxt'/>
|
<ref name='_xmlParserCtxt'/>
|
||||||
<ref name='xmlParseURIRaw'/>
|
<ref name='xmlParseURIRaw'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='disables'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='disabling'>
|
<word name='disabling'>
|
||||||
<ref name='xmlNoNetExternalEntityLoader'/>
|
<ref name='xmlNoNetExternalEntityLoader'/>
|
||||||
</word>
|
</word>
|
||||||
@@ -21499,6 +21535,9 @@
|
|||||||
<word name='edition'>
|
<word name='edition'>
|
||||||
<ref name='xmlCheckLanguageID'/>
|
<ref name='xmlCheckLanguageID'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='effect'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='effective'>
|
<word name='effective'>
|
||||||
<ref name='xmlLoadCatalog'/>
|
<ref name='xmlLoadCatalog'/>
|
||||||
<ref name='xmlLoadCatalogs'/>
|
<ref name='xmlLoadCatalogs'/>
|
||||||
@@ -21601,6 +21640,9 @@
|
|||||||
<ref name='xmlSaveFile'/>
|
<ref name='xmlSaveFile'/>
|
||||||
<ref name='xmlSaveFormatFile'/>
|
<ref name='xmlSaveFormatFile'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='enables'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='enabling'>
|
<word name='enabling'>
|
||||||
<ref name='xmlLineNumbersDefault'/>
|
<ref name='xmlLineNumbersDefault'/>
|
||||||
<ref name='xmlPedanticParserDefault'/>
|
<ref name='xmlPedanticParserDefault'/>
|
||||||
@@ -22396,6 +22438,7 @@
|
|||||||
</word>
|
</word>
|
||||||
<word name='for:'>
|
<word name='for:'>
|
||||||
<ref name='xmlSchemaGetCanonValue'/>
|
<ref name='xmlSchemaGetCanonValue'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='forbid'>
|
<word name='forbid'>
|
||||||
<ref name='XML_XPATH_NOVAR'/>
|
<ref name='XML_XPATH_NOVAR'/>
|
||||||
@@ -22499,6 +22542,7 @@
|
|||||||
</word>
|
</word>
|
||||||
<word name='frees'>
|
<word name='frees'>
|
||||||
<ref name='xmlBufferFree'/>
|
<ref name='xmlBufferFree'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='front'>
|
<word name='front'>
|
||||||
<ref name='xmlValidateNCName'/>
|
<ref name='xmlValidateNCName'/>
|
||||||
@@ -23650,6 +23694,7 @@
|
|||||||
<ref name='xmlRelaxNGNewDocParserCtxt'/>
|
<ref name='xmlRelaxNGNewDocParserCtxt'/>
|
||||||
<ref name='xmlRemoveID'/>
|
<ref name='xmlRemoveID'/>
|
||||||
<ref name='xmlRemoveRef'/>
|
<ref name='xmlRemoveRef'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='interned'>
|
<word name='interned'>
|
||||||
<ref name='xmlPatterncompile'/>
|
<ref name='xmlPatterncompile'/>
|
||||||
@@ -24429,6 +24474,7 @@
|
|||||||
<ref name='xmlExpMaxToken'/>
|
<ref name='xmlExpMaxToken'/>
|
||||||
<ref name='xmlExpNewCtxt'/>
|
<ref name='xmlExpNewCtxt'/>
|
||||||
<ref name='xmlPatternMaxDepth'/>
|
<ref name='xmlPatternMaxDepth'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='maybe'>
|
<word name='maybe'>
|
||||||
<ref name='_xmlSchemaElement'/>
|
<ref name='_xmlSchemaElement'/>
|
||||||
@@ -24566,6 +24612,9 @@
|
|||||||
<word name='minute'>
|
<word name='minute'>
|
||||||
<ref name='ftpListCallback'/>
|
<ref name='ftpListCallback'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='misc'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='misleading'>
|
<word name='misleading'>
|
||||||
<ref name='xmlParsePEReference'/>
|
<ref name='xmlParsePEReference'/>
|
||||||
<ref name='xmlParserHandlePEReference'/>
|
<ref name='xmlParserHandlePEReference'/>
|
||||||
@@ -25147,7 +25196,9 @@
|
|||||||
<ref name='xmlXPathStringFunction'/>
|
<ref name='xmlXPathStringFunction'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='objects'>
|
<word name='objects'>
|
||||||
|
<ref name='_xmlXPathContext'/>
|
||||||
<ref name='xmlXPathCompareValues'/>
|
<ref name='xmlXPathCompareValues'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
<ref name='xmlXPathDivValues'/>
|
<ref name='xmlXPathDivValues'/>
|
||||||
<ref name='xmlXPathEqualValues'/>
|
<ref name='xmlXPathEqualValues'/>
|
||||||
<ref name='xmlXPathFreeNodeSetList'/>
|
<ref name='xmlXPathFreeNodeSetList'/>
|
||||||
@@ -25416,6 +25467,7 @@
|
|||||||
<ref name='xmlSaveToFilename'/>
|
<ref name='xmlSaveToFilename'/>
|
||||||
<ref name='xmlSaveToIO'/>
|
<ref name='xmlSaveToIO'/>
|
||||||
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
<ref name='xmlTextReaderSchemaValidateCtxt'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='ordered'>
|
<word name='ordered'>
|
||||||
<ref name='xmlListAppend'/>
|
<ref name='xmlListAppend'/>
|
||||||
@@ -25725,6 +25777,7 @@
|
|||||||
<ref name='xmlGetLastError'/>
|
<ref name='xmlGetLastError'/>
|
||||||
<ref name='xmlParseAttributeType'/>
|
<ref name='xmlParseAttributeType'/>
|
||||||
<ref name='xmlValidateElementDecl'/>
|
<ref name='xmlValidateElementDecl'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='performance'>
|
<word name='performance'>
|
||||||
<ref name='xmlGetBufferAllocationScheme'/>
|
<ref name='xmlGetBufferAllocationScheme'/>
|
||||||
@@ -27125,11 +27178,17 @@
|
|||||||
<word name='returning'>
|
<word name='returning'>
|
||||||
<ref name='xmlXPathStringFunction'/>
|
<ref name='xmlXPathStringFunction'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='reusal'>
|
||||||
|
<ref name='_xmlXPathContext'/>
|
||||||
|
</word>
|
||||||
<word name='reuse'>
|
<word name='reuse'>
|
||||||
<ref name='xmlReconciliateNs'/>
|
<ref name='xmlReconciliateNs'/>
|
||||||
<ref name='xmlRegExecPushString'/>
|
<ref name='xmlRegExecPushString'/>
|
||||||
<ref name='xmlRegExecPushString2'/>
|
<ref name='xmlRegExecPushString2'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='reused'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='reuses'>
|
<word name='reuses'>
|
||||||
<ref name='htmlCtxtReadDoc'/>
|
<ref name='htmlCtxtReadDoc'/>
|
||||||
<ref name='htmlCtxtReadFd'/>
|
<ref name='htmlCtxtReadFd'/>
|
||||||
@@ -27449,6 +27508,9 @@
|
|||||||
<ref name='xmlAutomataNewNegTrans'/>
|
<ref name='xmlAutomataNewNegTrans'/>
|
||||||
<ref name='xmlXPathNodeSetFreeNs'/>
|
<ref name='xmlXPathNodeSetFreeNs'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='semantics'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='sense'>
|
<word name='sense'>
|
||||||
<ref name='xmlCreateEntitiesTable'/>
|
<ref name='xmlCreateEntitiesTable'/>
|
||||||
</word>
|
</word>
|
||||||
@@ -27565,6 +27627,7 @@
|
|||||||
</word>
|
</word>
|
||||||
<word name='setting'>
|
<word name='setting'>
|
||||||
<ref name='xmlSetGenericErrorFunc'/>
|
<ref name='xmlSetGenericErrorFunc'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='setups'>
|
<word name='setups'>
|
||||||
<ref name='xmlParseEncodingDecl'/>
|
<ref name='xmlParseEncodingDecl'/>
|
||||||
@@ -27751,6 +27814,12 @@
|
|||||||
<ref name='xmlParseElementMixedContentDecl'/>
|
<ref name='xmlParseElementMixedContentDecl'/>
|
||||||
<ref name='xmlSkipBlankChars'/>
|
<ref name='xmlSkipBlankChars'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='slot'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
|
<word name='slots'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='smallest'>
|
<word name='smallest'>
|
||||||
<ref name='xmlXPathCeilingFunction'/>
|
<ref name='xmlXPathCeilingFunction'/>
|
||||||
</word>
|
</word>
|
||||||
@@ -28377,6 +28446,7 @@
|
|||||||
<ref name='xmlHashUpdateEntry3'/>
|
<ref name='xmlHashUpdateEntry3'/>
|
||||||
<ref name='xmlSchemaValueAppend'/>
|
<ref name='xmlSchemaValueAppend'/>
|
||||||
<ref name='xmlXPathCompareValues'/>
|
<ref name='xmlXPathCompareValues'/>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
</word>
|
</word>
|
||||||
<word name='succeeds'>
|
<word name='succeeds'>
|
||||||
<ref name='xmlCheckFilename'/>
|
<ref name='xmlCheckFilename'/>
|
||||||
@@ -30698,6 +30768,9 @@
|
|||||||
<word name='xmlXPathNodeTrailingSorted'>
|
<word name='xmlXPathNodeTrailingSorted'>
|
||||||
<ref name='xmlXPathNodeTrailing'/>
|
<ref name='xmlXPathNodeTrailing'/>
|
||||||
</word>
|
</word>
|
||||||
|
<word name='xmlXPathObject'>
|
||||||
|
<ref name='xmlXPathContextSetCache'/>
|
||||||
|
</word>
|
||||||
<word name='xmlXPathObjectPtr'>
|
<word name='xmlXPathObjectPtr'>
|
||||||
<ref name='xmlXPathCompiledEval'/>
|
<ref name='xmlXPathCompiledEval'/>
|
||||||
<ref name='xmlXPathEval'/>
|
<ref name='xmlXPathEval'/>
|
||||||
|
|||||||
@@ -8,51 +8,32 @@
|
|||||||
</vendor>
|
</vendor>
|
||||||
<product id="libxml2">
|
<product id="libxml2">
|
||||||
<name>libxml2</name>
|
<name>libxml2</name>
|
||||||
<version>2.6.23</version>
|
<version>2.6.24</version>
|
||||||
<last-release> Jan 5 2006</last-release>
|
<last-release> Apr 28 2006</last-release>
|
||||||
<info-url>http://xmlsoft.org/</info-url>
|
<info-url>http://xmlsoft.org/</info-url>
|
||||||
<changes> - portability fixes: Windows (Rob Richards), getaddrinfo on Windows
|
<changes> - Portability fixes: configure on Windows, testapi compile on
|
||||||
(Kolja Nowak, Rob Richards), icc warnings (Kjartan Maraas),
|
windows(Kasimier Buchcik, venkat naidu), Borland C++ 6 compile (Eric
|
||||||
--with-minimum compilation fixes (William Brack), error case handling fix
|
Zurcher),HP-UX compiler workaround (Rick Jones), xml2-config bugfix,
|
||||||
on Solaris (Albert Chin), don't use 'list' as parameter name reported by
|
gcc-4.1cleanups, Python detection scheme (Joseph Sacco), UTF-8 file paths
|
||||||
Samuel Diaz Garcia, more old Unices portability fixes (Albert Chin),
|
onWindows (Roland Schwingel).
|
||||||
MinGW compilation (Mark Junker), HP-UX compiler warnings (Rick
|
- Improvements: xmlDOMWrapReconcileNamespaces xmlDOMWrapCloneNode
|
||||||
Jones),
|
(KasimierBuchcik), XML catalog debugging (Rick Jones), update to Unicode
|
||||||
- code cleanup: xmlReportError (Adrian Mouat), remove xmlBufferClose
|
4.01.
|
||||||
(Geert Jansen), unreachable code (Oleksandr Kononenko), refactoring
|
- Bug fixes: xmlParseChunk() problem in 2.6.23, xmlParseInNodeContext()on
|
||||||
parsing code (Bjorn Reese)
|
HTML docs, URI behaviour on Windows (Rob Richards), comment streamingbug,
|
||||||
- bug fixes: xmlBuildRelativeURI and empty path (William Brack),
|
xmlParseComment (with William Brack), regexp bug fixes (DV &Youri
|
||||||
combinatory explosion and performances in regexp code, leak in
|
Golovanov), xmlGetNodePath on text/CDATA (Kasimier),one Relax-NG
|
||||||
xmlTextReaderReadString(), xmlStringLenDecodeEntities problem (Massimo
|
interleave bug, xmllint --path and --valid,XSD bugfixes (Kasimier),
|
||||||
Morara), Identity Constraints bugs and a segfault (Kasimier Buchcik),
|
remove debugleft in Python bindings (Nic Ferrier), xmlCatalogAdd bug
|
||||||
XPath pattern based evaluation bugs (DV & Kasimier),
|
(Martin Cole),xmlSetProp fixes (Rob Richards), HTML IDness (Rob
|
||||||
xmlSchemaContentModelDump() memory leak (Kasimier), potential leak in
|
Richards), a largenumber of cleanups and small fixes based on Coverity
|
||||||
xmlSchemaCheckCSelectorXPath(), xmlTextWriterVSprintf() misuse of
|
reports, bugin character ranges, Unicode tables const (Aivars Kalvans),
|
||||||
vsnprintf (William Brack), XHTML serialization fix (Rob Richards), CRLF
|
schemasfix (Stefan Kost), xmlRelaxNGParse error
|
||||||
split problem (William), issues with non-namespaced attributes in
|
deallocation,xmlSchemaAddSchemaDoc error deallocation, error handling on
|
||||||
xmlAddChild() xmlAddNextSibling() and xmlAddPrevSibling() (Rob Richards),
|
unallowedcode point, ixmllint --nonet to never reach the net (Gary
|
||||||
HTML parsing of script, Python must not output to stdout (Nic Ferrier),
|
Coady),line break in writer after end PI (Jason Viers).
|
||||||
exclusive C14N namespace visibility (Aleksey Sanin), XSD dataype
|
- Documentation: man pages updates and cleanups (Daniel Leidert).
|
||||||
totalDigits bug (Kasimier Buchcik), error handling when writing to an
|
- New features: Relax NG structure error handlers.
|
||||||
xmlBuffer (Rob Richards), runtest schemas error not reported (Hisashi
|
|
||||||
Fujinaka), signed/unsigned problem in date/time code (Albert Chin), fix
|
|
||||||
XSI driven XSD validation (Kasimier), parsing of xs:decimal (Kasimier),
|
|
||||||
fix DTD writer output (Rob Richards), leak in xmlTextReaderReadInnerXml
|
|
||||||
(Gary Coady), regexp bug affecting schemas (Kasimier), configuration of
|
|
||||||
runtime debugging (Kasimier), xmlNodeBufGetContent bug on entity refs
|
|
||||||
(Oleksandr Kononenko), xmlRegExecPushString2 bug (Sreeni Nair),
|
|
||||||
compilation and build fixes (Michael Day), removed dependancies on
|
|
||||||
xmlSchemaValidError (Kasimier), bug with <xml:foo/>, more XPath
|
|
||||||
pattern based evaluation fixes (Kasimier)
|
|
||||||
- improvements: XSD Schemas redefinitions/restrictions (Kasimier
|
|
||||||
Buchcik), node copy checks and fix for attribute (Rob Richards), counted
|
|
||||||
transition bug in regexps, ctxt->standalone = -2 to indicate no
|
|
||||||
standalone attribute was found, add xmlSchemaSetParserStructuredErrors()
|
|
||||||
(Kasimier Buchcik), add xmlTextReaderSchemaValidateCtxt() to API
|
|
||||||
(Kasimier), handle gzipped HTTP resources (Gary Coady), add
|
|
||||||
htmlDocDumpMemoryFormat. (Rob Richards),
|
|
||||||
- documentation: typo (Michael Day), libxml man page (Albert Chin), save
|
|
||||||
function to XML buffer (Geert Jansen), small doc fix (Aron Stansvik),
|
|
||||||
|
|
||||||
</changes>
|
</changes>
|
||||||
</product>
|
</product>
|
||||||
|
|||||||
@@ -7,44 +7,44 @@ H1 {font-family: Verdana,Arial,Helvetica}
|
|||||||
H2 {font-family: Verdana,Arial,Helvetica}
|
H2 {font-family: Verdana,Arial,Helvetica}
|
||||||
H3 {font-family: Verdana,Arial,Helvetica}
|
H3 {font-family: Verdana,Arial,Helvetica}
|
||||||
A:link, A:visited, A:active { text-decoration: underline }
|
A:link, A:visited, A:active { text-decoration: underline }
|
||||||
</style><title>Namespaces</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>Namespaces</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 libxml2 library implements <a href="http://www.w3.org/TR/REC-xml-names/">XML namespaces</a> support by
|
</style><title>Namespaces</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>Namespaces</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 libxml2 library implements <a href="http://www.w3.org/TR/REC-xml-names/">XML namespaces</a>support
|
||||||
recognizing namespace constructs in the input, and does namespace lookup
|
byrecognizing namespace constructs in the input, and does namespace
|
||||||
automatically when building the DOM tree. A namespace declaration is
|
lookupautomatically when building the DOM tree. A namespace declaration
|
||||||
associated with an in-memory structure and all elements or attributes within
|
isassociated with an in-memory structure and all elements or attributes
|
||||||
that namespace point to it. Hence testing the namespace is a simple and fast
|
withinthat namespace point to it. Hence testing the namespace is a simple and
|
||||||
equality operation at the user level.</p><p>I suggest that people using libxml2 use a namespace, and declare it in the
|
fastequality operation at the user level.</p><p>I suggest that people using libxml2 use a namespace, and declare it in
|
||||||
root element of their document as the default namespace. Then they don't need
|
theroot element of their document as the default namespace. Then they don't
|
||||||
to use the prefix in the content but we will have a basis for future semantic
|
needto use the prefix in the content but we will have a basis for future
|
||||||
refinement and merging of data from different sources. This doesn't increase
|
semanticrefinement and merging of data from different sources. This doesn't
|
||||||
the size of the XML output significantly, but significantly increases its
|
increasethe size of the XML output significantly, but significantly increases
|
||||||
value in the long-term. Example:</p><pre><mydoc xmlns="http://mydoc.example.org/schemas/">
|
itsvalue in the long-term. Example:</p><pre><mydoc xmlns="http://mydoc.example.org/schemas/">
|
||||||
<elem1>...</elem1>
|
<elem1>...</elem1>
|
||||||
<elem2>...</elem2>
|
<elem2>...</elem2>
|
||||||
</mydoc></pre><p>The namespace value has to be an absolute URL, but the URL doesn't have to
|
</mydoc></pre><p>The namespace value has to be an absolute URL, but the URL doesn't have
|
||||||
point to any existing resource on the Web. It will bind all the element and
|
topoint to any existing resource on the Web. It will bind all the element
|
||||||
attributes with that URL. I suggest to use an URL within a domain you
|
andattributes with that URL. I suggest to use an URL within a domain
|
||||||
control, and that the URL should contain some kind of version information if
|
youcontrol, and that the URL should contain some kind of version information
|
||||||
possible. For example, <code>"http://www.gnome.org/gnumeric/1.0/"</code> is a
|
ifpossible. For example, <code>"http://www.gnome.org/gnumeric/1.0/"</code>is
|
||||||
good namespace scheme.</p><p>Then when you load a file, make sure that a namespace carrying the
|
agood namespace scheme.</p><p>Then when you load a file, make sure that a namespace carrying
|
||||||
version-independent prefix is installed on the root element of your document,
|
theversion-independent prefix is installed on the root element of your
|
||||||
and if the version information don't match something you know, warn the user
|
document,and if the version information don't match something you know, warn
|
||||||
and be liberal in what you accept as the input. Also do *not* try to base
|
the userand be liberal in what you accept as the input. Also do *not* try to
|
||||||
namespace checking on the prefix value. <foo:text> may be exactly the
|
basenamespace checking on the prefix value. <foo:text> may be exactly
|
||||||
same as <bar:text> in another document. What really matters is the URI
|
thesame as <bar:text> in another document. What really matters is the
|
||||||
associated with the element or the attribute, not the prefix string (which is
|
URIassociated with the element or the attribute, not the prefix string (which
|
||||||
just a shortcut for the full URI). In libxml, element and attributes have an
|
isjust a shortcut for the full URI). In libxml, element and attributes have
|
||||||
<code>ns</code> field pointing to an xmlNs structure detailing the namespace
|
an<code>ns</code>field pointing to an xmlNs structure detailing the
|
||||||
prefix and its URI.</p><p>@@Interfaces@@</p><pre>xmlNodePtr node;
|
namespaceprefix and its URI.</p><p>@@Interfaces@@</p><pre>xmlNodePtr node;
|
||||||
if(!strncmp(node->name,"mytag",5)
|
if(!strncmp(node->name,"mytag",5)
|
||||||
&& node->ns
|
&& node->ns
|
||||||
&& !strcmp(node->ns->href,"http://www.mysite.com/myns/1.0")) {
|
&& !strcmp(node->ns->href,"http://www.mysite.com/myns/1.0")) {
|
||||||
...
|
...
|
||||||
}</pre><p>Usually people object to using namespaces together with validity checking.
|
}</pre><p>Usually people object to using namespaces together with validity
|
||||||
I will try to make sure that using namespaces won't break validity checking,
|
checking.I will try to make sure that using namespaces won't break validity
|
||||||
so even if you plan to use or currently are using validation I strongly
|
checking,so even if you plan to use or currently are using validation I
|
||||||
suggest adding namespaces to your document. A default namespace scheme
|
stronglysuggest adding namespaces to your document. A default namespace
|
||||||
<code>xmlns="http://...."</code> should not break validity even on less
|
scheme<code>xmlns="http://...."</code>should not break validity even on
|
||||||
flexible parsers. Using namespaces to mix and differentiate content coming
|
lessflexible parsers. Using namespaces to mix and differentiate content
|
||||||
from multiple DTDs will certainly break current validation schemes. To check
|
comingfrom multiple DTDs will certainly break current validation schemes. To
|
||||||
such documents one needs to use schema-validation, which is supported in
|
checksuch documents one needs to use schema-validation, which is supported
|
||||||
libxml2 as well. See <a href="http://www.relaxng.org/">relagx-ng</a> and <a href="http://www.w3c.org/XML/Schema">w3c-schema</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>
|
inlibxml2 as well. See <a href="http://www.relaxng.org/">relagx-ng</a>and <a href="http://www.w3c.org/XML/Schema">w3c-schema</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>
|
||||||
|
|||||||
1685
doc/news.html
1685
doc/news.html
File diff suppressed because it is too large
Load Diff
247
doc/python.html
247
doc/python.html
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
188
doc/upgrade.html
188
doc/upgrade.html
File diff suppressed because one or more lines are too long
4918
doc/xml.html
4918
doc/xml.html
File diff suppressed because it is too large
Load Diff
153
doc/xmldtd.html
153
doc/xmldtd.html
@@ -17,84 +17,83 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<li><a href="#Some">Some examples</a></li>
|
<li><a href="#Some">Some examples</a></li>
|
||||||
<li><a href="#validate">How to validate</a></li>
|
<li><a href="#validate">How to validate</a></li>
|
||||||
<li><a href="#Other">Other resources</a></li>
|
<li><a href="#Other">Other resources</a></li>
|
||||||
</ol><h3><a name="General5" id="General5">General overview</a></h3><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
|
</ol><h3><a name="General5" id="General5">General overview</a></h3><p>Well what is validation and what is a DTD ?</p><p>DTD is the acronym for Document Type Definition. This is a description
|
||||||
the content for a family of XML files. This is part of the XML 1.0
|
ofthe content for a family of XML files. This is part of the XML
|
||||||
specification, and allows one to describe and verify that a given document
|
1.0specification, and allows one to describe and verify that a given
|
||||||
instance conforms to the set of rules detailing its structure and content.</p><p>Validation is the process of checking a document against a DTD (more
|
documentinstance conforms to the set of rules detailing its structure and
|
||||||
generally against a set of construction rules).</p><p>The validation process and building DTDs are the two most difficult parts
|
content.</p><p>Validation is the process of checking a document against a DTD
|
||||||
of the XML life cycle. Briefly a DTD defines all the possible elements to be
|
(moregenerally against a set of construction rules).</p><p>The validation process and building DTDs are the two most difficult
|
||||||
found within your document, what is the formal shape of your document tree
|
partsof the XML life cycle. Briefly a DTD defines all the possible elements
|
||||||
(by defining the allowed content of an element; either text, a regular
|
to befound within your document, what is the formal shape of your document
|
||||||
expression for the allowed list of children, or mixed content i.e. both text
|
tree(by defining the allowed content of an element; either text, a
|
||||||
and children). The DTD also defines the valid attributes for all elements and
|
regularexpression for the allowed list of children, or mixed content i.e.
|
||||||
the types of those attributes.</p><h3><a name="definition1" id="definition1">The definition</a></h3><p>The <a href="http://www.w3.org/TR/REC-xml">W3C XML Recommendation</a> (<a href="http://www.xml.com/axml/axml.html">Tim Bray's annotated version of
|
both textand children). The DTD also defines the valid attributes for all
|
||||||
Rev1</a>):</p><ul><li><a href="http://www.w3.org/TR/REC-xml#elemdecls">Declaring
|
elements andthe types of those attributes.</p><h3><a name="definition1" id="definition1">The definition</a></h3><p>The <a href="http://www.w3.org/TR/REC-xml">W3C XML Recommendation</a>(<a href="http://www.xml.com/axml/axml.html">Tim Bray's annotated version
|
||||||
elements</a></li>
|
ofRev1</a>):</p><ul><li><a href="http://www.w3.org/TR/REC-xml#elemdecls">Declaringelements</a></li>
|
||||||
<li><a href="http://www.w3.org/TR/REC-xml#attdecls">Declaring
|
<li><a href="http://www.w3.org/TR/REC-xml#attdecls">Declaringattributes</a></li>
|
||||||
attributes</a></li>
|
</ul><p>(unfortunately) all this is inherited from the SGML world, the syntax
|
||||||
</ul><p>(unfortunately) all this is inherited from the SGML world, the syntax is
|
isancient...</p><h3><a name="Simple1" id="Simple1">Simple rules</a></h3><p>Writing DTDs can be done in many ways. The rules to build them if you
|
||||||
ancient...</p><h3><a name="Simple1" id="Simple1">Simple rules</a></h3><p>Writing DTDs can be done in many ways. The rules to build them if you need
|
needsomething permanent or something which can evolve over time can be
|
||||||
something permanent or something which can evolve over time can be radically
|
radicallydifferent. Really complex DTDs like DocBook ones are flexible but
|
||||||
different. Really complex DTDs like DocBook ones are flexible but quite
|
quiteharder to design. I will just focus on DTDs for a formats with a fixed
|
||||||
harder to design. I will just focus on DTDs for a formats with a fixed simple
|
simplestructure. It is just a set of basic rules, and definitely not
|
||||||
structure. It is just a set of basic rules, and definitely not exhaustive nor
|
exhaustive norusable for complex DTD design.</p><h4><a name="reference1" id="reference1">How to reference a DTD from a document</a>:</h4><p>Assuming the top element of the document is <code>spec</code>and the dtdis
|
||||||
usable for complex DTD design.</p><h4><a name="reference1" id="reference1">How to reference a DTD from a document</a>:</h4><p>Assuming the top element of the document is <code>spec</code> and the dtd
|
placed in the file <code>mydtd</code>in the subdirectory<code>dtds</code>of
|
||||||
is placed in the file <code>mydtd</code> in the subdirectory
|
the directory from where the document were loaded:</p><p><code><!DOCTYPE spec SYSTEM "dtds/mydtd"></code></p><p>Notes:</p><ul><li>The system string is actually an URI-Reference (as defined in <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC 2396</a>) so you can use
|
||||||
<code>dtds</code> of the directory from where the document were loaded:</p><p><code><!DOCTYPE spec SYSTEM "dtds/mydtd"></code></p><p>Notes:</p><ul><li>The system string is actually an URI-Reference (as defined in <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC 2396</a>) so you can use a
|
afull URL string indicating the location of your DTD on the Web. This is
|
||||||
full URL string indicating the location of your DTD on the Web. This is a
|
areally good thing to do if you want others to validate your
|
||||||
really good thing to do if you want others to validate your document.</li>
|
document.</li>
|
||||||
<li>It is also possible to associate a <code>PUBLIC</code> identifier (a
|
<li>It is also possible to associate a <code>PUBLIC</code>identifier
|
||||||
magic string) so that the DTD is looked up in catalogs on the client side
|
(amagic string) so that the DTD is looked up in catalogs on the client
|
||||||
without having to locate it on the web.</li>
|
sidewithout having to locate it on the web.</li>
|
||||||
<li>A DTD contains a set of element and attribute declarations, but they
|
<li>A DTD contains a set of element and attribute declarations, but
|
||||||
don't define what the root of the document should be. This is explicitly
|
theydon't define what the root of the document should be. This is
|
||||||
told to the parser/validator as the first element of the
|
explicitlytold to the parser/validator as the first element of
|
||||||
<code>DOCTYPE</code> declaration.</li>
|
the<code>DOCTYPE</code>declaration.</li>
|
||||||
</ul><h4><a name="Declaring2" id="Declaring2">Declaring elements</a>:</h4><p>The following declares an element <code>spec</code>:</p><p><code><!ELEMENT spec (front, body, back?)></code></p><p>It also expresses that the spec element contains one <code>front</code>,
|
</ul><h4><a name="Declaring2" id="Declaring2">Declaring elements</a>:</h4><p>The following declares an element <code>spec</code>:</p><p><code><!ELEMENT spec (front, body, back?)></code></p><p>It also expresses that the spec element contains one
|
||||||
one <code>body</code> and one optional <code>back</code> children elements in
|
<code>front</code>,one <code>body</code>and one optional
|
||||||
this order. The declaration of one element of the structure and its content
|
<code>back</code>children elements inthis order. The declaration of one
|
||||||
are done in a single declaration. Similarly the following declares
|
element of the structure and its contentare done in a single declaration.
|
||||||
<code>div1</code> elements:</p><p><code><!ELEMENT div1 (head, (p | list | note)*, div2?)></code></p><p>which means div1 contains one <code>head</code> then a series of optional
|
Similarly the following declares<code>div1</code>elements:</p><p><code><!ELEMENT div1 (head, (p | list | note)*, div2?)></code></p><p>which means div1 contains one <code>head</code>then a series of
|
||||||
<code>p</code>, <code>list</code>s and <code>note</code>s and then an
|
optional<code>p</code>, <code>list</code>s and <code>note</code>s and then
|
||||||
optional <code>div2</code>. And last but not least an element can contain
|
anoptional <code>div2</code>. And last but not least an element can
|
||||||
text:</p><p><code><!ELEMENT b (#PCDATA)></code></p><p><code>b</code> contains text or being of mixed content (text and elements
|
containtext:</p><p><code><!ELEMENT b (#PCDATA)></code></p><p><code>b</code>contains text or being of mixed content (text and elementsin
|
||||||
in no particular order):</p><p><code><!ELEMENT p (#PCDATA|a|ul|b|i|em)*></code></p><p><code>p </code>can contain text or <code>a</code>, <code>ul</code>,
|
no particular order):</p><p><code><!ELEMENT p (#PCDATA|a|ul|b|i|em)*></code></p><p><code>p </code>can contain text or <code>a</code>,
|
||||||
<code>b</code>, <code>i </code>or <code>em</code> elements in no particular
|
<code>ul</code>,<code>b</code>, <code>i </code>or <code>em</code>elements in
|
||||||
order.</p><h4><a name="Declaring1" id="Declaring1">Declaring attributes</a>:</h4><p>Again the attributes declaration includes their content definition:</p><p><code><!ATTLIST termdef name CDATA #IMPLIED></code></p><p>means that the element <code>termdef</code> can have a <code>name</code>
|
no particularorder.</p><h4><a name="Declaring1" id="Declaring1">Declaring attributes</a>:</h4><p>Again the attributes declaration includes their content definition:</p><p><code><!ATTLIST termdef name CDATA #IMPLIED></code></p><p>means that the element <code>termdef</code>can have a
|
||||||
attribute containing text (<code>CDATA</code>) and which is optional
|
<code>name</code>attribute containing text (<code>CDATA</code>) and which is
|
||||||
(<code>#IMPLIED</code>). The attribute value can also be defined within a
|
optional(<code>#IMPLIED</code>). The attribute value can also be defined
|
||||||
set:</p><p><code><!ATTLIST list type (bullets|ordered|glossary)
|
within aset:</p><p><code><!ATTLIST list type
|
||||||
"ordered"></code></p><p>means <code>list</code> element have a <code>type</code> attribute with 3
|
(bullets|ordered|glossary)"ordered"></code></p><p>means <code>list</code>element have a <code>type</code>attribute with
|
||||||
allowed values "bullets", "ordered" or "glossary" and which default to
|
3allowed values "bullets", "ordered" or "glossary" and which default
|
||||||
"ordered" if the attribute is not explicitly specified.</p><p>The content type of an attribute can be text (<code>CDATA</code>),
|
to"ordered" if the attribute is not explicitly specified.</p><p>The content type of an attribute can be text
|
||||||
anchor/reference/references
|
(<code>CDATA</code>),anchor/reference/references(<code>ID</code>/<code>IDREF</code>/<code>IDREFS</code>),
|
||||||
(<code>ID</code>/<code>IDREF</code>/<code>IDREFS</code>), entity(ies)
|
entity(ies)(<code>ENTITY</code>/<code>ENTITIES</code>) or
|
||||||
(<code>ENTITY</code>/<code>ENTITIES</code>) or name(s)
|
name(s)(<code>NMTOKEN</code>/<code>NMTOKENS</code>). The following defines
|
||||||
(<code>NMTOKEN</code>/<code>NMTOKENS</code>). The following defines that a
|
that a<code>chapter</code>element can have an optional
|
||||||
<code>chapter</code> element can have an optional <code>id</code> attribute
|
<code>id</code>attributeof type <code>ID</code>, usable for reference from
|
||||||
of type <code>ID</code>, usable for reference from attribute of type
|
attribute of typeIDREF:</p><p><code><!ATTLIST chapter id ID #IMPLIED></code></p><p>The last value of an attribute definition can be
|
||||||
IDREF:</p><p><code><!ATTLIST chapter id ID #IMPLIED></code></p><p>The last value of an attribute definition can be <code>#REQUIRED
|
<code>#REQUIRED</code>meaning that the attribute has to be given,
|
||||||
</code>meaning that the attribute has to be given, <code>#IMPLIED</code>
|
<code>#IMPLIED</code>meaning that it is optional, or the default value
|
||||||
meaning that it is optional, or the default value (possibly prefixed by
|
(possibly prefixed by<code>#FIXED</code>if it is the only allowed).</p><p>Notes:</p><ul><li>Usually the attributes pertaining to a given element are declared in
|
||||||
<code>#FIXED</code> if it is the only allowed).</p><p>Notes:</p><ul><li>Usually the attributes pertaining to a given element are declared in a
|
asingle expression, but it is just a convention adopted by a lot of
|
||||||
single expression, but it is just a convention adopted by a lot of DTD
|
DTDwriters:
|
||||||
writers:
|
|
||||||
<pre><!ATTLIST termdef
|
<pre><!ATTLIST termdef
|
||||||
id ID #REQUIRED
|
id ID #REQUIRED
|
||||||
name CDATA #IMPLIED></pre>
|
name CDATA #IMPLIED></pre>
|
||||||
<p>The previous construct defines both <code>id</code> and
|
<p>The previous construct defines both
|
||||||
<code>name</code> attributes for the element <code>termdef</code>.</p>
|
<code>id</code>and<code>name</code>attributes for the element
|
||||||
|
<code>termdef</code>.</p>
|
||||||
</li>
|
</li>
|
||||||
</ul><h3><a name="Some1" id="Some1">Some examples</a></h3><p>The directory <code>test/valid/dtds/</code> in the libxml2 distribution
|
</ul><h3><a name="Some1" id="Some1">Some examples</a></h3><p>The directory <code>test/valid/dtds/</code>in the libxml2
|
||||||
contains some complex DTD examples. The example in the file
|
distributioncontains some complex DTD examples. The example in the
|
||||||
<code>test/valid/dia.xml</code> shows an XML file where the simple DTD is
|
file<code>test/valid/dia.xml</code>shows an XML file where the simple DTD
|
||||||
directly included within the document.</p><h3><a name="validate1" id="validate1">How to validate</a></h3><p>The simplest way is to use the xmllint program included with libxml. The
|
isdirectly included within the document.</p><h3><a name="validate1" id="validate1">How to validate</a></h3><p>The simplest way is to use the xmllint program included with libxml.
|
||||||
<code>--valid</code> option turns-on validation of the files given as input.
|
The<code>--valid</code>option turns-on validation of the files given as
|
||||||
For example the following validates a copy of the first revision of the XML
|
input.For example the following validates a copy of the first revision of the
|
||||||
1.0 specification:</p><p><code>xmllint --valid --noout test/valid/REC-xml-19980210.xml</code></p><p>the -- noout is used to disable output of the resulting tree.</p><p>The <code>--dtdvalid dtd</code> allows validation of the document(s)
|
XML1.0 specification:</p><p><code>xmllint --valid --noout test/valid/REC-xml-19980210.xml</code></p><p>the -- noout is used to disable output of the resulting tree.</p><p>The <code>--dtdvalid dtd</code>allows validation of the document(s)against
|
||||||
against a given DTD.</p><p>Libxml2 exports an API to handle DTDs and validation, check the <a href="http://xmlsoft.org/html/libxml-valid.html">associated
|
a given DTD.</p><p>Libxml2 exports an API to handle DTDs and validation, check the <a href="http://xmlsoft.org/html/libxml-valid.html">associateddescription</a>.</p><h3><a name="Other1" id="Other1">Other resources</a></h3><p>DTDs are as old as SGML. So there may be a number of examples on-line,
|
||||||
description</a>.</p><h3><a name="Other1" id="Other1">Other resources</a></h3><p>DTDs are as old as SGML. So there may be a number of examples on-line, I
|
Iwill just list one for now, others pointers welcome:</p><ul><li><a href="http://www.xml101.com:8081/dtd/">XML-101 DTD</a></li>
|
||||||
will just list one for now, others pointers welcome:</p><ul><li><a href="http://www.xml101.com:8081/dtd/">XML-101 DTD</a></li>
|
</ul><p>I suggest looking at the examples found under test/valid/dtd and any ofthe
|
||||||
</ul><p>I suggest looking at the examples found under test/valid/dtd and any of
|
large number of books available on XML. The dia example in test/validshould
|
||||||
the large number of books available on XML. The dia example in test/valid
|
be both simple and complete enough to allow you to build your own.</p><p></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>
|
||||||
should be both simple and complete enough to allow you to build your own.</p><p></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>
|
|
||||||
|
|||||||
125
doc/xmlio.html
125
doc/xmlio.html
@@ -13,64 +13,65 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<li><a href="#Output">Output I/O handlers</a></li>
|
<li><a href="#Output">Output I/O handlers</a></li>
|
||||||
<li><a href="#entities">The entities loader</a></li>
|
<li><a href="#entities">The entities loader</a></li>
|
||||||
<li><a href="#Example2">Example of customized I/O</a></li>
|
<li><a href="#Example2">Example of customized I/O</a></li>
|
||||||
</ol><h3><a name="General1" id="General1">General overview</a></h3><p>The module <code><a href="http://xmlsoft.org/html/libxml-xmlio.html">xmlIO.h</a></code> provides
|
</ol><h3><a name="General1" id="General1">General overview</a></h3><p>The module <code><a href="http://xmlsoft.org/html/libxml-xmlio.html">xmlIO.h</a></code>providesthe
|
||||||
the interfaces to the libxml2 I/O system. This consists of 4 main parts:</p><ul><li>Entities loader, this is a routine which tries to fetch the entities
|
interfaces to the libxml2 I/O system. This consists of 4 main parts:</p><ul><li>Entities loader, this is a routine which tries to fetch the
|
||||||
(files) based on their PUBLIC and SYSTEM identifiers. The default loader
|
entities(files) based on their PUBLIC and SYSTEM identifiers. The default
|
||||||
don't look at the public identifier since libxml2 do not maintain a
|
loaderdon't look at the public identifier since libxml2 do not maintain
|
||||||
catalog. You can redefine you own entity loader by using
|
acatalog. You can redefine you own entity loader by
|
||||||
<code>xmlGetExternalEntityLoader()</code> and
|
using<code>xmlGetExternalEntityLoader()</code>and<code>xmlSetExternalEntityLoader()</code>.
|
||||||
<code>xmlSetExternalEntityLoader()</code>. <a href="#entities">Check the
|
<a href="#entities">Check theexample</a>.</li>
|
||||||
example</a>.</li>
|
<li>Input I/O buffers which are a commodity structure used by the
|
||||||
<li>Input I/O buffers which are a commodity structure used by the parser(s)
|
parser(s)input layer to handle fetching the informations to feed the
|
||||||
input layer to handle fetching the informations to feed the parser. This
|
parser. Thisprovides buffering and is also a placeholder where the
|
||||||
provides buffering and is also a placeholder where the encoding
|
encodingconverters to UTF8 are piggy-backed.</li>
|
||||||
converters to UTF8 are piggy-backed.</li>
|
<li>Output I/O buffers are similar to the Input ones and fulfill
|
||||||
<li>Output I/O buffers are similar to the Input ones and fulfill similar
|
similartask but when generating a serialization from a tree.</li>
|
||||||
task but when generating a serialization from a tree.</li>
|
<li>A mechanism to register sets of I/O callbacks and associate them
|
||||||
<li>A mechanism to register sets of I/O callbacks and associate them with
|
withspecific naming schemes like the protocol part of the URIs.
|
||||||
specific naming schemes like the protocol part of the URIs.
|
<p>This affect the default I/O operations and allows to use specific
|
||||||
<p>This affect the default I/O operations and allows to use specific I/O
|
I/Ohandlers for certain names.</p>
|
||||||
handlers for certain names.</p>
|
|
||||||
</li>
|
</li>
|
||||||
</ul><p>The general mechanism used when loading http://rpmfind.net/xml.html for
|
</ul><p>The general mechanism used when loading http://rpmfind.net/xml.html
|
||||||
example in the HTML parser is the following:</p><ol><li>The default entity loader calls <code>xmlNewInputFromFile()</code> with
|
forexample in the HTML parser is the following:</p><ol><li>The default entity loader calls
|
||||||
the parsing context and the URI string.</li>
|
<code>xmlNewInputFromFile()</code>withthe parsing context and the URI
|
||||||
<li>the URI string is checked against the existing registered handlers
|
string.</li>
|
||||||
using their match() callback function, if the HTTP module was compiled
|
<li>the URI string is checked against the existing registered handlersusing
|
||||||
in, it is registered and its match() function will succeeds</li>
|
their match() callback function, if the HTTP module was compiledin, it is
|
||||||
<li>the open() function of the handler is called and if successful will
|
registered and its match() function will succeeds</li>
|
||||||
return an I/O Input buffer</li>
|
<li>the open() function of the handler is called and if successful
|
||||||
<li>the parser will the start reading from this buffer and progressively
|
willreturn an I/O Input buffer</li>
|
||||||
fetch information from the resource, calling the read() function of the
|
<li>the parser will the start reading from this buffer and
|
||||||
handler until the resource is exhausted</li>
|
progressivelyfetch information from the resource, calling the read()
|
||||||
<li>if an encoding change is detected it will be installed on the input
|
function of thehandler until the resource is exhausted</li>
|
||||||
buffer, providing buffering and efficient use of the conversion
|
<li>if an encoding change is detected it will be installed on the
|
||||||
routines</li>
|
inputbuffer, providing buffering and efficient use of the
|
||||||
<li>once the parser has finished, the close() function of the handler is
|
conversionroutines</li>
|
||||||
called once and the Input buffer and associated resources are
|
<li>once the parser has finished, the close() function of the handler
|
||||||
deallocated.</li>
|
iscalled once and the Input buffer and associated resources
|
||||||
</ol><p>The user defined callbacks are checked first to allow overriding of the
|
aredeallocated.</li>
|
||||||
default libxml2 I/O routines.</p><h3><a name="basic" id="basic">The basic buffer type</a></h3><p>All the buffer manipulation handling is done using the
|
</ol><p>The user defined callbacks are checked first to allow overriding of
|
||||||
<code>xmlBuffer</code> type define in <code><a href="http://xmlsoft.org/html/libxml-tree.html">tree.h</a> </code>which is a
|
thedefault libxml2 I/O routines.</p><h3><a name="basic" id="basic">The basic buffer type</a></h3><p>All the buffer manipulation handling is done using
|
||||||
resizable memory buffer. The buffer allocation strategy can be selected to be
|
the<code>xmlBuffer</code>type define in <code><a href="http://xmlsoft.org/html/libxml-tree.html">tree.h</a></code>which is
|
||||||
either best-fit or use an exponential doubling one (CPU vs. memory use
|
aresizable memory buffer. The buffer allocation strategy can be selected to
|
||||||
trade-off). The values are <code>XML_BUFFER_ALLOC_EXACT</code> and
|
beeither best-fit or use an exponential doubling one (CPU vs. memory
|
||||||
<code>XML_BUFFER_ALLOC_DOUBLEIT</code>, and can be set individually or on a
|
usetrade-off). The values are
|
||||||
system wide basis using <code>xmlBufferSetAllocationScheme()</code>. A number
|
<code>XML_BUFFER_ALLOC_EXACT</code>and<code>XML_BUFFER_ALLOC_DOUBLEIT</code>,
|
||||||
of functions allows to manipulate buffers with names starting with the
|
and can be set individually or on asystem wide basis using
|
||||||
<code>xmlBuffer...</code> prefix.</p><h3><a name="Input" id="Input">Input I/O handlers</a></h3><p>An Input I/O handler is a simple structure
|
<code>xmlBufferSetAllocationScheme()</code>. A numberof functions allows to
|
||||||
<code>xmlParserInputBuffer</code> containing a context associated to the
|
manipulate buffers with names starting with
|
||||||
resource (file descriptor, or pointer to a protocol handler), the read() and
|
the<code>xmlBuffer...</code>prefix.</p><h3><a name="Input" id="Input">Input I/O handlers</a></h3><p>An Input I/O handler is a simple
|
||||||
close() callbacks to use and an xmlBuffer. And extra xmlBuffer and a charset
|
structure<code>xmlParserInputBuffer</code>containing a context associated to
|
||||||
encoding handler are also present to support charset conversion when
|
theresource (file descriptor, or pointer to a protocol handler), the read()
|
||||||
needed.</p><h3><a name="Output" id="Output">Output I/O handlers</a></h3><p>An Output handler <code>xmlOutputBuffer</code> is completely similar to an
|
andclose() callbacks to use and an xmlBuffer. And extra xmlBuffer and a
|
||||||
Input one except the callbacks are write() and close().</p><h3><a name="entities" id="entities">The entities loader</a></h3><p>The entity loader resolves requests for new entities and create inputs for
|
charsetencoding handler are also present to support charset conversion
|
||||||
the parser. Creating an input from a filename or an URI string is done
|
whenneeded.</p><h3><a name="Output" id="Output">Output I/O handlers</a></h3><p>An Output handler <code>xmlOutputBuffer</code>is completely similar to
|
||||||
through the xmlNewInputFromFile() routine. The default entity loader do not
|
anInput one except the callbacks are write() and close().</p><h3><a name="entities" id="entities">The entities loader</a></h3><p>The entity loader resolves requests for new entities and create inputs
|
||||||
handle the PUBLIC identifier associated with an entity (if any). So it just
|
forthe parser. Creating an input from a filename or an URI string is
|
||||||
calls xmlNewInputFromFile() with the SYSTEM identifier (which is mandatory in
|
donethrough the xmlNewInputFromFile() routine. The default entity loader do
|
||||||
XML).</p><p>If you want to hook up a catalog mechanism then you simply need to
|
nothandle the PUBLIC identifier associated with an entity (if any). So it
|
||||||
override the default entity loader, here is an example:</p><pre>#include <libxml/xmlIO.h>
|
justcalls xmlNewInputFromFile() with the SYSTEM identifier (which is
|
||||||
|
mandatory inXML).</p><p>If you want to hook up a catalog mechanism then you simply need tooverride
|
||||||
|
the default entity loader, here is an example:</p><pre>#include <libxml/xmlIO.h>
|
||||||
|
|
||||||
xmlExternalEntityLoader defaultLoader = NULL;
|
xmlExternalEntityLoader defaultLoader = NULL;
|
||||||
|
|
||||||
@@ -99,11 +100,11 @@ int main(..) {
|
|||||||
xmlSetExternalEntityLoader(xmlMyExternalEntityLoader);
|
xmlSetExternalEntityLoader(xmlMyExternalEntityLoader);
|
||||||
|
|
||||||
...
|
...
|
||||||
}</pre><h3><a name="Example2" id="Example2">Example of customized I/O</a></h3><p>This example come from <a href="http://xmlsoft.org/messages/0708.html">a
|
}</pre><h3><a name="Example2" id="Example2">Example of customized I/O</a></h3><p>This example come from <a href="http://xmlsoft.org/messages/0708.html">areal use case</a>,
|
||||||
real use case</a>, xmlDocDump() closes the FILE * passed by the application
|
xmlDocDump() closes the FILE * passed by the applicationand this was a
|
||||||
and this was a problem. The <a href="http://xmlsoft.org/messages/0711.html">solution</a> was to redefine a
|
problem. The <a href="http://xmlsoft.org/messages/0711.html">solution</a>was
|
||||||
new output handler with the closing call deactivated:</p><ol><li>First define a new I/O output allocator where the output don't close
|
to redefine anew output handler with the closing call deactivated:</p><ol><li>First define a new I/O output allocator where the output don't closethe
|
||||||
the file:
|
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;
|
||||||
|
|||||||
167
doc/xmlmem.html
167
doc/xmlmem.html
@@ -12,91 +12,92 @@ A:link, A:visited, A:active { text-decoration: underline }
|
|||||||
<li><a href="#cleanup">Cleaning up after parsing</a></li>
|
<li><a href="#cleanup">Cleaning up after parsing</a></li>
|
||||||
<li><a href="#Debugging">Debugging routines</a></li>
|
<li><a href="#Debugging">Debugging routines</a></li>
|
||||||
<li><a href="#General4">General memory requirements</a></li>
|
<li><a href="#General4">General memory requirements</a></li>
|
||||||
</ol><h3><a name="General3" id="General3">General overview</a></h3><p>The module <code><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlmemory.h</a></code>
|
</ol><h3><a name="General3" id="General3">General overview</a></h3><p>The module <code><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlmemory.h</a></code>provides
|
||||||
provides the interfaces to the libxml2 memory system:</p><ul><li>libxml2 does not use the libc memory allocator directly but xmlFree(),
|
the interfaces to the libxml2 memory system:</p><ul><li>libxml2 does not use the libc memory allocator directly but
|
||||||
xmlMalloc() and xmlRealloc()</li>
|
xmlFree(),xmlMalloc() and xmlRealloc()</li>
|
||||||
<li>those routines can be reallocated to a specific set of routine, by
|
<li>those routines can be reallocated to a specific set of routine,
|
||||||
default the libc ones i.e. free(), malloc() and realloc()</li>
|
bydefault the libc ones i.e. free(), malloc() and realloc()</li>
|
||||||
<li>the xmlmemory.c module includes a set of debugging routine</li>
|
<li>the xmlmemory.c module includes a set of debugging routine</li>
|
||||||
</ul><h3><a name="setting" id="setting">Setting libxml2 set of memory routines</a></h3><p>It is sometimes useful to not use the default memory allocator, either for
|
</ul><h3><a name="setting" id="setting">Setting libxml2 set of memory routines</a></h3><p>It is sometimes useful to not use the default memory allocator, either
|
||||||
debugging, analysis or to implement a specific behaviour on memory management
|
fordebugging, analysis or to implement a specific behaviour on memory
|
||||||
(like on embedded systems). Two function calls are available to do so:</p><ul><li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemGet
|
management(like on embedded systems). Two function calls are available to do
|
||||||
()</a> which return the current set of functions in use by the parser</li>
|
so:</p><ul><li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemGet()</a>which
|
||||||
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemSetup()</a>
|
return the current set of functions in use by the parser</li>
|
||||||
which allow to set up a new set of memory allocation functions</li>
|
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemSetup()</a>which
|
||||||
</ul><p>Of course a call to xmlMemSetup() should probably be done before calling
|
allow to set up a new set of memory allocation functions</li>
|
||||||
any other libxml2 routines (unless you are sure your allocations routines are
|
</ul><p>Of course a call to xmlMemSetup() should probably be done before
|
||||||
compatibles).</p><h3><a name="cleanup" id="cleanup">Cleaning up after parsing</a></h3><p>Libxml2 is not stateless, there is a few set of memory structures needing
|
callingany other libxml2 routines (unless you are sure your allocations
|
||||||
allocation before the parser is fully functional (some encoding structures
|
routines arecompatibles).</p><h3><a name="cleanup" id="cleanup">Cleaning up after parsing</a></h3><p>Libxml2 is not stateless, there is a few set of memory structures
|
||||||
for example). This also mean that once parsing is finished there is a tiny
|
needingallocation before the parser is fully functional (some encoding
|
||||||
amount of memory (a few hundred bytes) which can be recollected if you don't
|
structuresfor example). This also mean that once parsing is finished there is
|
||||||
reuse the parser immediately:</p><ul><li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlCleanupParser
|
a tinyamount of memory (a few hundred bytes) which can be recollected if you
|
||||||
()</a> is a centralized routine to free the parsing states. Note that it
|
don'treuse the parser immediately:</p><ul><li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlCleanupParser()</a>is
|
||||||
won't deallocate any produced tree if any (use the xmlFreeDoc() and
|
a centralized routine to free the parsing states. Note that itwon't
|
||||||
related routines for this).</li>
|
deallocate any produced tree if any (use the xmlFreeDoc() andrelated
|
||||||
<li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlInitParser
|
routines for this).</li>
|
||||||
()</a> is the dual routine allowing to preallocate the parsing state
|
<li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlInitParser()</a>is
|
||||||
which can be useful for example to avoid initialization reentrancy
|
the dual routine allowing to preallocate the parsing statewhich can be
|
||||||
problems when using libxml2 in multithreaded applications</li>
|
useful for example to avoid initialization reentrancyproblems when using
|
||||||
</ul><p>Generally xmlCleanupParser() is safe, if needed the state will be rebuild
|
libxml2 in multithreaded applications</li>
|
||||||
at the next invocation of parser routines, but be careful of the consequences
|
</ul><p>Generally xmlCleanupParser() is safe, if needed the state will be
|
||||||
in multithreaded applications.</p><h3><a name="Debugging" id="Debugging">Debugging routines</a></h3><p>When configured using --with-mem-debug flag (off by default), libxml2 uses
|
rebuildat the next invocation of parser routines, but be careful of the
|
||||||
a set of memory allocation debugging routines keeping track of all allocated
|
consequencesin multithreaded applications.</p><h3><a name="Debugging" id="Debugging">Debugging routines</a></h3><p>When configured using --with-mem-debug flag (off by default), libxml2
|
||||||
blocks and the location in the code where the routine was called. A couple of
|
usesa set of memory allocation debugging routines keeping track of all
|
||||||
other debugging routines allow to dump the memory allocated infos to a file
|
allocatedblocks and the location in the code where the routine was called. A
|
||||||
or call a specific routine when a given block number is allocated:</p><ul><li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMallocLoc()</a>
|
couple ofother debugging routines allow to dump the memory allocated infos to
|
||||||
<a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlReallocLoc()</a>
|
a fileor call a specific routine when a given block number is allocated:</p><ul><li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMallocLoc()</a><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlReallocLoc()</a>and
|
||||||
and <a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemStrdupLoc()</a>
|
<a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemStrdupLoc()</a>are
|
||||||
are the memory debugging replacement allocation routines</li>
|
the memory debugging replacement allocation routines</li>
|
||||||
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemoryDump
|
<li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemoryDump()</a>dumps
|
||||||
()</a> dumps all the informations about the allocated memory block lefts
|
all the informations about the allocated memory block leftsin the
|
||||||
in the <code>.memdump</code> file</li>
|
<code>.memdump</code>file</li>
|
||||||
</ul><p>When developing libxml2 memory debug is enabled, the tests programs call
|
</ul><p>When developing libxml2 memory debug is enabled, the tests programs
|
||||||
xmlMemoryDump () and the "make test" regression tests will check for any
|
callxmlMemoryDump () and the "make test" regression tests will check for
|
||||||
memory leak during the full regression test sequence, this helps a lot
|
anymemory leak during the full regression test sequence, this helps a
|
||||||
ensuring that libxml2 does not leak memory and bullet proof memory
|
lotensuring that libxml2 does not leak memory and bullet proof
|
||||||
allocations use (some libc implementations are known to be far too permissive
|
memoryallocations use (some libc implementations are known to be far too
|
||||||
resulting in major portability problems!).</p><p>If the .memdump reports a leak, it displays the allocation function and
|
permissiveresulting in major portability problems!).</p><p>If the .memdump reports a leak, it displays the allocation function
|
||||||
also tries to give some informations about the content and structure of the
|
andalso tries to give some informations about the content and structure of
|
||||||
allocated blocks left. This is sufficient in most cases to find the culprit,
|
theallocated blocks left. This is sufficient in most cases to find the
|
||||||
but not always. Assuming the allocation problem is reproducible, it is
|
culprit,but not always. Assuming the allocation problem is reproducible, it
|
||||||
possible to find more easily:</p><ol><li>write down the block number xxxx not allocated</li>
|
ispossible to find more easily:</p><ol><li>write down the block number xxxx not allocated</li>
|
||||||
<li>export the environment variable XML_MEM_BREAKPOINT=xxxx , the easiest
|
<li>export the environment variable XML_MEM_BREAKPOINT=xxxx , the
|
||||||
when using GDB is to simply give the command
|
easiestwhen using GDB is to simply give the command
|
||||||
<p><code>set environment XML_MEM_BREAKPOINT xxxx</code></p>
|
<p><code>set environment XML_MEM_BREAKPOINT xxxx</code></p>
|
||||||
<p>before running the program.</p>
|
<p>before running the program.</p>
|
||||||
</li>
|
</li>
|
||||||
<li>run the program under a debugger and set a breakpoint on
|
<li>run the program under a debugger and set a breakpoint
|
||||||
xmlMallocBreakpoint() a specific function called when this precise block
|
onxmlMallocBreakpoint() a specific function called when this precise
|
||||||
is allocated</li>
|
blockis allocated</li>
|
||||||
<li>when the breakpoint is reached you can then do a fine analysis of the
|
<li>when the breakpoint is reached you can then do a fine analysis of
|
||||||
allocation an step to see the condition resulting in the missing
|
theallocation an step to see the condition resulting in the
|
||||||
deallocation.</li>
|
missingdeallocation.</li>
|
||||||
</ol><p>I used to use a commercial tool to debug libxml2 memory problems but after
|
</ol><p>I used to use a commercial tool to debug libxml2 memory problems but
|
||||||
noticing that it was not detecting memory leaks that simple mechanism was
|
afternoticing that it was not detecting memory leaks that simple mechanism
|
||||||
used and proved extremely efficient until now. Lately I have also used <a href="http://developer.kde.org/~sewardj/">valgrind</a> with quite some
|
wasused and proved extremely efficient until now. Lately I have also used <a href="http://developer.kde.org/~sewardj/">valgrind</a>with quite somesuccess,
|
||||||
success, it is tied to the i386 architecture since it works by emulating the
|
it is tied to the i386 architecture since it works by emulating theprocessor
|
||||||
processor and instruction set, it is slow but extremely efficient, i.e. it
|
and instruction set, it is slow but extremely efficient, i.e. itspot memory
|
||||||
spot memory usage errors in a very precise way.</p><h3><a name="General4" id="General4">General memory requirements</a></h3><p>How much libxml2 memory require ? It's hard to tell in average it depends
|
usage errors in a very precise way.</p><h3><a name="General4" id="General4">General memory requirements</a></h3><p>How much libxml2 memory require ? It's hard to tell in average it
|
||||||
of a number of things:</p><ul><li>the parser itself should work in a fixed amount of memory, except for
|
dependsof a number of things:</p><ul><li>the parser itself should work in a fixed amount of memory, except
|
||||||
information maintained about the stacks of names and entities locations.
|
forinformation maintained about the stacks of names and entities
|
||||||
The I/O and encoding handlers will probably account for a few KBytes.
|
locations.The I/O and encoding handlers will probably account for a few
|
||||||
This is true for both the XML and HTML parser (though the HTML parser
|
KBytes.This is true for both the XML and HTML parser (though the HTML
|
||||||
need more state).</li>
|
parserneed more state).</li>
|
||||||
<li>If you are generating the DOM tree then memory requirements will grow
|
<li>If you are generating the DOM tree then memory requirements will
|
||||||
nearly linear with the size of the data. In general for a balanced
|
grownearly linear with the size of the data. In general for a
|
||||||
textual document the internal memory requirement is about 4 times the
|
balancedtextual document the internal memory requirement is about 4 times
|
||||||
size of the UTF8 serialization of this document (example the XML-1.0
|
thesize of the UTF8 serialization of this document (example the
|
||||||
recommendation is a bit more of 150KBytes and takes 650KBytes of main
|
XML-1.0recommendation is a bit more of 150KBytes and takes 650KBytes of
|
||||||
memory when parsed). Validation will add a amount of memory required for
|
mainmemory when parsed). Validation will add a amount of memory required
|
||||||
maintaining the external Dtd state which should be linear with the
|
formaintaining the external Dtd state which should be linear with
|
||||||
complexity of the content model defined by the Dtd</li>
|
thecomplexity of the content model defined by the Dtd</li>
|
||||||
<li>If you need to work with fixed memory requirements or don't need the
|
<li>If you need to work with fixed memory requirements or don't need
|
||||||
full DOM tree then using the <a href="xmlreader.html">xmlReader
|
thefull DOM tree then using the <a href="xmlreader.html">xmlReaderinterface</a>is probably the best way to
|
||||||
interface</a> is probably the best way to proceed, it still allows to
|
proceed, it still allows tovalidate or operate on subset of the tree if
|
||||||
validate or operate on subset of the tree if needed.</li>
|
needed.</li>
|
||||||
<li>If you don't care about the advanced features of libxml2 like
|
<li>If you don't care about the advanced features of libxml2
|
||||||
validation, DOM, XPath or XPointer, don't use entities, need to work with
|
likevalidation, DOM, XPath or XPointer, don't use entities, need to work
|
||||||
fixed memory requirements, and try to get the fastest parsing possible
|
withfixed memory requirements, and try to get the fastest parsing
|
||||||
then the SAX interface should be used, but it has known restrictions.</li>
|
possiblethen the SAX interface should be used, but it has known
|
||||||
|
restrictions.</li>
|
||||||
</ul><p></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>
|
</ul><p></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>
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ Summary: Libraries, includes, etc. to develop XML and HTML applications
|
|||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Requires: libxml2 = %{version}
|
Requires: libxml2 = %{version}
|
||||||
Requires: zlib-devel
|
Requires: zlib-devel
|
||||||
|
Requires: pkgconfig
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
Libraries, include files, etc you can use to develop XML applications.
|
Libraries, include files, etc you can use to develop XML applications.
|
||||||
|
|||||||
@@ -990,6 +990,7 @@ Class xpathContext()
|
|||||||
registerXPathFunction()
|
registerXPathFunction()
|
||||||
|
|
||||||
# functions from module xpath
|
# functions from module xpath
|
||||||
|
xpathContextSetCache()
|
||||||
xpathEval()
|
xpathEval()
|
||||||
xpathEvalExpression()
|
xpathEvalExpression()
|
||||||
xpathFreeContext()
|
xpathFreeContext()
|
||||||
|
|||||||
58
testapi.c
58
testapi.c
@@ -45558,6 +45558,61 @@ test_xmlXPathCompiledEval(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int
|
||||||
|
test_xmlXPathContextSetCache(void) {
|
||||||
|
int test_ret = 0;
|
||||||
|
|
||||||
|
#if defined(LIBXML_XPATH_ENABLED)
|
||||||
|
int mem_base;
|
||||||
|
int ret_val;
|
||||||
|
xmlXPathContextPtr ctxt; /* the XPath context */
|
||||||
|
int n_ctxt;
|
||||||
|
int active; /* enables/disables (creates/frees) the cache */
|
||||||
|
int n_active;
|
||||||
|
int value; /* a value with semantics dependant on @options */
|
||||||
|
int n_value;
|
||||||
|
int options; /* options (currently only the value 0 is used) */
|
||||||
|
int n_options;
|
||||||
|
|
||||||
|
for (n_ctxt = 0;n_ctxt < gen_nb_xmlXPathContextPtr;n_ctxt++) {
|
||||||
|
for (n_active = 0;n_active < gen_nb_int;n_active++) {
|
||||||
|
for (n_value = 0;n_value < gen_nb_int;n_value++) {
|
||||||
|
for (n_options = 0;n_options < gen_nb_int;n_options++) {
|
||||||
|
mem_base = xmlMemBlocks();
|
||||||
|
ctxt = gen_xmlXPathContextPtr(n_ctxt, 0);
|
||||||
|
active = gen_int(n_active, 1);
|
||||||
|
value = gen_int(n_value, 2);
|
||||||
|
options = gen_int(n_options, 3);
|
||||||
|
|
||||||
|
ret_val = xmlXPathContextSetCache(ctxt, active, value, options);
|
||||||
|
desret_int(ret_val);
|
||||||
|
call_tests++;
|
||||||
|
des_xmlXPathContextPtr(n_ctxt, ctxt, 0);
|
||||||
|
des_int(n_active, active, 1);
|
||||||
|
des_int(n_value, value, 2);
|
||||||
|
des_int(n_options, options, 3);
|
||||||
|
xmlResetLastError();
|
||||||
|
if (mem_base != xmlMemBlocks()) {
|
||||||
|
printf("Leak of %d blocks found in xmlXPathContextSetCache",
|
||||||
|
xmlMemBlocks() - mem_base);
|
||||||
|
test_ret++;
|
||||||
|
printf(" %d", n_ctxt);
|
||||||
|
printf(" %d", n_active);
|
||||||
|
printf(" %d", n_value);
|
||||||
|
printf(" %d", n_options);
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function_tests++;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return(test_ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
test_xmlXPathConvertBoolean(void) {
|
test_xmlXPathConvertBoolean(void) {
|
||||||
int test_ret = 0;
|
int test_ret = 0;
|
||||||
@@ -46004,7 +46059,7 @@ static int
|
|||||||
test_xpath(void) {
|
test_xpath(void) {
|
||||||
int test_ret = 0;
|
int test_ret = 0;
|
||||||
|
|
||||||
if (quiet == 0) printf("Testing xpath : 28 of 36 functions ...\n");
|
if (quiet == 0) printf("Testing xpath : 29 of 37 functions ...\n");
|
||||||
test_ret += test_xmlXPathCastBooleanToNumber();
|
test_ret += test_xmlXPathCastBooleanToNumber();
|
||||||
test_ret += test_xmlXPathCastBooleanToString();
|
test_ret += test_xmlXPathCastBooleanToString();
|
||||||
test_ret += test_xmlXPathCastNodeSetToBoolean();
|
test_ret += test_xmlXPathCastNodeSetToBoolean();
|
||||||
@@ -46022,6 +46077,7 @@ test_xpath(void) {
|
|||||||
test_ret += test_xmlXPathCmpNodes();
|
test_ret += test_xmlXPathCmpNodes();
|
||||||
test_ret += test_xmlXPathCompile();
|
test_ret += test_xmlXPathCompile();
|
||||||
test_ret += test_xmlXPathCompiledEval();
|
test_ret += test_xmlXPathCompiledEval();
|
||||||
|
test_ret += test_xmlXPathContextSetCache();
|
||||||
test_ret += test_xmlXPathConvertBoolean();
|
test_ret += test_xmlXPathConvertBoolean();
|
||||||
test_ret += test_xmlXPathConvertNumber();
|
test_ret += test_xmlXPathConvertNumber();
|
||||||
test_ret += test_xmlXPathConvertString();
|
test_ret += test_xmlXPathConvertString();
|
||||||
|
|||||||
Reference in New Issue
Block a user