1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-03-09 04:58:16 +03:00

adds element traversal support avoid a warning regenerated daniel

* include/libxml/tree.h tree.c python/generator.py: adds
  element traversal support
* valid.c: avoid a warning
* doc/*: regenerated
daniel

svn path=/trunk/; revision=3804
This commit is contained in:
Daniel Veillard 2008-11-27 15:26:28 +00:00
parent 1dc9feb00f
commit be2bd6ac6f
28 changed files with 757 additions and 128 deletions

View File

@ -1,3 +1,10 @@
Thu Nov 27 16:24:52 CET 2008 Daniel Veillard <daniel@veillard.com>
* include/libxml/tree.h tree.c python/generator.py: adds
element traversal support
* valid.c: avoid a warning
* doc/*: regenerated
Mon Nov 17 16:56:18 CET 2008 Daniel Veillard <daniel@veillard.com>
* SAX2.c parser.c: fix for CVE-2008-4226, a memory overflow

View File

@ -37,10 +37,15 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="APIchunk27.html">w-w</a>
<a href="APIchunk28.html">x-x</a>
<a href="APIchunk29.html">y-z</a>
</h2><h2>Letter b:</h2><dl><dt>back</dt><dd><a href="html/libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a><br />
</h2><h2>Letter b:</h2><dl><dt>back</dt><dd><a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-nanoftp.html#xmlNanoFTPGet">xmlNanoFTPGet</a><br />
<a href="html/libxml-nanoftp.html#xmlNanoFTPList">xmlNanoFTPList</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-relaxng.html#xmlRelaxNGDump">xmlRelaxNGDump</a><br />
<a href="html/libxml-parserInternals.html#xmlSetEntityReferenceFunc">xmlSetEntityReferenceFunc</a><br />
</dd><dt>badly</dt><dd><a href="html/libxml-parserInternals.html#xmlParseExternalID">xmlParseExternalID</a><br />

View File

@ -302,7 +302,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlwriter.html#xmlTextWriterEndDocument">xmlTextWriterEndDocument</a><br />
</dd><dt>closes</dt><dd><a href="html/libxml-nanohttp.html#xmlNanoHTTPClose">xmlNanoHTTPClose</a><br />
<a href="html/libxml-nanohttp.html#xmlNanoHTTPSave">xmlNanoHTTPSave</a><br />
</dd><dt>closest</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
</dd><dt>closest</dt><dd><a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathFloorFunction">xmlXPathFloorFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathRoundFunction">xmlXPathRoundFunction</a><br />
</dd><dt>closing</dt><dd><a href="html/libxml-parserInternals.html#htmlInitAutoClose">htmlInitAutoClose</a><br />
@ -793,6 +795,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd</a><br />
</dd><dt>count</dt><dd><a href="html/libxml-entities.html#_xmlEntity">_xmlEntity</a><br />
<a href="html/libxml-nanoftp.html#ftpListCallback">ftpListCallback</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpRef">xmlExpRef</a><br />
<a href="html/libxml-debugXML.html#xmlLsCountNode">xmlLsCountNode</a><br />
<a href="html/libxml-xmlsave.html#xmlSaveDoc">xmlSaveDoc</a><br />

View File

@ -408,7 +408,12 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-catalog.html#xmlACatalogAdd">xmlACatalogAdd</a><br />
<a href="html/libxml-tree.html#xmlBuildQName">xmlBuildQName</a><br />
<a href="html/libxml-catalog.html#xmlCatalogAdd">xmlCatalogAdd</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlNodeGetBase">xmlNodeGetBase</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xmlstring.html#xmlStrEqual">xmlStrEqual</a><br />
<a href="html/libxml-xmlstring.html#xmlStrQEqual">xmlStrQEqual</a><br />
</dd><dt>differentiate</dt><dd><a href="html/libxml-xpath.html#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a><br />
@ -538,11 +543,16 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlregexp.html#xmlRegExecCallbacks">xmlRegExecCallbacks</a><br />
</dd><dt>don</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ANY_LAX">XML_SCHEMAS_ANY_LAX</a><br />
<a href="html/libxml-xlink.html#xlinkIsLink">xlinkIsLink</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-parser.html#xmlCreatePushParserCtxt">xmlCreatePushParserCtxt</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNewDocNode">xmlNewDocNode</a><br />
<a href="html/libxml-tree.html#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-parserInternals.html#xmlParseStartTag">xmlParseStartTag</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xmlregexp.html#xmlRegExecErrInfo">xmlRegExecErrInfo</a><br />
<a href="html/libxml-xmlregexp.html#xmlRegExecNextValues">xmlRegExecNextValues</a><br />
<a href="html/libxml-tree.html#xmlSearchNs">xmlSearchNs</a><br />

View File

@ -201,15 +201,20 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-SAX.html#attribute">attribute</a><br />
<a href="html/libxml-parser.html#attributeSAXFunc">attributeSAXFunc</a><br />
<a href="html/libxml-HTMLparser.html#htmlHandleOmittedElem">htmlHandleOmittedElem</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-parserInternals.html#xmlHandleEntity">xmlHandleEntity</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-parserInternals.html#xmlNamespaceParseNCName">xmlNamespaceParseNCName</a><br />
<a href="html/libxml-parserInternals.html#xmlNamespaceParseNSDef">xmlNamespaceParseNSDef</a><br />
<a href="html/libxml-parserInternals.html#xmlNamespaceParseQName">xmlNamespaceParseQName</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlNodeListGetRawString">xmlNodeListGetRawString</a><br />
<a href="html/libxml-globals.html#xmlOutputBufferCreateFilenameDefault">xmlOutputBufferCreateFilenameDefault</a><br />
<a href="html/libxml-parserInternals.html#xmlParserHandlePEReference">xmlParserHandlePEReference</a><br />
<a href="html/libxml-parserInternals.html#xmlParserHandleReference">xmlParserHandleReference</a><br />
<a href="html/libxml-globals.html#xmlParserInputBufferCreateFilenameDefault">xmlParserInputBufferCreateFilenameDefault</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xmlregexp.html#xmlRegNewExecCtxt">xmlRegNewExecCtxt</a><br />
<a href="html/libxml-xmlIO.html#xmlRegisterInputCallbacks">xmlRegisterInputCallbacks</a><br />
<a href="html/libxml-xmlIO.html#xmlRegisterOutputCallbacks">xmlRegisterOutputCallbacks</a><br />

View File

@ -62,34 +62,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-chvalid.html#xmlIsPubidChar">xmlIsPubidChar</a><br />
<a href="html/libxml-tree.html#xmlNewGlobalNs">xmlNewGlobalNs</a><br />
</dd><dt>DOCTYPE</dt><dd><a href="html/libxml-parserInternals.html#xmlParseDocTypeDecl">xmlParseDocTypeDecl</a><br />
</dd><dt>DOM</dt><dd><a href="html/libxml-xmlversion.html#LIBXML_TREE_ENABLED">LIBXML_TREE_ENABLED</a><br />
<a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
<a href="html/libxml-SAX.html#attribute">attribute</a><br />
<a href="html/libxml-parser.html#attributeSAXFunc">attributeSAXFunc</a><br />
<a href="html/libxml-DOCBparser.html#docbSAXParseDoc">docbSAXParseDoc</a><br />
<a href="html/libxml-DOCBparser.html#docbSAXParseFile">docbSAXParseFile</a><br />
<a href="html/libxml-HTMLparser.html#htmlSAXParseDoc">htmlSAXParseDoc</a><br />
<a href="html/libxml-HTMLparser.html#htmlSAXParseFile">htmlSAXParseFile</a><br />
<a href="html/libxml-SAX.html#ignorableWhitespace">ignorableWhitespace</a><br />
<a href="html/libxml-parser.html#ignorableWhitespaceSAXFunc">ignorableWhitespaceSAXFunc</a><br />
<a href="html/libxml-SAX.html#resolveEntity">resolveEntity</a><br />
<a href="html/libxml-parser.html#resolveEntitySAXFunc">resolveEntitySAXFunc</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapAcquireNsFunction">xmlDOMWrapAcquireNsFunction</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapReconcileNamespaces">xmlDOMWrapReconcileNamespaces</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapRemoveNode">xmlDOMWrapRemoveNode</a><br />
<a href="html/libxml-tree.html#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a><br />
<a href="html/libxml-tree.html#xmlDocDumpMemoryEnc">xmlDocDumpMemoryEnc</a><br />
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
<a href="html/libxml-SAX2.html#xmlSAX2IgnorableWhitespace">xmlSAX2IgnorableWhitespace</a><br />
<a href="html/libxml-SAX2.html#xmlSAX2ResolveEntity">xmlSAX2ResolveEntity</a><br />
<a href="html/libxml-parser.html#xmlSAXParseDoc">xmlSAXParseDoc</a><br />
<a href="html/libxml-parser.html#xmlSAXParseEntity">xmlSAXParseEntity</a><br />
<a href="html/libxml-parser.html#xmlSAXParseFile">xmlSAXParseFile</a><br />
<a href="html/libxml-parser.html#xmlSAXParseFileWithData">xmlSAXParseFileWithData</a><br />
<a href="html/libxml-parser.html#xmlSAXParseMemory">xmlSAXParseMemory</a><br />
<a href="html/libxml-parser.html#xmlSAXParseMemoryWithData">xmlSAXParseMemoryWithData</a><br />
<a href="html/libxml-xpath.html#xmlXPathNodeSetGetLength">xmlXPathNodeSetGetLength</a><br />
<a href="html/libxml-xpath.html#xmlXPathNodeSetItem">xmlXPathNodeSetItem</a><br />
</dd><dt>DOM-wrapper</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapFreeCtxt">xmlDOMWrapFreeCtxt</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapNewCtxt">xmlDOMWrapNewCtxt</a><br />
</dd><dt>DTDs</dt><dd><a href="html/libxml-parser.html#XML_COMPLETE_ATTRS">XML_COMPLETE_ATTRS</a><br />
@ -260,6 +232,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#_xmlElement">_xmlElement</a><br />
<a href="html/libxml-tree.html#_xmlElementContent">_xmlElementContent</a><br />
<a href="html/libxml-HTMLparser.html#htmlNodeStatus">htmlNodeStatus</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a><br />
<a href="html/libxml-parserInternals.html#xmlParseDocTypeDecl">xmlParseDocTypeDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseElement">xmlParseElement</a><br />

View File

@ -344,6 +344,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
<a href="html/libxml-parser.html#xmlLineNumbersDefault">xmlLineNumbersDefault</a><br />
<a href="html/libxml-parser.html#xmlPedanticParserDefault">xmlPedanticParserDefault</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-parserInternals.html#xmlPushInput">xmlPushInput</a><br />
<a href="html/libxml-SAX2.html#xmlSAXDefaultVersion">xmlSAXDefaultVersion</a><br />
<a href="html/libxml-parser.html#xmlSubstituteEntitiesDefault">xmlSubstituteEntitiesDefault</a><br />

View File

@ -315,6 +315,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#_xmlNode">_xmlNode</a><br />
<a href="html/libxml-tree.html#xmlAddNextSibling">xmlAddNextSibling</a><br />
<a href="html/libxml-tree.html#xmlAddPrevSibling">xmlAddPrevSibling</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xmlschemastypes.html#xmlSchemaValueAppend">xmlSchemaValueAppend</a><br />
<a href="html/libxml-xmlschemastypes.html#xmlSchemaValueGetNext">xmlSchemaValueGetNext</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathNextPrecedingSibling">xmlXPathNextPrecedingSibling</a><br />
@ -364,10 +366,15 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlerror.html#xmlSetStructuredErrorFunc">xmlSetStructuredErrorFunc</a><br />
</dd><dt>since</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_TYPE_VARIETY_ABSENT">XML_SCHEMAS_TYPE_VARIETY_ABSENT</a><br />
<a href="html/libxml-uri.html#xmlBuildRelativeURI">xmlBuildRelativeURI</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<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#xmlDOMWrapReconcileNamespaces">xmlDOMWrapReconcileNamespaces</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-parserInternals.html#xmlParseExternalID">xmlParseExternalID</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-relaxng.html#xmlRelaxNGNewDocParserCtxt">xmlRelaxNGNewDocParserCtxt</a><br />
</dd><dt>single</dt><dd><a href="html/libxml-parserInternals.html#IS_DIGIT_CH">IS_DIGIT_CH</a><br />
<a href="html/libxml-parserInternals.html#xmlCurrentChar">xmlCurrentChar</a><br />
@ -486,7 +493,12 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>span</dt><dd><a href="html/libxml-parserInternals.html#xmlCurrentChar">xmlCurrentChar</a><br />
<a href="html/libxml-parserInternals.html#xmlStringCurrentChar">xmlStringCurrentChar</a><br />
</dd><dt>spec</dt><dd><a href="html/libxml-catalog.html#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-parserInternals.html#xmlParseComment">xmlParseComment</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
</dd><dt>spec:</dt><dd><a href="html/libxml-parserInternals.html#IS_BASECHAR">IS_BASECHAR</a><br />
<a href="html/libxml-parserInternals.html#IS_BLANK">IS_BLANK</a><br />
<a href="html/libxml-parserInternals.html#IS_BYTE_CHAR">IS_BYTE_CHAR</a><br />

View File

@ -109,25 +109,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-pattern.html#xmlStreamWantsAnyNode">xmlStreamWantsAnyNode</a><br />
</dd><dt>text-node</dt><dd><a href="html/libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a><br />
</dd><dt>textDecl?</dt><dd><a href="html/libxml-parserInternals.html#xmlParseExternalSubset">xmlParseExternalSubset</a><br />
</dd><dt>than</dt><dd><a href="html/libxml-xmlstring.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpExpDerive">xmlExpExpDerive</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpGetLanguage">xmlExpGetLanguage</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpGetStart">xmlExpGetStart</a><br />
<a href="html/libxml-tree.html#xmlNewNs">xmlNewNs</a><br />
<a href="html/libxml-parserInternals.html#xmlParseAttribute">xmlParseAttribute</a><br />
<a href="html/libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a><br />
<a href="html/libxml-parserInternals.html#xmlParseElementDecl">xmlParseElementDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseSDDecl">xmlParseSDDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseStartTag">xmlParseStartTag</a><br />
<a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
<a href="html/libxml-xmlstring.html#xmlStrEqual">xmlStrEqual</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderIsNamespaceDecl">xmlTextReaderIsNamespaceDecl</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathFloorFunction">xmlXPathFloorFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathTranslateFunction">xmlXPathTranslateFunction</a><br />
</dd><dt>their</dt><dd><a href="html/libxml-encoding.html#xmlCharEncOutFunc">xmlCharEncOutFunc</a><br />
<a href="html/libxml-entities.html#xmlEncodeEntities">xmlEncodeEntities</a><br />
<a href="html/libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a><br />
@ -316,7 +297,12 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlerror.html#xmlParserValidityWarning">xmlParserValidityWarning</a><br />
<a href="html/libxml-xmlerror.html#xmlParserWarning">xmlParserWarning</a><br />
</dd><dt>transport</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPClose">xmlNanoFTPClose</a><br />
</dd><dt>traversal</dt><dd><a href="html/libxml-xpath.html#xmlXPathAxisFunc">xmlXPathAxisFunc</a><br />
</dd><dt>traversal</dt><dd><a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xpath.html#xmlXPathAxisFunc">xmlXPathAxisFunc</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathNextAncestor">xmlXPathNextAncestor</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathNextAncestorOrSelf">xmlXPathNextAncestorOrSelf</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathNextAttribute">xmlXPathNextAttribute</a><br />

View File

@ -72,7 +72,12 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashRemoveEntry3">xmlHashRemoveEntry3</a><br />
<a href="html/libxml-parser.html#xmlParserFindNodeInfo">xmlParserFindNodeInfo</a><br />
<a href="html/libxml-parser.html#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a><br />
</dd><dt>Finds</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpIsNillable">xmlExpIsNillable</a><br />
</dd><dt>Finds</dt><dd><a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpIsNillable">xmlExpIsNillable</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
</dd><dt>First</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_TYPE_FIXUP_1">XML_SCHEMAS_TYPE_FIXUP_1</a><br />
<a href="html/libxml-entities.html#_xmlEntity">_xmlEntity</a><br />
</dd><dt>Fixed</dt><dd><a href="html/libxml-parserInternals.html#xmlParseDefaultDecl">xmlParseDefaultDecl</a><br />

View File

@ -71,7 +71,12 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>VersionInfo?</dt><dd><a href="html/libxml-parserInternals.html#xmlParseTextDecl">xmlParseTextDecl</a><br />
</dd><dt>VersionNum</dt><dd><a href="html/libxml-parserInternals.html#xmlParseVersionInfo">xmlParseVersionInfo</a><br />
<a href="html/libxml-parserInternals.html#xmlParseVersionNum">xmlParseVersionNum</a><br />
</dd></dl><h2>Letter W:</h2><dl><dt>W3C</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidate">xmlTextReaderSchemaValidate</a><br />
</dd></dl><h2>Letter W:</h2><dl><dt>W3C</dt><dd><a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidate">xmlTextReaderSchemaValidate</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderSchemaValidateCtxt">xmlTextReaderSchemaValidateCtxt</a><br />
</dd><dt>WARNING:</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
<a href="html/libxml-xmlschemastypes.html#xmlSchemaNewStringValue">xmlSchemaNewStringValue</a><br />

View File

@ -89,7 +89,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlsave.html#xmlSaveTree">xmlSaveTree</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderByteConsumed">xmlTextReaderByteConsumed</a><br />
<a href="html/libxml-xpath.html#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a><br />
</p><h2>Type unsigned long:</h2><p><a href="html/libxml-parser.html#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a><br />
</p><h2>Type unsigned long:</h2><p><a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-parser.html#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a><br />
<a href="html/libxml-xmlschemastypes.html#xmlSchemaGetFacetValueAsULong">xmlSchemaGetFacetValueAsULong</a><br />
</p><h2>Type void *:</h2><p><a href="html/libxml-catalog.html#xmlCatalogAddLocal">xmlCatalogAddLocal</a><br />
<a href="html/libxml-xmlIO.html#xmlFileOpen">xmlFileOpen</a><br />
@ -363,7 +364,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlDocCopyNodeList">xmlDocCopyNodeList</a><br />
<a href="html/libxml-tree.html#xmlDocGetRootElement">xmlDocGetRootElement</a><br />
<a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlGetLastChild">xmlGetLastChild</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<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#xmlNewChild">xmlNewChild</a><br />
@ -383,6 +386,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNewText">xmlNewText</a><br />
<a href="html/libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a><br />
<a href="html/libxml-tree.html#xmlNewTextLen">xmlNewTextLen</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-tree.html#xmlReplaceNode">xmlReplaceNode</a><br />
<a href="html/libxml-tree.html#xmlStringGetNodeList">xmlStringGetNodeList</a><br />
<a href="html/libxml-tree.html#xmlStringLenGetNodeList">xmlStringLenGetNodeList</a><br />

View File

@ -1382,6 +1382,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlBufferWriteChar">xmlBufferWriteChar</a><br />
<a href="html/libxml-tree.html#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a><br />
<a href="html/libxml-tree.html#xmlBuildQName">xmlBuildQName</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlChildrenNode">xmlChildrenNode</a><br />
<a href="html/libxml-tree.html#xmlCopyDoc">xmlCopyDoc</a><br />
<a href="html/libxml-tree.html#xmlCopyDtd">xmlCopyDtd</a><br />
@ -1429,6 +1430,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a><br />
<a href="html/libxml-tree.html#xmlEnumeration">xmlEnumeration</a><br />
<a href="html/libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlFreeDoc">xmlFreeDoc</a><br />
<a href="html/libxml-tree.html#xmlFreeDtd">xmlFreeDtd</a><br />
<a href="html/libxml-tree.html#xmlFreeNode">xmlFreeNode</a><br />
@ -1454,6 +1456,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlIDPtr">xmlIDPtr</a><br />
<a href="html/libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a><br />
<a href="html/libxml-tree.html#xmlIsXHTML">xmlIsXHTML</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<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#xmlNewChild">xmlNewChild</a><br />
@ -1481,6 +1484,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNewText">xmlNewText</a><br />
<a href="html/libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a><br />
<a href="html/libxml-tree.html#xmlNewTextLen">xmlNewTextLen</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlNode">xmlNode</a><br />
<a href="html/libxml-tree.html#xmlNodeAddContent">xmlNodeAddContent</a><br />
<a href="html/libxml-tree.html#xmlNodeAddContentLen">xmlNodeAddContentLen</a><br />
@ -1514,6 +1518,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlParserInputBuffer">xmlParserInputBuffer</a><br />
<a href="html/libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a><br />
<a href="html/libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a><br />
<a href="html/libxml-tree.html#xmlRef">xmlRef</a><br />
<a href="html/libxml-tree.html#xmlRefPtr">xmlRefPtr</a><br />

View File

@ -1437,6 +1437,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlAddPrevSibling">xmlAddPrevSibling</a><br />
<a href="html/libxml-tree.html#xmlAddSibling">xmlAddSibling</a><br />
<a href="html/libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlCopyProp">xmlCopyProp</a><br />
<a href="html/libxml-tree.html#xmlCopyPropList">xmlCopyPropList</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapAcquireNsFunction">xmlDOMWrapAcquireNsFunction</a><br />
@ -1451,6 +1452,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
<a href="html/libxml-tree.html#xmlElemDump">xmlElemDump</a><br />
<a href="html/libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-tree.html#xmlFreeNode">xmlFreeNode</a><br />
<a href="html/libxml-tree.html#xmlFreeNodeList">xmlFreeNodeList</a><br />
<a href="html/libxml-tree.html#xmlGetLastChild">xmlGetLastChild</a><br />
@ -1465,6 +1467,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a><br />
<a href="html/libxml-valid.html#xmlIsID">xmlIsID</a><br />
<a href="html/libxml-valid.html#xmlIsRef">xmlIsRef</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-debugXML.html#xmlLsCountNode">xmlLsCountNode</a><br />
<a href="html/libxml-debugXML.html#xmlLsOneNode">xmlLsOneNode</a><br />
<a href="html/libxml-tree.html#xmlNewChild">xmlNewChild</a><br />
@ -1474,6 +1477,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNewProp">xmlNewProp</a><br />
<a href="html/libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a><br />
<a href="html/libxml-xmlwriter.html#xmlNewTextWriterTree">xmlNewTextWriterTree</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-tree.html#xmlNodeAddContent">xmlNodeAddContent</a><br />
<a href="html/libxml-tree.html#xmlNodeAddContentLen">xmlNodeAddContentLen</a><br />
<a href="html/libxml-tree.html#xmlNodeBufGetContent">xmlNodeBufGetContent</a><br />
@ -1494,6 +1498,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a><br />
<a href="html/libxml-parser.html#xmlParseInNodeContext">xmlParseInNodeContext</a><br />
<a href="html/libxml-pattern.html#xmlPatternMatch">xmlPatternMatch</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a><br />
<a href="html/libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a><br />
<a href="html/libxml-relaxng.html#xmlRelaxNGValidateFullElement">xmlRelaxNGValidateFullElement</a><br />

View File

@ -1820,6 +1820,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parserInternals.html#xmlCheckLanguageID">xmlCheckLanguageID</a><br />
<a href="html/libxml-xmlstring.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
<a href="html/libxml-xmlversion.html#xmlCheckVersion">xmlCheckVersion</a><br />
<a href="html/libxml-tree.html#xmlChildElementCount">xmlChildElementCount</a><br />
<a href="html/libxml-tree.html#xmlChildrenNode">xmlChildrenNode</a><br />
<a href="html/libxml-encoding.html#xmlCleanupCharEncodingHandlers">xmlCleanupCharEncodingHandlers</a><br />
<a href="html/libxml-encoding.html#xmlCleanupEncodingAliases">xmlCleanupEncodingAliases</a><br />
@ -1998,6 +1999,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlIO.html#xmlFileOpen">xmlFileOpen</a><br />
<a href="html/libxml-xmlIO.html#xmlFileRead">xmlFileRead</a><br />
<a href="html/libxml-encoding.html#xmlFindCharEncodingHandler">xmlFindCharEncodingHandler</a><br />
<a href="html/libxml-tree.html#xmlFirstElementChild">xmlFirstElementChild</a><br />
<a href="html/libxml-globals.html#xmlFree">xmlFree</a><br />
<a href="html/libxml-valid.html#xmlFreeAttributeTable">xmlFreeAttributeTable</a><br />
<a href="html/libxml-xmlautomata.html#xmlFreeAutomata">xmlFreeAutomata</a><br />
@ -2172,6 +2174,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlIsXHTML">xmlIsXHTML</a><br />
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
<a href="html/libxml-globals.html#xmlKeepBlanksDefaultValue">xmlKeepBlanksDefaultValue</a><br />
<a href="html/libxml-tree.html#xmlLastElementChild">xmlLastElementChild</a><br />
<a href="html/libxml-globals.html#xmlLastError">xmlLastError</a><br />
<a href="html/libxml-parser.html#xmlLineNumbersDefault">xmlLineNumbersDefault</a><br />
<a href="html/libxml-globals.html#xmlLineNumbersDefaultValue">xmlLineNumbersDefaultValue</a><br />
@ -2342,6 +2345,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlwriter.html#xmlNewTextWriterTree">xmlNewTextWriterTree</a><br />
<a href="html/libxml-valid.html#xmlNewValidCtxt">xmlNewValidCtxt</a><br />
<a href="html/libxml-parserInternals.html#xmlNextChar">xmlNextChar</a><br />
<a href="html/libxml-tree.html#xmlNextElementSibling">xmlNextElementSibling</a><br />
<a href="html/libxml-xmlIO.html#xmlNoNetExternalEntityLoader">xmlNoNetExternalEntityLoader</a><br />
<a href="html/libxml-tree.html#xmlNode">xmlNode</a><br />
<a href="html/libxml-tree.html#xmlNodeAddContent">xmlNodeAddContent</a><br />
@ -2519,6 +2523,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-globals.html#xmlPedanticParserDefaultValue">xmlPedanticParserDefaultValue</a><br />
<a href="html/libxml-parserInternals.html#xmlPopInput">xmlPopInput</a><br />
<a href="html/libxml-xmlIO.html#xmlPopInputCallbacks">xmlPopInputCallbacks</a><br />
<a href="html/libxml-tree.html#xmlPreviousElementSibling">xmlPreviousElementSibling</a><br />
<a href="html/libxml-uri.html#xmlPrintURI">xmlPrintURI</a><br />
<a href="html/libxml-parserInternals.html#xmlPushInput">xmlPushInput</a><br />
<a href="html/libxml-threads.html#xmlRMutex">xmlRMutex</a><br />

View File

@ -125,11 +125,12 @@ int <a href="#xmlValidateQName">xmlValidateQName</a> (const <a href="libxml2-xm
int <a href="#xmlBufferAddHead">xmlBufferAddHead</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/> int len);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewPI">xmlNewPI</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content);
void <a href="#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br/> int * doc_txt_len, <br/> const char * txt_encoding, <br/> int format);
int <a href="#xmlUnsetNsProp">xmlUnsetNsProp</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> <a href="libxml2-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
unsigned long <a href="#xmlChildElementCount">xmlChildElementCount</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent);
void <a href="#xmlElemDump">xmlElemDump</a> (FILE * f, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
int <a href="#xmlSaveFormatFileTo">xmlSaveFormatFileTo</a> (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/> const char * encoding, <br/> int format);
<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="#xmlGetIntSubset">xmlGetIntSubset</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
int <a href="#xmlNodeBufGetContent">xmlNodeBufGetContent</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNextElementSibling">xmlNextElementSibling</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
void <a href="#xmlBufferWriteChar">xmlBufferWriteChar</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> const char * string);
void <a href="#xmlBufferFree">xmlBufferFree</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
int <a href="#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a> (<a href="libxml2-tree.html#xmlDOMWrapCtxtPtr">xmlDOMWrapCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> sourceDoc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> * resNode, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> destDoc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> destParent, <br/> int deep, <br/> int options);
@ -159,6 +160,8 @@ int <a href="#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a> (<a href="libxml2-tr
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlGetNodePath">xmlGetNodePath</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
void <a href="#xmlFreePropList">xmlFreePropList</a> (<a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
void <a href="#xmlNodeAddContent">xmlNodeAddContent</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content);
int <a href="#xmlUnsetNsProp">xmlUnsetNsProp</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> <a href="libxml2-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlFirstElementChild">xmlFirstElementChild</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlAddNextSibling">xmlAddNextSibling</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
int <a href="#xmlIsBlankNode">xmlIsBlankNode</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
<a href="libxml2-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="#xmlNewGlobalNs">xmlNewGlobalNs</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * href, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix);
@ -179,6 +182,7 @@ void <a href="#xmlFreeProp">xmlFreeProp</a> (<a href="libxml2-tree.html#xmlAtt
int <a href="#xmlTextConcat">xmlTextConcat</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content, <br/> int len);
int <a href="#xmlNodeGetSpacePreserve">xmlNodeGetSpacePreserve</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
int <a href="#xmlBufferShrink">xmlBufferShrink</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> unsigned int len);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlPreviousElementSibling">xmlPreviousElementSibling</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
void <a href="#xmlNodeSetContentLen">xmlNodeSetContentLen</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content, <br/> int len);
void <a href="#xmlNodeAddContentLen">xmlNodeAddContentLen</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content, <br/> int len);
void <a href="#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * string);
@ -193,6 +197,7 @@ typedef <a href="libxml2-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="#xmlDOMWrapAc
long <a href="#xmlGetLineNo">xmlGetLineNo</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlBufferContent">xmlBufferContent</a> (const <a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
int <a href="#xmlRemoveProp">xmlRemoveProp</a> (<a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlLastElementChild">xmlLastElementChild</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlNodeGetLang">xmlNodeGetLang</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
int <a href="#xmlGetDocCompressMode">xmlGetDocCompressMode</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlGetNsProp">xmlGetNsProp</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * nameSpace);
@ -1002,6 +1007,10 @@ void <a href="#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml2-tree.html#xm
<div class="refsect2" lang="en"><h3><a name="xmlBuildQName"/>xmlBuildQName ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlBuildQName (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ncname, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * memory, <br/> int len)<br/>
</pre><p>Builds the QName @prefix:@ncname in @memory if there is enough space and prefix is not NULL nor empty, otherwise allocate a new string. If prefix is NULL or empty it returns ncname.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ncname</tt></i>:</span></td><td>the Name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>memory</tt></i>:</span></td><td>preallocated memory</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>preallocated memory length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new string which must be freed by the caller if different from @memory and @ncname or NULL in case of error</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlChildElementCount"/>xmlChildElementCount ()</h3><pre class="programlisting">unsigned long xmlChildElementCount (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br/>
</pre><p>Finds the current number of child nodes of that element which are element nodes. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml2-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the count of element child or 0 if not available</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyDoc"/>xmlCopyDoc ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> xmlCopyDoc (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> int recursive)<br/>
</pre><p>Do a copy of the document info. If recursive, the content tree will be copied too as well as DTD, namespaces and entities.</p>
@ -1106,6 +1115,10 @@ void <a href="#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml2-tree.html#xm
<div class="refsect2" lang="en"><h3><a name="xmlElemDump"/>xmlElemDump ()</h3><pre class="programlisting">void xmlElemDump (FILE * f, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br/>
</pre><p>Dump an XML/HTML node, recursive behaviour, children are printed too.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFirstElementChild"/>xmlFirstElementChild ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlFirstElementChild (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br/>
</pre><p>Finds the first child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml2-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first element child or NULL if not available</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeDoc"/>xmlFreeDoc ()</h3><pre class="programlisting">void xmlFreeDoc (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br/>
</pre><p>Free up all the structures used by a document, tree included.</p>
@ -1198,6 +1211,10 @@ void <a href="#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml2-tree.html#xm
<div class="refsect2" lang="en"><h3><a name="xmlIsXHTML"/>xmlIsXHTML ()</h3><pre class="programlisting">int xmlIsXHTML (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * systemID, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * publicID)<br/>
</pre><p>Try to find if the document correspond to an XHTML DTD</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>systemID</tt></i>:</span></td><td>the system identifier</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>the public identifier</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not and -1 in case of error</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlLastElementChild"/>xmlLastElementChild ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlLastElementChild (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br/>
</pre><p>Finds the last child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml2-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last element child or NULL if not available</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlNewCDataBlock"/>xmlNewCDataBlock ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCDataBlock (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content, <br/> int len)<br/>
</pre><p>Creation of a new node containing a CDATA block.</p>
@ -1306,6 +1323,10 @@ void <a href="#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml2-tree.html#xm
<div class="refsect2" lang="en"><h3><a name="xmlNewTextLen"/>xmlNewTextLen ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewTextLen (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content, <br/> int len)<br/>
</pre><p>Creation of a new text node with an extra parameter for the content's length</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlNextElementSibling"/>xmlNextElementSibling ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNextElementSibling (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br/>
</pre><p>Finds the first closest next sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml2-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element sibling or NULL if not available</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlNodeAddContent"/>xmlNodeAddContent ()</h3><pre class="programlisting">void xmlNodeAddContent (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * content)<br/>
</pre><p>Append the extra substring to the node content. NOTE: In contrast to xmlNodeSetContent(), @content is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.</p>
@ -1378,6 +1399,10 @@ void <a href="#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml2-tree.html#xm
<div class="refsect2" lang="en"><h3><a name="xmlNodeSetSpacePreserve"/>xmlNodeSetSpacePreserve ()</h3><pre class="programlisting">void xmlNodeSetSpacePreserve (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/> int val)<br/>
</pre><p>Set (or reset) the space preserving behaviour of a node, i.e. the value of the xml:space attribute.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the xml:space value ("0": default, 1: "preserve")</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlPreviousElementSibling"/>xmlPreviousElementSibling ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlPreviousElementSibling (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br/>
</pre><p>Finds the first closest previous sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml2-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous element sibling or NULL if not available</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlReconciliateNs"/>xmlReconciliateNs ()</h3><pre class="programlisting">int xmlReconciliateNs (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br/>
</pre><p>This function checks that all the namespaces declared within the given tree are properly declared. This is needed for example after Copy or Cut and then paste operations. The subtree may still hold pointers to namespace declarations outside the subtree or invalid/masked. As much as possible the function try to reuse the existing namespaces found in the new environment. If not possible the new namespaces are redeclared on @tree at the top of the given subtree.</p>

View File

@ -2134,6 +2134,7 @@
<function name="xmlCheckLanguageID ()" link="libxml2-parserInternals.html#xmlCheckLanguageID"/>
<function name="xmlCheckUTF8 ()" link="libxml2-xmlstring.html#xmlCheckUTF8"/>
<function name="xmlCheckVersion ()" link="libxml2-xmlversion.html#xmlCheckVersion"/>
<function name="xmlChildElementCount ()" link="libxml2-tree.html#xmlChildElementCount"/>
<function name="xmlCleanupCharEncodingHandlers ()" link="libxml2-encoding.html#xmlCleanupCharEncodingHandlers"/>
<function name="xmlCleanupEncodingAliases ()" link="libxml2-encoding.html#xmlCleanupEncodingAliases"/>
<function name="xmlCleanupGlobals ()" link="libxml2-globals.html#xmlCleanupGlobals"/>
@ -2266,6 +2267,7 @@
<function name="xmlFileOpen ()" link="libxml2-xmlIO.html#xmlFileOpen"/>
<function name="xmlFileRead ()" link="libxml2-xmlIO.html#xmlFileRead"/>
<function name="xmlFindCharEncodingHandler ()" link="libxml2-encoding.html#xmlFindCharEncodingHandler"/>
<function name="xmlFirstElementChild ()" link="libxml2-tree.html#xmlFirstElementChild"/>
<function name="xmlFreeAttributeTable ()" link="libxml2-valid.html#xmlFreeAttributeTable"/>
<function name="xmlFreeAutomata ()" link="libxml2-xmlautomata.html#xmlFreeAutomata"/>
<function name="xmlFreeCatalog ()" link="libxml2-catalog.html#xmlFreeCatalog"/>
@ -2395,6 +2397,7 @@
<function name="xmlIsRef ()" link="libxml2-valid.html#xmlIsRef"/>
<function name="xmlIsXHTML ()" link="libxml2-tree.html#xmlIsXHTML"/>
<function name="xmlKeepBlanksDefault ()" link="libxml2-parser.html#xmlKeepBlanksDefault"/>
<function name="xmlLastElementChild ()" link="libxml2-tree.html#xmlLastElementChild"/>
<function name="xmlLineNumbersDefault ()" link="libxml2-parser.html#xmlLineNumbersDefault"/>
<function name="xmlLinkGetData ()" link="libxml2-list.html#xmlLinkGetData"/>
<function name="xmlListAppend ()" link="libxml2-list.html#xmlListAppend"/>
@ -2544,6 +2547,7 @@
<function name="xmlNewTextWriterTree ()" link="libxml2-xmlwriter.html#xmlNewTextWriterTree"/>
<function name="xmlNewValidCtxt ()" link="libxml2-valid.html#xmlNewValidCtxt"/>
<function name="xmlNextChar ()" link="libxml2-parserInternals.html#xmlNextChar"/>
<function name="xmlNextElementSibling ()" link="libxml2-tree.html#xmlNextElementSibling"/>
<function name="xmlNoNetExternalEntityLoader ()" link="libxml2-xmlIO.html#xmlNoNetExternalEntityLoader"/>
<function name="xmlNodeAddContent ()" link="libxml2-tree.html#xmlNodeAddContent"/>
<function name="xmlNodeAddContentLen ()" link="libxml2-tree.html#xmlNodeAddContentLen"/>
@ -2676,6 +2680,7 @@
<function name="xmlPedanticParserDefault ()" link="libxml2-parser.html#xmlPedanticParserDefault"/>
<function name="xmlPopInput ()" link="libxml2-parserInternals.html#xmlPopInput"/>
<function name="xmlPopInputCallbacks ()" link="libxml2-xmlIO.html#xmlPopInputCallbacks"/>
<function name="xmlPreviousElementSibling ()" link="libxml2-tree.html#xmlPreviousElementSibling"/>
<function name="xmlPrintURI ()" link="libxml2-uri.html#xmlPrintURI"/>
<function name="xmlPushInput ()" link="libxml2-parserInternals.html#xmlPushInput"/>
<function name="xmlRMutexLock ()" link="libxml2-threads.html#xmlRMutexLock"/>

View File

@ -87,6 +87,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting">void <a href="#xmlBufferWriteChar">xmlBufferWriteChar</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br /> const char * string)</pre>
<pre class="programlisting">void <a href="#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * string)</pre>
<pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlBuildQName">xmlBuildQName</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * ncname, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * memory, <br /> int len)</pre>
<pre class="programlisting">unsigned long <a href="#xmlChildElementCount">xmlChildElementCount</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a href="#xmlCopyDoc">xmlCopyDoc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> int recursive)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="#xmlCopyDtd">xmlCopyDtd</a> (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="#xmlCopyNamespace">xmlCopyNamespace</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)</pre>
@ -116,6 +117,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlDocGetRootElement">xmlDocGetRootElement</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlDocSetRootElement">xmlDocSetRootElement</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)</pre>
<pre class="programlisting">void <a href="#xmlElemDump">xmlElemDump</a> (FILE * f, <br /> <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlFirstElementChild">xmlFirstElementChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)</pre>
<pre class="programlisting">void <a href="#xmlFreeDoc">xmlFreeDoc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
<pre class="programlisting">void <a href="#xmlFreeDtd">xmlFreeDtd</a> (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)</pre>
<pre class="programlisting">void <a href="#xmlFreeNode">xmlFreeNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
@ -139,6 +141,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="#xmlHasProp">xmlHasProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)</pre>
<pre class="programlisting">int <a href="#xmlIsBlankNode">xmlIsBlankNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
<pre class="programlisting">int <a href="#xmlIsXHTML">xmlIsXHTML</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * systemID, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * publicID)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlLastElementChild">xmlLastElementChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewCDataBlock">xmlNewCDataBlock</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewCharRef">xmlNewCharRef</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewChild">xmlNewChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br /> <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)</pre>
@ -166,6 +169,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewText">xmlNewText</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewTextChild">xmlNewTextChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br /> <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNewTextLen">xmlNewTextLen</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlNextElementSibling">xmlNextElementSibling</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
<pre class="programlisting">void <a href="#xmlNodeAddContent">xmlNodeAddContent</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)</pre>
<pre class="programlisting">void <a href="#xmlNodeAddContentLen">xmlNodeAddContentLen</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)</pre>
<pre class="programlisting">int <a href="#xmlNodeBufGetContent">xmlNodeBufGetContent</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
@ -184,6 +188,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting">void <a href="#xmlNodeSetLang">xmlNodeSetLang</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * lang)</pre>
<pre class="programlisting">void <a href="#xmlNodeSetName">xmlNodeSetName</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)</pre>
<pre class="programlisting">void <a href="#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> int val)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlPreviousElementSibling">xmlPreviousElementSibling</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
<pre class="programlisting">int <a href="#xmlReconciliateNs">xmlReconciliateNs</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)</pre>
<pre class="programlisting">int <a href="#xmlRemoveProp">xmlRemoveProp</a> (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="#xmlReplaceNode">xmlReplaceNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
@ -681,7 +686,9 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>routine which manage and grows an output buffer. This one writes a quoted or double quoted #xmlChar string, checking first if it holds quote or double-quotes internally</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlBuildQName" id="xmlBuildQName"></a>Function: xmlBuildQName</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlBuildQName (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * ncname, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * memory, <br /> int len)<br />
</pre><p>Builds the QName @prefix:@ncname in @memory if there is enough space and prefix is not NULL nor empty, otherwise allocate a new string. If prefix is NULL or empty it returns ncname.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ncname</tt></i>:</span></td><td>the Name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>memory</tt></i>:</span></td><td>preallocated memory</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>preallocated memory length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new string which must be freed by the caller if different from @memory and @ncname or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCopyDoc" id="xmlCopyDoc"></a>Function: xmlCopyDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> xmlCopyDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> int recursive)<br />
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ncname</tt></i>:</span></td><td>the Name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>memory</tt></i>:</span></td><td>preallocated memory</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>preallocated memory length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new string which must be freed by the caller if different from @memory and @ncname or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlChildElementCount" id="xmlChildElementCount"></a>Function: xmlChildElementCount</h3><pre class="programlisting">unsigned long xmlChildElementCount (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
</pre><p>Finds the current number of child nodes of that element which are element nodes. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the count of element child or 0 if not available</td></tr></tbody></table></div><h3><a name="xmlCopyDoc" id="xmlCopyDoc"></a>Function: xmlCopyDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> xmlCopyDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> int recursive)<br />
</pre><p>Do a copy of the document info. If recursive, the content tree will be copied too as well as DTD, namespaces and entities.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if not zero do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlDocPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlCopyDtd" id="xmlCopyDtd"></a>Function: xmlCopyDtd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlCopyDtd (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
</pre><p>Do a copy of the dtd.</p>
@ -736,7 +743,9 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>Set the root element of the document (doc-&gt;children is a list containing possibly comments, PIs, etc ...).</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found, NULL if root was NULL</td></tr></tbody></table></div><h3><a name="xmlElemDump" id="xmlElemDump"></a>Function: xmlElemDump</h3><pre class="programlisting">void xmlElemDump (FILE * f, <br /> <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
</pre><p>Dump an XML/HTML node, recursive behaviour, children are printed too.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="xmlFreeDoc" id="xmlFreeDoc"></a>Function: xmlFreeDoc</h3><pre class="programlisting">void xmlFreeDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="xmlFirstElementChild" id="xmlFirstElementChild"></a>Function: xmlFirstElementChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlFirstElementChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
</pre><p>Finds the first child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first element child or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlFreeDoc" id="xmlFreeDoc"></a>Function: xmlFreeDoc</h3><pre class="programlisting">void xmlFreeDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
</pre><p>Free up all the structures used by a document, tree included.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>pointer to the document</td></tr></tbody></table></div><h3><a name="xmlFreeDtd" id="xmlFreeDtd"></a>Function: xmlFreeDtd</h3><pre class="programlisting">void xmlFreeDtd (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)<br />
</pre><p>Free a DTD structure.</p>
@ -782,7 +791,9 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>Checks whether this node is an empty or whitespace only (and possibly ignorable) text-node.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 yes, 0 no</td></tr></tbody></table></div><h3><a name="xmlIsXHTML" id="xmlIsXHTML"></a>Function: xmlIsXHTML</h3><pre class="programlisting">int xmlIsXHTML (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * systemID, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * publicID)<br />
</pre><p>Try to find if the document correspond to an XHTML DTD</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>systemID</tt></i>:</span></td><td>the system identifier</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>the public identifier</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNewCDataBlock" id="xmlNewCDataBlock"></a>Function: xmlNewCDataBlock</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCDataBlock (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)<br />
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>systemID</tt></i>:</span></td><td>the system identifier</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>the public identifier</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlLastElementChild" id="xmlLastElementChild"></a>Function: xmlLastElementChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlLastElementChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
</pre><p>Finds the last child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last element child or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNewCDataBlock" id="xmlNewCDataBlock"></a>Function: xmlNewCDataBlock</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCDataBlock (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)<br />
</pre><p>Creation of a new node containing a CDATA block.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the CDATA block content content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the block</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNewCharRef" id="xmlNewCharRef"></a>Function: xmlNewCharRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCharRef (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)<br />
</pre><p>Creation of a new character <a href="libxml-SAX.html#reference">reference</a> node.</p>
@ -836,7 +847,9 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>Creation of a new child element, added at the end of @parent children list. @ns and @content parameters are optional (NULL). If @ns is NULL, the newly created element inherits the namespace of @parent. If @content is non NULL, a child TEXT node will be created containing the string @content. NOTE: Use xmlNewChild() if @content will contain entities that need to be preserved. Use this function, xmlNewTextChild(), if you need to ensure that reserved XML chars that might appear in @content, such as the ampersand, greater-than or less-than signs, are automatically replaced by their XML escaped entity representations.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the child</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content of the child if any.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNewTextLen" id="xmlNewTextLen"></a>Function: xmlNewTextLen</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewTextLen (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)<br />
</pre><p>Creation of a new text node with an extra parameter for the content's length</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeAddContent" id="xmlNodeAddContent"></a>Function: xmlNodeAddContent</h3><pre class="programlisting">void xmlNodeAddContent (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)<br />
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNextElementSibling" id="xmlNextElementSibling"></a>Function: xmlNextElementSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNextElementSibling (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
</pre><p>Finds the first closest next sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element sibling or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNodeAddContent" id="xmlNodeAddContent"></a>Function: xmlNodeAddContent</h3><pre class="programlisting">void xmlNodeAddContent (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content)<br />
</pre><p>Append the extra substring to the node content. NOTE: In contrast to xmlNodeSetContent(), @content is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>extra content</td></tr></tbody></table></div><h3><a name="xmlNodeAddContentLen" id="xmlNodeAddContentLen"></a>Function: xmlNodeAddContentLen</h3><pre class="programlisting">void xmlNodeAddContentLen (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * content, <br /> int len)<br />
</pre><p>Append the extra substring to the node content. NOTE: In contrast to xmlNodeSetContentLen(), @content is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.</p>
@ -872,7 +885,9 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>Set (or reset) the name of a node.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the new tag name</td></tr></tbody></table></div><h3><a name="xmlNodeSetSpacePreserve" id="xmlNodeSetSpacePreserve"></a>Function: xmlNodeSetSpacePreserve</h3><pre class="programlisting">void xmlNodeSetSpacePreserve (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br /> int val)<br />
</pre><p>Set (or reset) the space preserving behaviour of a node, i.e. the value of the xml:space attribute.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the xml:space value ("0": default, 1: "preserve")</td></tr></tbody></table></div><h3><a name="xmlReconciliateNs" id="xmlReconciliateNs"></a>Function: xmlReconciliateNs</h3><pre class="programlisting">int xmlReconciliateNs (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the xml:space value ("0": default, 1: "preserve")</td></tr></tbody></table></div><h3><a name="xmlPreviousElementSibling" id="xmlPreviousElementSibling"></a>Function: xmlPreviousElementSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlPreviousElementSibling (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
</pre><p>Finds the first closest previous sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don't have back <a href="libxml-SAX.html#reference">reference</a> from entities content to entities references.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous element sibling or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlReconciliateNs" id="xmlReconciliateNs"></a>Function: xmlReconciliateNs</h3><pre class="programlisting">int xmlReconciliateNs (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
</pre><p>This function checks that all the namespaces declared within the given tree are properly declared. This is needed for example after Copy or Cut and then paste operations. The subtree may still hold pointers to namespace declarations outside the subtree or invalid/masked. As much as possible the function try to reuse the existing namespaces found in the new environment. If not possible the new namespaces are redeclared on @tree at the top of the given subtree.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node defining the subtree to reconciliate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of namespace declarations created or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlRemoveProp" id="xmlRemoveProp"></a>Function: xmlRemoveProp</h3><pre class="programlisting">int xmlRemoveProp (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
</pre><p>Unlink and free one attribute, all the content is freed too Note this doesn't work for namespace definition attributes</p>

View File

@ -1543,11 +1543,12 @@
<exports symbol='xmlBufferAddHead' type='function'/>
<exports symbol='xmlNewPI' type='function'/>
<exports symbol='xmlDocDumpFormatMemoryEnc' type='function'/>
<exports symbol='xmlUnsetNsProp' type='function'/>
<exports symbol='xmlChildElementCount' type='function'/>
<exports symbol='xmlElemDump' type='function'/>
<exports symbol='xmlSaveFormatFileTo' type='function'/>
<exports symbol='xmlGetIntSubset' type='function'/>
<exports symbol='xmlNodeBufGetContent' type='function'/>
<exports symbol='xmlNextElementSibling' type='function'/>
<exports symbol='xmlBufferWriteChar' type='function'/>
<exports symbol='xmlBufferFree' type='function'/>
<exports symbol='xmlDOMWrapCloneNode' type='function'/>
@ -1577,6 +1578,8 @@
<exports symbol='xmlGetNodePath' type='function'/>
<exports symbol='xmlFreePropList' type='function'/>
<exports symbol='xmlNodeAddContent' type='function'/>
<exports symbol='xmlUnsetNsProp' type='function'/>
<exports symbol='xmlFirstElementChild' type='function'/>
<exports symbol='xmlAddNextSibling' type='function'/>
<exports symbol='xmlIsBlankNode' type='function'/>
<exports symbol='xmlNewGlobalNs' type='function'/>
@ -1597,6 +1600,7 @@
<exports symbol='xmlTextConcat' type='function'/>
<exports symbol='xmlNodeGetSpacePreserve' type='function'/>
<exports symbol='xmlBufferShrink' type='function'/>
<exports symbol='xmlPreviousElementSibling' type='function'/>
<exports symbol='xmlNodeSetContentLen' type='function'/>
<exports symbol='xmlNodeAddContentLen' type='function'/>
<exports symbol='xmlBufferWriteQuotedString' type='function'/>
@ -1611,6 +1615,7 @@
<exports symbol='xmlGetLineNo' type='function'/>
<exports symbol='xmlBufferContent' type='function'/>
<exports symbol='xmlRemoveProp' type='function'/>
<exports symbol='xmlLastElementChild' type='function'/>
<exports symbol='xmlNodeGetLang' type='function'/>
<exports symbol='xmlGetDocCompressMode' type='function'/>
<exports symbol='xmlGetNsProp' type='function'/>
@ -8824,6 +8829,12 @@ Could we use @subtypes for this?'/>
<return type='void'/>
<arg name='version' type='int' info='the include version number'/>
</function>
<function name='xmlChildElementCount' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED)</cond>
<info>Finds the current number of child nodes of that element which are element nodes. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don&apos;t have back reference from entities content to entities references.</info>
<return type='unsigned long' info='the count of element child or 0 if not available'/>
<arg name='parent' type='xmlNodePtr' info='the parent node'/>
</function>
<function name='xmlCleanupCharEncodingHandlers' file='encoding' module='encoding'>
<info>Cleanup the memory allocated for the char encoding support, it unregisters all the encoding handlers and the aliases.</info>
<return type='void'/>
@ -9718,6 +9729,12 @@ Could we use @subtypes for this?'/>
<return type='xmlCharEncodingHandlerPtr' info='the handler or NULL if not found'/>
<arg name='name' type='const char *' info='a string describing the char encoding.'/>
</function>
<function name='xmlFirstElementChild' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED)</cond>
<info>Finds the first child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don&apos;t have back reference from entities content to entities references.</info>
<return type='xmlNodePtr' info='the first element child or NULL if not available'/>
<arg name='parent' type='xmlNodePtr' info='the parent node'/>
</function>
<function name='xmlFreeAttributeTable' file='valid' module='valid'>
<info>Deallocate the memory used by an entities hash table.</info>
<return type='void'/>
@ -10550,6 +10567,12 @@ Could we use @subtypes for this?'/>
<return type='int' info='the last value for 0 for no substitution, 1 for substitution.'/>
<arg name='val' type='int' info='int 0 or 1'/>
</function>
<function name='xmlLastElementChild' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED)</cond>
<info>Finds the last child node of that element which is a Element node Note the handling of entities references is different than in the W3C DOM element traversal spec since we don&apos;t have back reference from entities content to entities references.</info>
<return type='xmlNodePtr' info='the last element child or NULL if not available'/>
<arg name='parent' type='xmlNodePtr' info='the parent node'/>
</function>
<function name='xmlLineNumbersDefault' file='parser' module='parserInternals'>
<info>Set and return the previous value for enabling line numbers in elements contents. This may break on old application and is turned off by default.</info>
<return type='int' info='the last value for 0 for no substitution, 1 for substitution.'/>
@ -11515,6 +11538,12 @@ Could we use @subtypes for this?'/>
<return type='void'/>
<arg name='ctxt' type='xmlParserCtxtPtr' info='the XML parser context'/>
</function>
<function name='xmlNextElementSibling' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED)</cond>
<info>Finds the first closest next sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don&apos;t have back reference from entities content to entities references.</info>
<return type='xmlNodePtr' info='the next element sibling or NULL if not available'/>
<arg name='node' type='xmlNodePtr' info='the current node'/>
</function>
<function name='xmlNoNetExternalEntityLoader' file='xmlIO' module='xmlIO'>
<info>A specific entity loader disabling network accesses, though still allowing local catalog accesses for resolution.</info>
<return type='xmlParserInputPtr' info='a new allocated xmlParserInputPtr, or NULL.'/>
@ -12375,6 +12404,12 @@ Could we use @subtypes for this?'/>
<info>Clear the top input callback from the input stack. this includes the compiled-in I/O.</info>
<return type='int' info='the number of input callback registered or -1 in case of error.'/>
</function>
<function name='xmlPreviousElementSibling' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED)</cond>
<info>Finds the first closest previous sibling of the node which is an element node. Note the handling of entities references is different than in the W3C DOM element traversal spec since we don&apos;t have back reference from entities content to entities references.</info>
<return type='xmlNodePtr' info='the previous element sibling or NULL if not available'/>
<arg name='node' type='xmlNodePtr' info='the current node'/>
</function>
<function name='xmlPrintURI' file='uri' module='uri'>
<info>Prints the URI in the stream @stream.</info>
<return type='void'/>

View File

@ -1814,6 +1814,7 @@
<reference name='xmlCheckLanguageID' href='html/libxml-parserInternals.html#xmlCheckLanguageID'/>
<reference name='xmlCheckUTF8' href='html/libxml-xmlstring.html#xmlCheckUTF8'/>
<reference name='xmlCheckVersion' href='html/libxml-xmlversion.html#xmlCheckVersion'/>
<reference name='xmlChildElementCount' href='html/libxml-tree.html#xmlChildElementCount'/>
<reference name='xmlChildrenNode' href='html/libxml-tree.html#xmlChildrenNode'/>
<reference name='xmlCleanupCharEncodingHandlers' href='html/libxml-encoding.html#xmlCleanupCharEncodingHandlers'/>
<reference name='xmlCleanupEncodingAliases' href='html/libxml-encoding.html#xmlCleanupEncodingAliases'/>
@ -1992,6 +1993,7 @@
<reference name='xmlFileOpen' href='html/libxml-xmlIO.html#xmlFileOpen'/>
<reference name='xmlFileRead' href='html/libxml-xmlIO.html#xmlFileRead'/>
<reference name='xmlFindCharEncodingHandler' href='html/libxml-encoding.html#xmlFindCharEncodingHandler'/>
<reference name='xmlFirstElementChild' href='html/libxml-tree.html#xmlFirstElementChild'/>
<reference name='xmlFree' href='html/libxml-globals.html#xmlFree'/>
<reference name='xmlFreeAttributeTable' href='html/libxml-valid.html#xmlFreeAttributeTable'/>
<reference name='xmlFreeAutomata' href='html/libxml-xmlautomata.html#xmlFreeAutomata'/>
@ -2166,6 +2168,7 @@
<reference name='xmlIsXHTML' href='html/libxml-tree.html#xmlIsXHTML'/>
<reference name='xmlKeepBlanksDefault' href='html/libxml-parser.html#xmlKeepBlanksDefault'/>
<reference name='xmlKeepBlanksDefaultValue' href='html/libxml-globals.html#xmlKeepBlanksDefaultValue'/>
<reference name='xmlLastElementChild' href='html/libxml-tree.html#xmlLastElementChild'/>
<reference name='xmlLastError' href='html/libxml-globals.html#xmlLastError'/>
<reference name='xmlLineNumbersDefault' href='html/libxml-parser.html#xmlLineNumbersDefault'/>
<reference name='xmlLineNumbersDefaultValue' href='html/libxml-globals.html#xmlLineNumbersDefaultValue'/>
@ -2336,6 +2339,7 @@
<reference name='xmlNewTextWriterTree' href='html/libxml-xmlwriter.html#xmlNewTextWriterTree'/>
<reference name='xmlNewValidCtxt' href='html/libxml-valid.html#xmlNewValidCtxt'/>
<reference name='xmlNextChar' href='html/libxml-parserInternals.html#xmlNextChar'/>
<reference name='xmlNextElementSibling' href='html/libxml-tree.html#xmlNextElementSibling'/>
<reference name='xmlNoNetExternalEntityLoader' href='html/libxml-xmlIO.html#xmlNoNetExternalEntityLoader'/>
<reference name='xmlNode' href='html/libxml-tree.html#xmlNode'/>
<reference name='xmlNodeAddContent' href='html/libxml-tree.html#xmlNodeAddContent'/>
@ -2513,6 +2517,7 @@
<reference name='xmlPedanticParserDefaultValue' href='html/libxml-globals.html#xmlPedanticParserDefaultValue'/>
<reference name='xmlPopInput' href='html/libxml-parserInternals.html#xmlPopInput'/>
<reference name='xmlPopInputCallbacks' href='html/libxml-xmlIO.html#xmlPopInputCallbacks'/>
<reference name='xmlPreviousElementSibling' href='html/libxml-tree.html#xmlPreviousElementSibling'/>
<reference name='xmlPrintURI' href='html/libxml-uri.html#xmlPrintURI'/>
<reference name='xmlPushInput' href='html/libxml-parserInternals.html#xmlPushInput'/>
<reference name='xmlRMutex' href='html/libxml-threads.html#xmlRMutex'/>
@ -5390,6 +5395,7 @@
<ref name='xmlCheckLanguageID'/>
<ref name='xmlCheckUTF8'/>
<ref name='xmlCheckVersion'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlChildrenNode'/>
<ref name='xmlCleanupCharEncodingHandlers'/>
<ref name='xmlCleanupEncodingAliases'/>
@ -5568,6 +5574,7 @@
<ref name='xmlFileOpen'/>
<ref name='xmlFileRead'/>
<ref name='xmlFindCharEncodingHandler'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlFree'/>
<ref name='xmlFreeAttributeTable'/>
<ref name='xmlFreeAutomata'/>
@ -5742,6 +5749,7 @@
<ref name='xmlIsXHTML'/>
<ref name='xmlKeepBlanksDefault'/>
<ref name='xmlKeepBlanksDefaultValue'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlLastError'/>
<ref name='xmlLineNumbersDefault'/>
<ref name='xmlLineNumbersDefaultValue'/>
@ -5912,6 +5920,7 @@
<ref name='xmlNewTextWriterTree'/>
<ref name='xmlNewValidCtxt'/>
<ref name='xmlNextChar'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlNoNetExternalEntityLoader'/>
<ref name='xmlNode'/>
<ref name='xmlNodeAddContent'/>
@ -6089,6 +6098,7 @@
<ref name='xmlPedanticParserDefaultValue'/>
<ref name='xmlPopInput'/>
<ref name='xmlPopInputCallbacks'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlPrintURI'/>
<ref name='xmlPushInput'/>
<ref name='xmlRMutex'/>
@ -7200,6 +7210,7 @@
<ref name='xmlXPathOrderDocElems'/>
</type>
<type name='unsigned long'>
<ref name='xmlChildElementCount'/>
<ref name='xmlParserFindNodeInfoIndex'/>
<ref name='xmlSchemaGetFacetValueAsULong'/>
</type>
@ -7558,7 +7569,9 @@
<ref name='xmlDocCopyNodeList'/>
<ref name='xmlDocGetRootElement'/>
<ref name='xmlDocSetRootElement'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlGetLastChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNewCDataBlock'/>
<ref name='xmlNewCharRef'/>
<ref name='xmlNewChild'/>
@ -7578,6 +7591,8 @@
<ref name='xmlNewText'/>
<ref name='xmlNewTextChild'/>
<ref name='xmlNewTextLen'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlReplaceNode'/>
<ref name='xmlStringGetNodeList'/>
<ref name='xmlStringLenGetNodeList'/>
@ -9527,6 +9542,7 @@
<ref name='xmlAddPrevSibling'/>
<ref name='xmlAddSibling'/>
<ref name='xmlC14NIsVisibleCallback'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlCopyProp'/>
<ref name='xmlCopyPropList'/>
<ref name='xmlDOMWrapAcquireNsFunction'/>
@ -9541,6 +9557,7 @@
<ref name='xmlDocSetRootElement'/>
<ref name='xmlElemDump'/>
<ref name='xmlEntityReferenceFunc'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlFreeNode'/>
<ref name='xmlFreeNodeList'/>
<ref name='xmlGetLastChild'/>
@ -9555,6 +9572,7 @@
<ref name='xmlIsBlankNode'/>
<ref name='xmlIsID'/>
<ref name='xmlIsRef'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlLsCountNode'/>
<ref name='xmlLsOneNode'/>
<ref name='xmlNewChild'/>
@ -9564,6 +9582,7 @@
<ref name='xmlNewProp'/>
<ref name='xmlNewTextChild'/>
<ref name='xmlNewTextWriterTree'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlNodeAddContent'/>
<ref name='xmlNodeAddContentLen'/>
<ref name='xmlNodeBufGetContent'/>
@ -9584,6 +9603,7 @@
<ref name='xmlNodeSetSpacePreserve'/>
<ref name='xmlParseInNodeContext'/>
<ref name='xmlPatternMatch'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlReconciliateNs'/>
<ref name='xmlRegisterNodeFunc'/>
<ref name='xmlRelaxNGValidateFullElement'/>
@ -11979,6 +11999,7 @@
<ref name='xmlBufferWriteChar'/>
<ref name='xmlBufferWriteQuotedString'/>
<ref name='xmlBuildQName'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlChildrenNode'/>
<ref name='xmlCopyDoc'/>
<ref name='xmlCopyDtd'/>
@ -12026,6 +12047,7 @@
<ref name='xmlEntityPtr'/>
<ref name='xmlEnumeration'/>
<ref name='xmlEnumerationPtr'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlFreeDoc'/>
<ref name='xmlFreeDtd'/>
<ref name='xmlFreeNode'/>
@ -12051,6 +12073,7 @@
<ref name='xmlIDPtr'/>
<ref name='xmlIsBlankNode'/>
<ref name='xmlIsXHTML'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNewCDataBlock'/>
<ref name='xmlNewCharRef'/>
<ref name='xmlNewChild'/>
@ -12078,6 +12101,7 @@
<ref name='xmlNewText'/>
<ref name='xmlNewTextChild'/>
<ref name='xmlNewTextLen'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlNode'/>
<ref name='xmlNodeAddContent'/>
<ref name='xmlNodeAddContentLen'/>
@ -12111,6 +12135,7 @@
<ref name='xmlParserInputBuffer'/>
<ref name='xmlParserInputBufferPtr'/>
<ref name='xmlParserInputPtr'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlReconciliateNs'/>
<ref name='xmlRef'/>
<ref name='xmlRefPtr'/>
@ -15075,36 +15100,6 @@
<word name='DOCTYPE'>
<ref name='xmlParseDocTypeDecl'/>
</word>
<word name='DOM'>
<ref name='LIBXML_TREE_ENABLED'/>
<ref name='_xmlParserCtxt'/>
<ref name='attribute'/>
<ref name='attributeSAXFunc'/>
<ref name='docbSAXParseDoc'/>
<ref name='docbSAXParseFile'/>
<ref name='htmlSAXParseDoc'/>
<ref name='htmlSAXParseFile'/>
<ref name='ignorableWhitespace'/>
<ref name='ignorableWhitespaceSAXFunc'/>
<ref name='resolveEntity'/>
<ref name='resolveEntitySAXFunc'/>
<ref name='xmlDOMWrapAcquireNsFunction'/>
<ref name='xmlDOMWrapReconcileNamespaces'/>
<ref name='xmlDOMWrapRemoveNode'/>
<ref name='xmlDocDumpFormatMemoryEnc'/>
<ref name='xmlDocDumpMemoryEnc'/>
<ref name='xmlKeepBlanksDefault'/>
<ref name='xmlSAX2IgnorableWhitespace'/>
<ref name='xmlSAX2ResolveEntity'/>
<ref name='xmlSAXParseDoc'/>
<ref name='xmlSAXParseEntity'/>
<ref name='xmlSAXParseFile'/>
<ref name='xmlSAXParseFileWithData'/>
<ref name='xmlSAXParseMemory'/>
<ref name='xmlSAXParseMemoryWithData'/>
<ref name='xmlXPathNodeSetGetLength'/>
<ref name='xmlXPathNodeSetItem'/>
</word>
<word name='DOM-wrapper'>
<ref name='xmlDOMWrapFreeCtxt'/>
<ref name='xmlDOMWrapNewCtxt'/>
@ -15368,6 +15363,8 @@
<ref name='_xmlElement'/>
<ref name='_xmlElementContent'/>
<ref name='htmlNodeStatus'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlParseAttributeType'/>
<ref name='xmlParseDocTypeDecl'/>
<ref name='xmlParseElement'/>
@ -15659,7 +15656,12 @@
<ref name='xmlParserFindNodeInfoIndex'/>
</word>
<word name='Finds'>
<ref name='xmlChildElementCount'/>
<ref name='xmlExpIsNillable'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
</word>
<word name='First'>
<ref name='XML_SCHEMAS_TYPE_FIXUP_1'/>
@ -18130,6 +18132,11 @@
</letter>
<letter name='W'>
<word name='W3C'>
<ref name='xmlChildElementCount'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlTextReaderSchemaValidate'/>
<ref name='xmlTextReaderSchemaValidateCtxt'/>
</word>
@ -19308,10 +19315,15 @@
<chunk name='chunk11'>
<letter name='b'>
<word name='back'>
<ref name='xmlChildElementCount'/>
<ref name='xmlEntityReferenceFunc'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlKeepBlanksDefault'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNanoFTPGet'/>
<ref name='xmlNanoFTPList'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlRelaxNGDump'/>
<ref name='xmlSetEntityReferenceFunc'/>
</word>
@ -20059,6 +20071,8 @@
<ref name='xmlNanoHTTPSave'/>
</word>
<word name='closest'>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlXPathCeilingFunction'/>
<ref name='xmlXPathFloorFunction'/>
<ref name='xmlXPathRoundFunction'/>
@ -20776,6 +20790,7 @@
<word name='count'>
<ref name='_xmlEntity'/>
<ref name='ftpListCallback'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlExpRef'/>
<ref name='xmlLsCountNode'/>
<ref name='xmlSaveDoc'/>
@ -21396,7 +21411,12 @@
<ref name='xmlACatalogAdd'/>
<ref name='xmlBuildQName'/>
<ref name='xmlCatalogAdd'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlNodeGetBase'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlStrEqual'/>
<ref name='xmlStrQEqual'/>
</word>
@ -21594,11 +21614,16 @@
<word name='don'>
<ref name='XML_SCHEMAS_ANY_LAX'/>
<ref name='xlinkIsLink'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlCreatePushParserCtxt'/>
<ref name='xmlDOMWrapCloneNode'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNewDocNode'/>
<ref name='xmlNewDocNodeEatName'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlParseStartTag'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlRegExecErrInfo'/>
<ref name='xmlRegExecNextValues'/>
<ref name='xmlSearchNs'/>
@ -23130,15 +23155,20 @@
<ref name='attribute'/>
<ref name='attributeSAXFunc'/>
<ref name='htmlHandleOmittedElem'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlHandleEntity'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNamespaceParseNCName'/>
<ref name='xmlNamespaceParseNSDef'/>
<ref name='xmlNamespaceParseQName'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlNodeListGetRawString'/>
<ref name='xmlOutputBufferCreateFilenameDefault'/>
<ref name='xmlParserHandlePEReference'/>
<ref name='xmlParserHandleReference'/>
<ref name='xmlParserInputBufferCreateFilenameDefault'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlRegNewExecCtxt'/>
<ref name='xmlRegisterInputCallbacks'/>
<ref name='xmlRegisterOutputCallbacks'/>
@ -26371,6 +26401,7 @@
<ref name='xmlKeepBlanksDefault'/>
<ref name='xmlLineNumbersDefault'/>
<ref name='xmlPedanticParserDefault'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlPushInput'/>
<ref name='xmlSAXDefaultVersion'/>
<ref name='xmlSubstituteEntitiesDefault'/>
@ -27993,6 +28024,8 @@
<ref name='_xmlNode'/>
<ref name='xmlAddNextSibling'/>
<ref name='xmlAddPrevSibling'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlSchemaValueAppend'/>
<ref name='xmlSchemaValueGetNext'/>
<ref name='xmlXPathNextPrecedingSibling'/>
@ -28062,10 +28095,15 @@
<word name='since'>
<ref name='XML_SCHEMAS_TYPE_VARIETY_ABSENT'/>
<ref name='xmlBuildRelativeURI'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlDOMWrapAdoptNode'/>
<ref name='xmlDOMWrapCloneNode'/>
<ref name='xmlDOMWrapReconcileNamespaces'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlParseExternalID'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlRelaxNGNewDocParserCtxt'/>
</word>
<word name='single'>
@ -28232,7 +28270,12 @@
</word>
<word name='spec'>
<ref name='xmlCatalogSetDefaultPrefer'/>
<ref name='xmlChildElementCount'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlParseComment'/>
<ref name='xmlPreviousElementSibling'/>
</word>
<word name='spec:'>
<ref name='IS_BASECHAR'/>
@ -29013,27 +29056,6 @@
<word name='textDecl?'>
<ref name='xmlParseExternalSubset'/>
</word>
<word name='than'>
<ref name='xmlCheckUTF8'/>
<ref name='xmlExpExpDerive'/>
<ref name='xmlExpGetLanguage'/>
<ref name='xmlExpGetStart'/>
<ref name='xmlNewNs'/>
<ref name='xmlParseAttribute'/>
<ref name='xmlParseAttributeType'/>
<ref name='xmlParseElementDecl'/>
<ref name='xmlParseElementMixedContentDecl'/>
<ref name='xmlParseSDDecl'/>
<ref name='xmlParseStartTag'/>
<ref name='xmlSetGenericErrorFunc'/>
<ref name='xmlStrEqual'/>
<ref name='xmlTextReaderIsNamespaceDecl'/>
<ref name='xmlXPathCeilingFunction'/>
<ref name='xmlXPathCompareValues'/>
<ref name='xmlXPathFloorFunction'/>
<ref name='xmlXPathSubstringFunction'/>
<ref name='xmlXPathTranslateFunction'/>
</word>
<word name='their'>
<ref name='xmlCharEncOutFunc'/>
<ref name='xmlEncodeEntities'/>
@ -29297,6 +29319,11 @@
<ref name='xmlNanoFTPClose'/>
</word>
<word name='traversal'>
<ref name='xmlChildElementCount'/>
<ref name='xmlFirstElementChild'/>
<ref name='xmlLastElementChild'/>
<ref name='xmlNextElementSibling'/>
<ref name='xmlPreviousElementSibling'/>
<ref name='xmlXPathAxisFunc'/>
<ref name='xmlXPathNextAncestor'/>
<ref name='xmlXPathNextAncestorOrSelf'/>

View File

@ -1991,6 +1991,18 @@ extern __typeof (xmlCheckVersion) xmlCheckVersion__internal_alias __attribute((v
#endif
#endif
#if defined(LIBXML_TREE_ENABLED)
#ifdef bottom_tree
#undef xmlChildElementCount
extern __typeof (xmlChildElementCount) xmlChildElementCount __attribute((alias("xmlChildElementCount__internal_alias")));
#else
#ifndef xmlChildElementCount
extern __typeof (xmlChildElementCount) xmlChildElementCount__internal_alias __attribute((visibility("hidden")));
#define xmlChildElementCount xmlChildElementCount__internal_alias
#endif
#endif
#endif
#ifdef bottom_encoding
#undef xmlCleanupCharEncodingHandlers
extern __typeof (xmlCleanupCharEncodingHandlers) xmlCleanupCharEncodingHandlers __attribute((alias("xmlCleanupCharEncodingHandlers__internal_alias")));
@ -3419,6 +3431,18 @@ extern __typeof (xmlFindCharEncodingHandler) xmlFindCharEncodingHandler__interna
#endif
#endif
#if defined(LIBXML_TREE_ENABLED)
#ifdef bottom_tree
#undef xmlFirstElementChild
extern __typeof (xmlFirstElementChild) xmlFirstElementChild __attribute((alias("xmlFirstElementChild__internal_alias")));
#else
#ifndef xmlFirstElementChild
extern __typeof (xmlFirstElementChild) xmlFirstElementChild__internal_alias __attribute((visibility("hidden")));
#define xmlFirstElementChild xmlFirstElementChild__internal_alias
#endif
#endif
#endif
#ifdef bottom_valid
#undef xmlFreeAttributeTable
extern __typeof (xmlFreeAttributeTable) xmlFreeAttributeTable __attribute((alias("xmlFreeAttributeTable__internal_alias")));
@ -4759,6 +4783,18 @@ extern __typeof (xmlKeepBlanksDefault) xmlKeepBlanksDefault__internal_alias __at
#endif
#endif
#if defined(LIBXML_TREE_ENABLED)
#ifdef bottom_tree
#undef xmlLastElementChild
extern __typeof (xmlLastElementChild) xmlLastElementChild __attribute((alias("xmlLastElementChild__internal_alias")));
#else
#ifndef xmlLastElementChild
extern __typeof (xmlLastElementChild) xmlLastElementChild__internal_alias __attribute((visibility("hidden")));
#define xmlLastElementChild xmlLastElementChild__internal_alias
#endif
#endif
#endif
#ifdef bottom_parserInternals
#undef xmlLineNumbersDefault
extern __typeof (xmlLineNumbersDefault) xmlLineNumbersDefault __attribute((alias("xmlLineNumbersDefault__internal_alias")));
@ -5161,6 +5197,16 @@ extern __typeof (xmlMemDisplay) xmlMemDisplay__internal_alias __attribute((visib
#endif
#endif
#ifdef bottom_xmlmemory
#undef xmlMemDisplayLast
extern __typeof (xmlMemDisplayLast) xmlMemDisplayLast __attribute((alias("xmlMemDisplayLast__internal_alias")));
#else
#ifndef xmlMemDisplayLast
extern __typeof (xmlMemDisplayLast) xmlMemDisplayLast__internal_alias __attribute((visibility("hidden")));
#define xmlMemDisplayLast xmlMemDisplayLast__internal_alias
#endif
#endif
#ifdef bottom_xmlmemory
#undef xmlMemFree
extern __typeof (xmlMemFree) xmlMemFree __attribute((alias("xmlMemFree__internal_alias")));
@ -6043,6 +6089,16 @@ extern __typeof (xmlNewElementContent) xmlNewElementContent__internal_alias __at
#endif
#endif
#ifdef bottom_entities
#undef xmlNewEntity
extern __typeof (xmlNewEntity) xmlNewEntity __attribute((alias("xmlNewEntity__internal_alias")));
#else
#ifndef xmlNewEntity
extern __typeof (xmlNewEntity) xmlNewEntity__internal_alias __attribute((visibility("hidden")));
#define xmlNewEntity xmlNewEntity__internal_alias
#endif
#endif
#ifdef bottom_parserInternals
#undef xmlNewEntityInputStream
extern __typeof (xmlNewEntityInputStream) xmlNewEntityInputStream __attribute((alias("xmlNewEntityInputStream__internal_alias")));
@ -6367,6 +6423,18 @@ extern __typeof (xmlNextChar) xmlNextChar__internal_alias __attribute((visibilit
#endif
#endif
#if defined(LIBXML_TREE_ENABLED)
#ifdef bottom_tree
#undef xmlNextElementSibling
extern __typeof (xmlNextElementSibling) xmlNextElementSibling __attribute((alias("xmlNextElementSibling__internal_alias")));
#else
#ifndef xmlNextElementSibling
extern __typeof (xmlNextElementSibling) xmlNextElementSibling__internal_alias __attribute((visibility("hidden")));
#define xmlNextElementSibling xmlNextElementSibling__internal_alias
#endif
#endif
#endif
#ifdef bottom_xmlIO
#undef xmlNoNetExternalEntityLoader
extern __typeof (xmlNoNetExternalEntityLoader) xmlNoNetExternalEntityLoader __attribute((alias("xmlNoNetExternalEntityLoader__internal_alias")));
@ -7769,6 +7837,18 @@ extern __typeof (xmlPopInputCallbacks) xmlPopInputCallbacks__internal_alias __at
#endif
#endif
#if defined(LIBXML_TREE_ENABLED)
#ifdef bottom_tree
#undef xmlPreviousElementSibling
extern __typeof (xmlPreviousElementSibling) xmlPreviousElementSibling __attribute((alias("xmlPreviousElementSibling__internal_alias")));
#else
#ifndef xmlPreviousElementSibling
extern __typeof (xmlPreviousElementSibling) xmlPreviousElementSibling__internal_alias __attribute((visibility("hidden")));
#define xmlPreviousElementSibling xmlPreviousElementSibling__internal_alias
#endif
#endif
#endif
#ifdef bottom_uri
#undef xmlPrintURI
extern __typeof (xmlPrintURI) xmlPrintURI __attribute((alias("xmlPrintURI__internal_alias")));

View File

@ -1225,6 +1225,22 @@ XMLPUBFUN int XMLCALL
int deep,
int options);
#ifdef LIBXML_TREE_ENABLED
/*
* 5 interfaces from DOM ElementTraversal, but different in entities
* traversal.
*/
XMLPUBFUN unsigned long XMLCALL
xmlChildElementCount (xmlNodePtr parent);
XMLPUBFUN xmlNodePtr XMLCALL
xmlNextElementSibling (xmlNodePtr node);
XMLPUBFUN xmlNodePtr XMLCALL
xmlFirstElementChild (xmlNodePtr parent);
XMLPUBFUN xmlNodePtr XMLCALL
xmlLastElementChild (xmlNodePtr parent);
XMLPUBFUN xmlNodePtr XMLCALL
xmlPreviousElementSibling (xmlNodePtr node);
#endif
#ifdef __cplusplus
}
#endif

View File

@ -725,6 +725,10 @@ functions_noexcept = {
"xmlDocSetRootElement": 1,
"xmlNodeGetNs": 1,
"xmlNodeGetNsDefs": 1,
"xmlNextElementSibling": 1,
"xmlPreviousElementSibling": 1,
"xmlFirstElementChild": 1,
"xmlLastElementChild": 1,
}
reference_keepers = {

View File

@ -457,6 +457,7 @@ Class xmlNode(xmlCore)
docCopyNode()
docCopyNodeList()
docSetRootElement()
firstElementChild()
freeNode()
freeNodeList()
getBase()
@ -468,6 +469,7 @@ Class xmlNode(xmlCore)
isBlankNode()
isText()
lastChild()
lastElementChild()
lineNo()
listGetRawString()
listGetString()
@ -477,9 +479,11 @@ Class xmlNode(xmlCore)
newNsPropEatName()
newProp()
newTextChild()
nextElementSibling()
noNsProp()
nodePath()
nsProp()
previousElementSibling()
prop()
reconciliateNs()
replaceNode()

177
testapi.c
View File

@ -19056,6 +19056,40 @@ test_xmlBuildQName(void) {
}
static int
test_xmlChildElementCount(void) {
int test_ret = 0;
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
unsigned long ret_val;
xmlNodePtr parent; /* the parent node */
int n_parent;
for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
mem_base = xmlMemBlocks();
parent = gen_xmlNodePtr(n_parent, 0);
ret_val = xmlChildElementCount(parent);
desret_unsigned_long(ret_val);
call_tests++;
des_xmlNodePtr(n_parent, parent, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlChildElementCount",
xmlMemBlocks() - mem_base);
test_ret++;
printf(" %d", n_parent);
printf("\n");
}
}
function_tests++;
#endif
return(test_ret);
}
static int
test_xmlCopyDoc(void) {
int test_ret = 0;
@ -20170,6 +20204,40 @@ test_xmlElemDump(void) {
}
static int
test_xmlFirstElementChild(void) {
int test_ret = 0;
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
xmlNodePtr ret_val;
xmlNodePtr parent; /* the parent node */
int n_parent;
for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
mem_base = xmlMemBlocks();
parent = gen_xmlNodePtr(n_parent, 0);
ret_val = xmlFirstElementChild(parent);
desret_xmlNodePtr(ret_val);
call_tests++;
des_xmlNodePtr(n_parent, parent, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlFirstElementChild",
xmlMemBlocks() - mem_base);
test_ret++;
printf(" %d", n_parent);
printf("\n");
}
}
function_tests++;
#endif
return(test_ret);
}
static int
test_xmlGetBufferAllocationScheme(void) {
int test_ret = 0;
@ -20672,6 +20740,40 @@ test_xmlIsXHTML(void) {
}
static int
test_xmlLastElementChild(void) {
int test_ret = 0;
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
xmlNodePtr ret_val;
xmlNodePtr parent; /* the parent node */
int n_parent;
for (n_parent = 0;n_parent < gen_nb_xmlNodePtr;n_parent++) {
mem_base = xmlMemBlocks();
parent = gen_xmlNodePtr(n_parent, 0);
ret_val = xmlLastElementChild(parent);
desret_xmlNodePtr(ret_val);
call_tests++;
des_xmlNodePtr(n_parent, parent, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlLastElementChild",
xmlMemBlocks() - mem_base);
test_ret++;
printf(" %d", n_parent);
printf("\n");
}
}
function_tests++;
#endif
return(test_ret);
}
static int
test_xmlNewCDataBlock(void) {
int test_ret = 0;
@ -21831,6 +21933,40 @@ test_xmlNewTextLen(void) {
}
static int
test_xmlNextElementSibling(void) {
int test_ret = 0;
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
xmlNodePtr ret_val;
xmlNodePtr node; /* the current node */
int n_node;
for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
mem_base = xmlMemBlocks();
node = gen_xmlNodePtr(n_node, 0);
ret_val = xmlNextElementSibling(node);
desret_xmlNodePtr(ret_val);
call_tests++;
des_xmlNodePtr(n_node, node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlNextElementSibling",
xmlMemBlocks() - mem_base);
test_ret++;
printf(" %d", n_node);
printf("\n");
}
}
function_tests++;
#endif
return(test_ret);
}
static int
test_xmlNodeAddContent(void) {
int test_ret = 0;
@ -22580,6 +22716,40 @@ test_xmlNodeSetSpacePreserve(void) {
}
static int
test_xmlPreviousElementSibling(void) {
int test_ret = 0;
#if defined(LIBXML_TREE_ENABLED)
int mem_base;
xmlNodePtr ret_val;
xmlNodePtr node; /* the current node */
int n_node;
for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
mem_base = xmlMemBlocks();
node = gen_xmlNodePtr(n_node, 0);
ret_val = xmlPreviousElementSibling(node);
desret_xmlNodePtr(ret_val);
call_tests++;
des_xmlNodePtr(n_node, node, 0);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
printf("Leak of %d blocks found in xmlPreviousElementSibling",
xmlMemBlocks() - mem_base);
test_ret++;
printf(" %d", n_node);
printf("\n");
}
}
function_tests++;
#endif
return(test_ret);
}
static int
test_xmlReconciliateNs(void) {
int test_ret = 0;
@ -23845,7 +24015,7 @@ static int
test_tree(void) {
int test_ret = 0;
if (quiet == 0) printf("Testing tree : 133 of 152 functions ...\n");
if (quiet == 0) printf("Testing tree : 138 of 157 functions ...\n");
test_ret += test_xmlAddChild();
test_ret += test_xmlAddChildList();
test_ret += test_xmlAddNextSibling();
@ -23870,6 +24040,7 @@ test_tree(void) {
test_ret += test_xmlBufferWriteChar();
test_ret += test_xmlBufferWriteQuotedString();
test_ret += test_xmlBuildQName();
test_ret += test_xmlChildElementCount();
test_ret += test_xmlCopyDoc();
test_ret += test_xmlCopyDtd();
test_ret += test_xmlCopyNamespace();
@ -23895,6 +24066,7 @@ test_tree(void) {
test_ret += test_xmlDocGetRootElement();
test_ret += test_xmlDocSetRootElement();
test_ret += test_xmlElemDump();
test_ret += test_xmlFirstElementChild();
test_ret += test_xmlGetBufferAllocationScheme();
test_ret += test_xmlGetCompressMode();
test_ret += test_xmlGetDocCompressMode();
@ -23910,6 +24082,7 @@ test_tree(void) {
test_ret += test_xmlHasProp();
test_ret += test_xmlIsBlankNode();
test_ret += test_xmlIsXHTML();
test_ret += test_xmlLastElementChild();
test_ret += test_xmlNewCDataBlock();
test_ret += test_xmlNewCharRef();
test_ret += test_xmlNewChild();
@ -23936,6 +24109,7 @@ test_tree(void) {
test_ret += test_xmlNewText();
test_ret += test_xmlNewTextChild();
test_ret += test_xmlNewTextLen();
test_ret += test_xmlNextElementSibling();
test_ret += test_xmlNodeAddContent();
test_ret += test_xmlNodeAddContentLen();
test_ret += test_xmlNodeBufGetContent();
@ -23954,6 +24128,7 @@ test_tree(void) {
test_ret += test_xmlNodeSetLang();
test_ret += test_xmlNodeSetName();
test_ret += test_xmlNodeSetSpacePreserve();
test_ret += test_xmlPreviousElementSibling();
test_ret += test_xmlReconciliateNs();
test_ret += test_xmlRemoveProp();
test_ret += test_xmlReplaceNode();

193
tree.c
View File

@ -3367,6 +3367,199 @@ xmlGetLastChild(xmlNodePtr parent) {
return(parent->last);
}
#ifdef LIBXML_TREE_ENABLED
/*
* 5 interfaces from DOM ElementTraversal
*/
/**
* xmlChildElementCount:
* @parent: the parent node
*
* Finds the current number of child nodes of that element which are
* element nodes.
* Note the handling of entities references is different than in
* the W3C DOM element traversal spec since we don't have back reference
* from entities content to entities references.
*
* Returns the count of element child or 0 if not available
*/
unsigned long
xmlChildElementCount(xmlNodePtr parent) {
unsigned long ret = 0;
xmlNodePtr cur = NULL;
if (parent == NULL)
return(0);
switch (parent->type) {
case XML_ELEMENT_NODE:
case XML_ENTITY_NODE:
case XML_DOCUMENT_NODE:
case XML_HTML_DOCUMENT_NODE:
cur = parent->children;
break;
default:
return(0);
}
while (cur != NULL) {
if (cur->type == XML_ELEMENT_NODE)
ret++;
cur = cur->next;
}
return(ret);
}
/**
* xmlFirstElementChild:
* @parent: the parent node
*
* Finds the first child node of that element which is a Element node
* Note the handling of entities references is different than in
* the W3C DOM element traversal spec since we don't have back reference
* from entities content to entities references.
*
* Returns the first element child or NULL if not available
*/
xmlNodePtr
xmlFirstElementChild(xmlNodePtr parent) {
xmlNodePtr cur = NULL;
if (parent == NULL)
return(NULL);
switch (parent->type) {
case XML_ELEMENT_NODE:
case XML_ENTITY_NODE:
case XML_DOCUMENT_NODE:
case XML_HTML_DOCUMENT_NODE:
cur = parent->children;
break;
default:
return(NULL);
}
while (cur != NULL) {
if (cur->type == XML_ELEMENT_NODE)
return(cur);
cur = cur->next;
}
return(NULL);
}
/**
* xmlLastElementChild:
* @parent: the parent node
*
* Finds the last child node of that element which is a Element node
* Note the handling of entities references is different than in
* the W3C DOM element traversal spec since we don't have back reference
* from entities content to entities references.
*
* Returns the last element child or NULL if not available
*/
xmlNodePtr
xmlLastElementChild(xmlNodePtr parent) {
xmlNodePtr cur = NULL;
if (parent == NULL)
return(NULL);
switch (parent->type) {
case XML_ELEMENT_NODE:
case XML_ENTITY_NODE:
case XML_DOCUMENT_NODE:
case XML_HTML_DOCUMENT_NODE:
cur = parent->last;
break;
default:
return(NULL);
}
while (cur != NULL) {
if (cur->type == XML_ELEMENT_NODE)
return(cur);
cur = cur->prev;
}
return(NULL);
}
/**
* xmlPreviousElementSibling:
* @node: the current node
*
* Finds the first closest previous sibling of the node which is an
* element node.
* Note the handling of entities references is different than in
* the W3C DOM element traversal spec since we don't have back reference
* from entities content to entities references.
*
* Returns the previous element sibling or NULL if not available
*/
xmlNodePtr
xmlPreviousElementSibling(xmlNodePtr node) {
if (node == NULL)
return(NULL);
switch (node->type) {
case XML_ELEMENT_NODE:
case XML_TEXT_NODE:
case XML_CDATA_SECTION_NODE:
case XML_ENTITY_REF_NODE:
case XML_ENTITY_NODE:
case XML_PI_NODE:
case XML_COMMENT_NODE:
case XML_XINCLUDE_START:
case XML_XINCLUDE_END:
node = node->prev;
break;
default:
return(NULL);
}
while (node != NULL) {
if (node->type == XML_ELEMENT_NODE)
return(node);
node = node->next;
}
return(NULL);
}
/**
* xmlNextElementSibling:
* @node: the current node
*
* Finds the first closest next sibling of the node which is an
* element node.
* Note the handling of entities references is different than in
* the W3C DOM element traversal spec since we don't have back reference
* from entities content to entities references.
*
* Returns the next element sibling or NULL if not available
*/
xmlNodePtr
xmlNextElementSibling(xmlNodePtr node) {
if (node == NULL)
return(NULL);
switch (node->type) {
case XML_ELEMENT_NODE:
case XML_TEXT_NODE:
case XML_CDATA_SECTION_NODE:
case XML_ENTITY_REF_NODE:
case XML_ENTITY_NODE:
case XML_PI_NODE:
case XML_COMMENT_NODE:
case XML_DTD_NODE:
case XML_XINCLUDE_START:
case XML_XINCLUDE_END:
node = node->next;
break;
default:
return(NULL);
}
while (node != NULL) {
if (node->type == XML_ELEMENT_NODE)
return(node);
node = node->next;
}
return(NULL);
}
#endif /* LIBXML_TREE_ENABLED */
/**
* xmlFreeNodeList:
* @cur: the first node in the list

42
valid.c
View File

@ -3792,27 +3792,13 @@ xmlValidateNotationDecl(xmlValidCtxtPtr ctxt ATTRIBUTE_UNUSED, xmlDocPtr doc ATT
}
/**
* xmlValidateAttributeValue:
* xmlValidateAttributeValueInternal:
* @doc: the document
* @type: an attribute type
* @value: an attribute value
*
* Validate that the given attribute value match the proper production
*
* [ VC: ID ]
* Values of type ID must match the Name production....
*
* [ VC: IDREF ]
* Values of type IDREF must match the Name production, and values
* of type IDREFS must match Names ...
*
* [ VC: Entity Name ]
* Values of type ENTITY must match the Name production, values
* of type ENTITIES must match Names ...
*
* [ VC: Name Token ]
* Values of type NMTOKEN must match the Nmtoken production; values
* of type NMTOKENS must match Nmtokens.
*
* returns 1 if valid or 0 otherwise
*/
@ -3839,6 +3825,30 @@ xmlValidateAttributeValueInternal(xmlDocPtr doc, xmlAttributeType type,
return(1);
}
/**
* xmlValidateAttributeValue:
* @type: an attribute type
* @value: an attribute value
*
* Validate that the given attribute value match the proper production
*
* [ VC: ID ]
* Values of type ID must match the Name production....
*
* [ VC: IDREF ]
* Values of type IDREF must match the Name production, and values
* of type IDREFS must match Names ...
*
* [ VC: Entity Name ]
* Values of type ENTITY must match the Name production, values
* of type ENTITIES must match Names ...
*
* [ VC: Name Token ]
* Values of type NMTOKEN must match the Nmtoken production; values
* of type NMTOKENS must match Nmtokens.
*
* returns 1 if valid or 0 otherwise
*/
int
xmlValidateAttributeValue(xmlAttributeType type, const xmlChar *value) {
return(xmlValidateAttributeValueInternal(NULL, type, value));

View File

@ -660,6 +660,7 @@ xmlCheckHTTPInput
xmlCheckLanguageID
xmlCheckUTF8
xmlCheckVersion
xmlChildElementCount
xmlCleanupCharEncodingHandlers
xmlCleanupEncodingAliases
xmlCleanupGlobals
@ -854,6 +855,7 @@ xmlFileMatch
xmlFileOpen
xmlFileRead
xmlFindCharEncodingHandler
xmlFirstElementChild
xmlFreeAttributeTable
#ifdef LIBXML_AUTOMATA_ENABLED
xmlFreeAutomata
@ -1009,6 +1011,7 @@ xmlIsRef
xmlIsXHTML
#endif
xmlKeepBlanksDefault
xmlLastElementChild
xmlLineNumbersDefault
xmlLinkGetData
xmlListAppend
@ -1064,6 +1067,7 @@ xmlMallocLoc
#endif
xmlMemBlocks
xmlMemDisplay
xmlMemDisplayLast
xmlMemFree
xmlMemGet
xmlMemMalloc
@ -1226,6 +1230,7 @@ xmlNewDocText
xmlNewDocTextLen
xmlNewDtd
xmlNewElementContent
xmlNewEntity
xmlNewEntityInputStream
xmlNewGlobalNs
xmlNewIOInputStream
@ -1256,6 +1261,7 @@ xmlNewTextWriterPushParser
xmlNewTextWriterTree
xmlNewValidCtxt
xmlNextChar
xmlNextElementSibling
xmlNoNetExternalEntityLoader
xmlNodeAddContent
xmlNodeAddContentLen
@ -1390,6 +1396,7 @@ xmlPatterncompile
xmlPedanticParserDefault
xmlPopInput
xmlPopInputCallbacks
xmlPreviousElementSibling
xmlPrintURI
xmlPushInput
xmlRMutexLock