<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.15.0" xml:lang="en-US">
  <compounddef id="tree_8c" kind="file" language="C++">
    <compoundname>tree.c</compoundname>
    <includes local="yes">libxml.h</includes>
    <includes local="no">string.h</includes>
    <includes local="no">stddef.h</includes>
    <includes local="no">limits.h</includes>
    <includes local="no">ctype.h</includes>
    <includes local="no">stdlib.h</includes>
    <includes local="no">zlib.h</includes>
    <includes refid="tree_8h" local="no">libxml/tree.h</includes>
    <includes refid="xmlmemory_8h" local="no">libxml/xmlmemory.h</includes>
    <includes refid="parser_8h" local="no">libxml/parser.h</includes>
    <includes refid="uri_8h" local="no">libxml/uri.h</includes>
    <includes refid="entities_8h" local="no">libxml/entities.h</includes>
    <includes refid="xmlerror_8h" local="no">libxml/xmlerror.h</includes>
    <includes refid="parserInternals_8h" local="no">libxml/parserInternals.h</includes>
    <includes refid="HTMLtree_8h" local="no">libxml/HTMLtree.h</includes>
    <includes local="yes">private/buf.h</includes>
    <includes local="yes">private/entities.h</includes>
    <includes local="yes">private/error.h</includes>
    <includes local="yes">private/memory.h</includes>
    <includes local="yes">private/io.h</includes>
    <includes local="yes">private/parser.h</includes>
    <includes local="yes">private/tree.h</includes>
    <includes refid="hash_8h" local="no">libxml/hash.h</includes>
    <incdepgraph>
      <node id="31">
        <label>libxml/HTMLparser.h</label>
        <link refid="HTMLparser_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="17" relation="include">
        </childnode>
      </node>
      <node id="33">
        <label>libxml/HTMLtree.h</label>
        <link refid="HTMLtree_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
        <childnode refid="31" relation="include">
        </childnode>
      </node>
      <node id="27">
        <label>libxml/SAX2.h</label>
        <link refid="SAX2_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="17" relation="include">
        </childnode>
      </node>
      <node id="32">
        <label>libxml/chvalid.h</label>
        <link refid="chvalid_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="18">
        <label>libxml/dict.h</label>
        <link refid="dict_8h"/>
        <childnode refid="4" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="25">
        <label>libxml/encoding.h</label>
        <link refid="encoding_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="21" relation="include">
        </childnode>
      </node>
      <node id="24">
        <label>libxml/entities.h</label>
        <link refid="entities_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
      </node>
      <node id="19">
        <label>libxml/hash.h</label>
        <link refid="hash_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="18" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="22">
        <label>libxml/list.h</label>
        <link refid="list_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
      </node>
      <node id="17">
        <label>libxml/parser.h</label>
        <link refid="parser_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
        <childnode refid="18" relation="include">
        </childnode>
        <childnode refid="19" relation="include">
        </childnode>
        <childnode refid="20" relation="include">
        </childnode>
        <childnode refid="24" relation="include">
        </childnode>
        <childnode refid="21" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
        <childnode refid="15" relation="include">
        </childnode>
        <childnode refid="25" relation="include">
        </childnode>
        <childnode refid="26" relation="include">
        </childnode>
        <childnode refid="27" relation="include">
        </childnode>
        <childnode refid="28" relation="include">
        </childnode>
      </node>
      <node id="30">
        <label>libxml/parserInternals.h</label>
        <link refid="parserInternals_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="17" relation="include">
        </childnode>
        <childnode refid="31" relation="include">
        </childnode>
        <childnode refid="32" relation="include">
        </childnode>
        <childnode refid="27" relation="include">
        </childnode>
      </node>
      <node id="28">
        <label>libxml/threads.h</label>
        <link refid="threads_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
      </node>
      <node id="9">
        <label>libxml/tree.h</label>
        <link refid="tree_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="5" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
        <childnode refid="15" relation="include">
        </childnode>
        <childnode refid="16" relation="include">
        </childnode>
      </node>
      <node id="29">
        <label>libxml/uri.h</label>
        <link refid="uri_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="20">
        <label>libxml/valid.h</label>
        <link refid="valid_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="21" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
        <childnode refid="22" relation="include">
        </childnode>
        <childnode refid="23" relation="include">
        </childnode>
        <childnode refid="16" relation="include">
        </childnode>
      </node>
      <node id="26">
        <label>libxml/xmlIO.h</label>
        <link refid="xmlIO_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="25" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
      </node>
      <node id="23">
        <label>libxml/xmlautomata.h</label>
        <link refid="xmlautomata_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="21">
        <label>libxml/xmlerror.h</label>
        <link refid="xmlerror_8h"/>
        <childnode refid="11" relation="include">
        </childnode>
      </node>
      <node id="15">
        <label>libxml/xmlmemory.h</label>
        <link refid="xmlmemory_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
      </node>
      <node id="16">
        <label>libxml/xmlregexp.h</label>
        <link refid="xmlregexp_8h"/>
        <childnode refid="10" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
        <childnode refid="13" relation="include">
        </childnode>
      </node>
      <node id="13">
        <label>libxml/xmlstring.h</label>
        <link refid="xmlstring_8h"/>
        <childnode refid="14" relation="include">
        </childnode>
        <childnode refid="11" relation="include">
        </childnode>
      </node>
      <node id="11">
        <label>libxml/xmlversion.h</label>
        <link refid="xmlversion_8h"/>
        <childnode refid="12" relation="include">
        </childnode>
      </node>
      <node id="1">
        <label>/builds/GNOME/libxml2/tree.c</label>
        <link refid="tree_8c"/>
        <childnode refid="2" relation="include">
        </childnode>
        <childnode refid="3" relation="include">
        </childnode>
        <childnode refid="4" relation="include">
        </childnode>
        <childnode refid="5" relation="include">
        </childnode>
        <childnode refid="6" relation="include">
        </childnode>
        <childnode refid="7" relation="include">
        </childnode>
        <childnode refid="8" relation="include">
        </childnode>
        <childnode refid="9" relation="include">
        </childnode>
        <childnode refid="15" relation="include">
        </childnode>
        <childnode refid="17" relation="include">
        </childnode>
        <childnode refid="29" relation="include">
        </childnode>
        <childnode refid="24" relation="include">
        </childnode>
        <childnode refid="21" relation="include">
        </childnode>
        <childnode refid="30" relation="include">
        </childnode>
        <childnode refid="33" relation="include">
        </childnode>
        <childnode refid="34" relation="include">
        </childnode>
        <childnode refid="35" relation="include">
        </childnode>
        <childnode refid="36" relation="include">
        </childnode>
        <childnode refid="37" relation="include">
        </childnode>
        <childnode refid="38" relation="include">
        </childnode>
        <childnode refid="39" relation="include">
        </childnode>
        <childnode refid="40" relation="include">
        </childnode>
        <childnode refid="19" relation="include">
        </childnode>
      </node>
      <node id="6">
        <label>ctype.h</label>
      </node>
      <node id="2">
        <label>libxml.h</label>
      </node>
      <node id="12">
        <label>libxml/xmlexports.h</label>
      </node>
      <node id="5">
        <label>limits.h</label>
      </node>
      <node id="34">
        <label>private/buf.h</label>
      </node>
      <node id="35">
        <label>private/entities.h</label>
      </node>
      <node id="36">
        <label>private/error.h</label>
      </node>
      <node id="38">
        <label>private/io.h</label>
      </node>
      <node id="37">
        <label>private/memory.h</label>
      </node>
      <node id="39">
        <label>private/parser.h</label>
      </node>
      <node id="40">
        <label>private/tree.h</label>
      </node>
      <node id="14">
        <label>stdarg.h</label>
      </node>
      <node id="4">
        <label>stddef.h</label>
      </node>
      <node id="10">
        <label>stdio.h</label>
      </node>
      <node id="7">
        <label>stdlib.h</label>
      </node>
      <node id="3">
        <label>string.h</label>
      </node>
      <node id="8">
        <label>zlib.h</label>
      </node>
    </incdepgraph>
    <innerclass refid="structxmlNsCache" prot="public">xmlNsCache</innerclass>
    <innerclass refid="structxmlNsMapItem" prot="public">xmlNsMapItem</innerclass>
    <innerclass refid="structxmlNsMap" prot="public">xmlNsMap</innerclass>
    <sectiondef kind="define">
      <memberdef kind="define" id="tree_8c_1a2e0dfa3e1bcca0ce16dfbe14da3a27be" prot="public" static="no">
        <name>IN_LIBXML</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="18" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="18" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a9fae031f5ee3a6ca5816b72ba81acdd5" prot="public" static="no">
        <name>IS_STR_XML</name>
        <param><defname>str</defname></param>
        <initializer>  ((str != NULL) &amp;&amp; (str[0] == &apos;x&apos;) &amp;&amp; \
  (str[1] == &apos;m&apos;) &amp;&amp; (str[2] == &apos;l&apos;) &amp;&amp; (str[3] == 0))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="100" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="100" bodyend="101"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a139e7e0ce4bf2f0b812686775cbfc3e4" prot="public" static="no">
        <name>DICT_FREE</name>
        <param><defname>str</defname></param>
        <initializer>    if ((str) &amp;&amp; ((!dict) ||                \
        (<ref refid="dict_8h_1ae98630502265a7baabb2a9d67b0f2b40" kindref="member">xmlDictOwns</ref>(dict, (const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *)(str)) == 0)))  \
        <ref refid="xmlmemory_8h_1a30231cbab46e8d659a5262c3b781164b" kindref="member">xmlFree</ref>((char *)(str));</initializer>
        <briefdescription>
<para>Free a string if it is not owned by the &quot;dict&quot; dictionary in the current scope. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>str</parametername>
</parameternamelist>
<parameterdescription>
<para>a string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="809" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="809" bodyend="812"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1ada785eb5e996d141e6fda7544c1c67f7" prot="public" static="no">
        <name>XML_TREE_NSMAP_PARENT</name>
        <initializer>-1</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6734" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6734" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a00fac68efbd7c33c516ffb9b1799971e" prot="public" static="no">
        <name>XML_TREE_NSMAP_XML</name>
        <initializer>-2</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6735" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6735" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a9d3779b50a40d326f7120709c4fced34" prot="public" static="no">
        <name>XML_TREE_NSMAP_DOC</name>
        <initializer>-3</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6736" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6736" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1ab1a94d9f69316394edcfd05678195e2d" prot="public" static="no">
        <name>XML_TREE_NSMAP_CUSTOM</name>
        <initializer>-4</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6737" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6737" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1ab2f959559da6464df9f1cc71892fb8f3" prot="public" static="no">
        <name>XML_NSMAP_NOTEMPTY</name>
        <param><defname>m</defname></param>
        <initializer>(((m) != NULL) &amp;&amp; ((m)-&gt;first != NULL))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6764" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6764" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1adb12af082cc4550bfb01c4e3cc16f652" prot="public" static="no">
        <name>XML_NSMAP_FOREACH</name>
        <param><defname>m</defname></param>
        <param><defname>i</defname></param>
        <initializer>for (i = (m)-&gt;first; i != NULL; i = (i)-&gt;next)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6765" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6765" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a17bdbb95bbd329003ff2f2bde52f2b33" prot="public" static="no">
        <name>XML_NSMAP_POP</name>
        <param><defname>m</defname></param>
        <param><defname>i</defname></param>
        <initializer>    i = (m)-&gt;last; \
    (m)-&gt;last = (i)-&gt;prev; \
    if ((m)-&gt;last == NULL) \
    (m)-&gt;first = NULL; \
    else \
    (m)-&gt;last-&gt;next = NULL; \
    (i)-&gt;next = (m)-&gt;pool; \
    (m)-&gt;pool = i;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6766" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6766" bodyend="6774"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a983b1e176c1aa49a078b3435bb4342cd" prot="public" static="no">
        <name>XHTML_STRICT_PUBLIC_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8830" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8830" bodyend="8831"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a39e78c764558c3913b31bad765b214f3" prot="public" static="no">
        <name>XHTML_STRICT_SYSTEM_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8832" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8832" bodyend="8833"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a4cf155b2668d7f74ed9ba337aae70c39" prot="public" static="no">
        <name>XHTML_FRAME_PUBLIC_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;-//W3C//DTD XHTML 1.0 Frameset//EN&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8834" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8834" bodyend="8835"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a20aed23cadf45e7368417016a728111d" prot="public" static="no">
        <name>XHTML_FRAME_SYSTEM_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8836" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8836" bodyend="8837"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a06475b344d497d9ace0ab438a306e2cb" prot="public" static="no">
        <name>XHTML_TRANS_PUBLIC_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8838" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8838" bodyend="8839"/>
      </memberdef>
      <memberdef kind="define" id="tree_8c_1a6ee8799d69d6d63ab6207847030190b4" prot="public" static="no">
        <name>XHTML_TRANS_SYSTEM_ID</name>
        <initializer>   <ref refid="xmlstring_8h_1ad0a78338bf196a676079310a7b9c7599" kindref="member">BAD_CAST</ref> \
   &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8840" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8840" bodyend="8841"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="enum">
      <memberdef kind="enum" id="tree_8c_1a4f3771fa2ccf093b4ee8b5032e80c755" prot="public" static="no" strong="no">
        <type></type>
        <name>xmlDOMReconcileNSOptions</name>
        <enumvalue id="tree_8c_1a4f3771fa2ccf093b4ee8b5032e80c755a25b4c8d5edc04d4423c018bd5aff14ee" prot="public">
          <name>XML_DOM_RECONNS_REMOVEREDUND</name>
          <initializer>= 1&lt;&lt;0</initializer>
          <briefdescription>
          </briefdescription>
          <detaileddescription>
          </detaileddescription>
        </enumvalue>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7588" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7588" bodyend="7590"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="typedef">
      <memberdef kind="typedef" id="tree_8c_1aac6ac3870b897782de8a7a66b6f1fdc0" prot="public" static="no">
        <type>struct xmlNsMapItem *</type>
        <definition>typedef struct xmlNsMapItem* xmlNsMapItemPtr</definition>
        <argsstring></argsstring>
        <name>xmlNsMapItemPtr</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6739" column="27" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6739" bodyend="-1"/>
      </memberdef>
      <memberdef kind="typedef" id="tree_8c_1a2118244024f75c7764c392fdb5672722" prot="public" static="no">
        <type>struct xmlNsMap *</type>
        <definition>typedef struct xmlNsMap* xmlNsMapPtr</definition>
        <argsstring></argsstring>
        <name>xmlNsMapPtr</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6757" column="23" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6757" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="var">
      <memberdef kind="variable" id="tree_8c_1aec9059fb57d4d81379066b3418adbd8a" prot="public" static="no" mutable="no">
        <type>int</type>
        <definition>int xmlRegisterCallbacks</definition>
        <argsstring></argsstring>
        <name>xmlRegisterCallbacks</name>
        <initializer>= 0</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="59" column="5" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="59" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="tree_8c_1a415fee28b14d2dea54669b8841845dec" prot="public" static="no" mutable="no">
        <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref></type>
        <definition>const xmlChar xmlStringText[]</definition>
        <argsstring>[]</argsstring>
        <name>xmlStringText</name>
        <initializer>= { &apos;t&apos;, &apos;e&apos;, &apos;x&apos;, &apos;t&apos;, 0 }</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="91" column="15" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="91" bodyend="91"/>
      </memberdef>
      <memberdef kind="variable" id="tree_8c_1af640f3a71fb297e247166c4c7ef90f48" prot="public" static="no" mutable="no">
        <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref></type>
        <definition>const xmlChar xmlStringTextNoenc[]</definition>
        <argsstring>[]</argsstring>
        <name>xmlStringTextNoenc</name>
        <initializer>=
              { &apos;t&apos;, &apos;e&apos;, &apos;x&apos;, &apos;t&apos;, &apos;n&apos;, &apos;o&apos;, &apos;e&apos;, &apos;n&apos;, &apos;c&apos;, 0 }</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="93" column="15" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="93" bodyend="94"/>
      </memberdef>
      <memberdef kind="variable" id="tree_8c_1a2d99857ac2c19a76aa3fbb61aea54848" prot="public" static="no" mutable="no">
        <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref></type>
        <definition>const xmlChar xmlStringComment[]</definition>
        <argsstring>[]</argsstring>
        <name>xmlStringComment</name>
        <initializer>= { &apos;c&apos;, &apos;o&apos;, &apos;m&apos;, &apos;m&apos;, &apos;e&apos;, &apos;n&apos;, &apos;t&apos;, 0 }</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="96" column="15" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="96" bodyend="96"/>
      </memberdef>
      <memberdef kind="variable" id="tree_8c_1a7cfa0e3feb36c71e8d3b06a8a6bb399e" prot="public" static="yes" mutable="no">
        <type>int</type>
        <definition>int xmlCompressMode</definition>
        <argsstring></argsstring>
        <name>xmlCompressMode</name>
        <initializer>= 0</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="98" column="12" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="98" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="func">
      <memberdef kind="function" id="tree_8c_1a69b1d94e2f347f843e51851698536472" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNodePtr</type>
        <definition>static xmlNodePtr xmlNewEntityRef</definition>
        <argsstring>(xmlDocPtr doc, xmlChar *name)</argsstring>
        <name>xmlNewEntityRef</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Create an empty entity reference node. </para>
        </briefdescription>
        <detaileddescription>
<para>This function doesn&apos;t attempt to look up the entity in <computeroutput>doc</computeroutput>.</para>
<para><computeroutput>name</computeroutput> is consumed.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the entity name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2137" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2137" bodyend="2157" declfile="/builds/GNOME/libxml2/tree.c" declline="68" declcolumn="1"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ada779a2b6d623aa913da3a45415c56d5" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlNewReconciledNs</definition>
        <argsstring>(xmlNodePtr tree, xmlNsPtr ns)</argsstring>
        <name>xmlNewReconciledNs</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>tree</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>ns</declname>
        </param>
        <briefdescription>
<para>Fix up namespace declarations. </para>
        </briefdescription>
        <detaileddescription>
<para>This function tries to locate a namespace definition in a tree ancestors, or create a new namespace definition node similar to <computeroutput>ns</computeroutput> trying to reuse the same prefix. However if the given prefix is null (default namespace) or reused within the subtree defined by <computeroutput>tree</computeroutput> or on one of its ancestors then a new prefix is generated.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>tree</parametername>
</parameternamelist>
<parameterdescription>
<para>a node expected to hold the new namespace </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the original namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the (new) namespace definition or NULL in case of error </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5914" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5914" bodyend="5964" declfile="/builds/GNOME/libxml2/tree.c" declline="71" declcolumn="1"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a5abdccdc96e857d86db922e0a5fe70ee" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlAttrPtr</type>
        <definition>static xmlAttrPtr xmlGetPropNodeInternal</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name, const xmlChar *nsName, int useDTD)</argsstring>
        <name>xmlGetPropNodeInternal</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nsName</declname>
        </param>
        <param>
          <type>int</type>
          <declname>useDTD</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6122" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6122" bodyend="6249" declfile="/builds/GNOME/libxml2/tree.c" declline="74" declcolumn="1"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad3c1959bdbedf0f7a6fdcda7d6474984" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>static xmlChar * xmlGetPropNodeValueInternal</definition>
        <argsstring>(const xmlAttr *prop)</argsstring>
        <name>xmlGetPropNodeValueInternal</name>
        <param>
          <type>const <ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>prop</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6252" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6252" bodyend="6262" declfile="/builds/GNOME/libxml2/tree.c" declline="77" declcolumn="16"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a113b40d94bfdc38a1c039631d145a787" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlBufGetChildContent</definition>
        <argsstring>(xmlBufPtr buf, const xmlNode *tree, int normalize)</argsstring>
        <name>xmlBufGetChildContent</name>
        <param>
          <type>xmlBufPtr</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>tree</declname>
        </param>
        <param>
          <type>int</type>
          <declname>normalize</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5157" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5157" bodyend="5189" declfile="/builds/GNOME/libxml2/tree.c" declline="80" declcolumn="1"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a85675d816268690986dd986ee3724885" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlUnlinkNodeInternal</definition>
        <argsstring>(xmlNodePtr cur)</argsstring>
        <name>xmlUnlinkNodeInternal</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlink a node from its tree. </para>
        </briefdescription>
        <detaileddescription>
<para>This function only unlinks the node from the tree. It doesn&apos;t clear references to DTD nodes.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3485" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3485" bodyend="3507" declfile="/builds/GNOME/libxml2/tree.c" declline="83" declcolumn="1"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a19ba038b2d4a4aec082d52c57d09404c" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlEntityPtr</type>
        <definition>static xmlEntityPtr xmlGetEntityFromDtd</definition>
        <argsstring>(const xmlDtd *dtd, const xmlChar *name)</argsstring>
        <name>xmlGetEntityFromDtd</name>
        <param>
          <type>const <ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
          <declname>dtd</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Do an entity lookup in the DTD entity hash table and. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>dtd</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer to the DTD to search </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>The entity name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the corresponding entity, if found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="119" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="119" bodyend="128"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abcfe90d322f33680d62479ee0382e8af" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlEntityPtr</type>
        <definition>static xmlEntityPtr xmlGetParameterEntityFromDtd</definition>
        <argsstring>(const xmlDtd *dtd, const xmlChar *name)</argsstring>
        <name>xmlGetParameterEntityFromDtd</name>
        <param>
          <type>const <ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
          <declname>dtd</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Do an entity lookup in the DTD parameter entity hash table and. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>dtd</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer to the DTD to search </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>The entity name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the corresponding entity, if found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="137" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="137" bodyend="146"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a5cde5e9e5cb8a5910bbf31498c7b291b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlBuildQName</definition>
        <argsstring>(const xmlChar *ncname, const xmlChar *prefix, xmlChar *memory, int len)</argsstring>
        <name>xmlBuildQName</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>ncname</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>memory</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Build a QName from prefix and local name. </para>
        </briefdescription>
        <detaileddescription>
<para>Builds the QName <computeroutput>prefix:ncname</computeroutput> in <computeroutput>memory</computeroutput> 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.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ncname</parametername>
</parameternamelist>
<parameterdescription>
<para>the Name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the prefix </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>memory</parametername>
</parameternamelist>
<parameterdescription>
<para>preallocated memory </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>preallocated memory length </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the new string which must be freed by the caller if different from <computeroutput>memory</computeroutput> and <computeroutput>ncname</computeroutput> or NULL in case of error </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="169" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="169" bodyend="200"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a26c5b1886fcf167303fd348bd60ad244" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlSplitQName2</definition>
        <argsstring>(const xmlChar *name, xmlChar **prefix)</argsstring>
        <name>xmlSplitQName2</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> **</type>
          <declname>prefix</declname>
        </param>
        <briefdescription>
<para>Parse an XML qualified name. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000300"><xreftitle>Deprecated</xreftitle><xrefdescription><para>This function doesn&apos;t report malloc failures. </para>
</xrefdescription></xrefsect><verbatim>[NS 5] QName ::= (Prefix &apos;:&apos;)? LocalPart

[NS 6] Prefix ::= NCName

[NS 7] LocalPart ::= NCName
</verbatim></para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the full QName </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>a <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> ** </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>NULL if the name doesn&apos;t have a prefix. Otherwise, returns the local part, and prefix is updated to get the Prefix. Both the return value and the prefix must be freed by the caller. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="220" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="220" bodyend="255"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a45796e525a9bbc48cbf5bffaf97282fb" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>const xmlChar * xmlSplitQName3</definition>
        <argsstring>(const xmlChar *name, int *len)</argsstring>
        <name>xmlSplitQName3</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>int *</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Parse an XML qualified name. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the full QName </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>an int * </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>NULL if it is not a Qualified Name, otherwise, update len with the length in byte of the prefix and return a pointer to the start of the name without the prefix </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="268" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="268" bodyend="291"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac30c0260defdc17ce58f81f822649bd7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>const xmlChar * xmlSplitQName4</definition>
        <argsstring>(const xmlChar *name, xmlChar **prefixPtr)</argsstring>
        <name>xmlSplitQName4</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> **</type>
          <declname>prefixPtr</declname>
        </param>
        <briefdescription>
<para>Parse a QName. </para>
        </briefdescription>
        <detaileddescription>
<para>The return value points to the start of the local name in the input string. If the QName has a prefix, it will be allocated and stored in <computeroutput>prefixPtr</computeroutput>. This string must be freed by the caller. If there&apos;s no prefix, <computeroutput>prefixPtr</computeroutput> is set to NULL.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the full QName </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefixPtr</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to resulting prefix </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the local name or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="306" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="306" bodyend="338"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab7172dbf96bcae1c14c0a9915979c422" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlValidateNCName</definition>
        <argsstring>(const xmlChar *value, int space)</argsstring>
        <name>xmlValidateNCName</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>space</declname>
        </param>
        <briefdescription>
<para>Check that a value conforms to the lexical space of NCName. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value to check </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>space</parametername>
</parameternamelist>
<parameterdescription>
<para>allow spaces in front and end of the string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="355" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="355" bodyend="379"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af631a5dc4e6f2e7635705ca0e5afc40b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlValidateQName</definition>
        <argsstring>(const xmlChar *value, int space)</argsstring>
        <name>xmlValidateQName</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>space</declname>
        </param>
        <briefdescription>
<para>Check that a value conforms to the lexical space of QName. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value to check </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>space</parametername>
</parameternamelist>
<parameterdescription>
<para>allow spaces in front and end of the string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="390" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="390" bodyend="422"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abd1da2ab9b14d2cda213b3fa2c0825c4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlValidateName</definition>
        <argsstring>(const xmlChar *value, int space)</argsstring>
        <name>xmlValidateName</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>space</declname>
        </param>
        <briefdescription>
<para>Check that a value conforms to the lexical space of Name. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value to check </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>space</parametername>
</parameternamelist>
<parameterdescription>
<para>allow spaces in front and end of the string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="433" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="433" bodyend="457"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae457718ea1f98b10e3be9b26d17f80fa" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlValidateNMToken</definition>
        <argsstring>(const xmlChar *value, int space)</argsstring>
        <name>xmlValidateNMToken</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>space</declname>
        </param>
        <briefdescription>
<para>Check that a value conforms to the lexical space of NMToken. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value to check </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>space</parametername>
</parameternamelist>
<parameterdescription>
<para>allow spaces in front and end of the string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="468" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="468" bodyend="492"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae6fd80404d940f9881d805a3d22f7b03" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
        <definition>xmlNs * xmlNewNs</definition>
        <argsstring>(xmlNode *node, const xmlChar *href, const xmlChar *prefix)</argsstring>
        <name>xmlNewNs</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>href</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <briefdescription>
<para>Create a new namespace. </para>
        </briefdescription>
        <detaileddescription>
<para>For a default namespace, <computeroutput>prefix</computeroutput> should be NULL. The namespace URI in <computeroutput>href</computeroutput> is not checked. You should make sure to pass a valid URI.</para>
<para>If <computeroutput>node</computeroutput> is provided, it must be an element node. The namespace will be appended to the node&apos;s namespace declarations. It is an error if the node already has a definition for the prefix or default namespace.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element carrying the namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>href</parametername>
</parameternamelist>
<parameterdescription>
<para>the URI associated </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the prefix for the namespace (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a new namespace pointer or NULL if arguments are invalid, the prefix is already in use or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="517" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="517" bodyend="570"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9541dd5a21c21628fd9a1967a7b588d4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlSetNs</definition>
        <argsstring>(xmlNode *node, xmlNs *ns)</argsstring>
        <name>xmlSetNs</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <briefdescription>
<para>Set the namespace of an element or attribute node. </para>
        </briefdescription>
        <detaileddescription>
<para>Passing a NULL namespace unsets the namespace.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>a node in the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>a namespace pointer (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="580" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="580" bodyend="587"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab570e15176bd43238c5bb5cf34e22f4b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeNs</definition>
        <argsstring>(xmlNs *cur)</argsstring>
        <name>xmlFreeNs</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free an <ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> object. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace pointer </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="595" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="595" bodyend="602"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad1a3598a43480162fd0f30930152de48" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeNsList</definition>
        <argsstring>(xmlNs *cur)</argsstring>
        <name>xmlFreeNsList</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free a list of <ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> objects. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first namespace pointer </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="610" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="610" bodyend="620"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a2a7c75c7aa7dfa724b14f959c79873e0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
        <definition>xmlDtd * xmlNewDtd</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *name, const xmlChar *publicId, const xmlChar *systemId)</argsstring>
        <name>xmlNewDtd</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>publicId</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>systemId</declname>
        </param>
        <briefdescription>
<para>Create a DTD node. </para>
        </briefdescription>
        <detaileddescription>
<para>If a document is provided, it is an error if it already has an external subset. If the document has no external subset, it will be set to the created DTD.</para>
<para>To create an internal subset, use <ref refid="tree_8h_1ac07ae31536b4ee2783a0d5a9f1776bcc" kindref="member">xmlCreateIntSubset</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document pointer (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the DTD name (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>publicId</parametername>
</parameternamelist>
<parameterdescription>
<para>public identifier of the DTD (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>systemId</parametername>
</parameternamelist>
<parameterdescription>
<para>system identifier (URL) of the DTD (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new DTD object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="639" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="639" bodyend="682"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a590f29ed5f87d27c605d0ab9d01186d4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
        <definition>xmlDtd * xmlGetIntSubset</definition>
        <argsstring>(const xmlDoc *doc)</argsstring>
        <name>xmlGetIntSubset</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Get the internal subset of a document. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document pointer </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the DTD object or NULL if not found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="691" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="691" bodyend="703"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac07ae31536b4ee2783a0d5a9f1776bcc" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
        <definition>xmlDtd * xmlCreateIntSubset</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *name, const xmlChar *publicId, const xmlChar *systemId)</argsstring>
        <name>xmlCreateIntSubset</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>publicId</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>systemId</declname>
        </param>
        <briefdescription>
<para>Create a DTD node. </para>
        </briefdescription>
        <detaileddescription>
<para>If a document is provided and it already has an internal subset, the existing DTD object is returned without creating a new object. If the document has no internal subset, it will be set to the created DTD.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document pointer (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the DTD name (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>publicId</parametername>
</parameternamelist>
<parameterdescription>
<para>public identifier of the DTD (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>systemId</parametername>
</parameternamelist>
<parameterdescription>
<para>system identifier (URL) of the DTD (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new or existing DTD object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="721" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="721" bodyend="801"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a434e4556c1bebcdb6d59a250eb1b8e97" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeDtd</definition>
        <argsstring>(xmlDtd *cur)</argsstring>
        <name>xmlFreeDtd</name>
        <param>
          <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free a DTD structure. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the DTD structure to free up </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="820" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="820" bodyend="871"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a6776d819d79ae983e1bd4babfc5de309" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
        <definition>xmlDoc * xmlNewDoc</definition>
        <argsstring>(const xmlChar *version)</argsstring>
        <name>xmlNewDoc</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>version</declname>
        </param>
        <briefdescription>
<para>Creates a new XML document. </para>
        </briefdescription>
        <detaileddescription>
<para>If version is NULL, <computeroutput>"1.0"</computeroutput> is used.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>version</parametername>
</parameternamelist>
<parameterdescription>
<para>XML version string like <computeroutput>"1.0"</computeroutput> (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a new document or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="880" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="880" bodyend="915"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a703e34a8547e2823fa8cf7059c0bbc9d" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeDoc</definition>
        <argsstring>(xmlDoc *cur)</argsstring>
        <name>xmlFreeDoc</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free a document including all children and associated DTDs. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to the document </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="923" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="923" bodyend="972"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a81ae27a1d8dfac2d252e616e32dde503" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeParseAttValue</definition>
        <argsstring>(const xmlDoc *doc, xmlAttr *attr, const xmlChar *value, size_t len, xmlNode **listPtr)</argsstring>
        <name>xmlNodeParseAttValue</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>attr</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>size_t</type>
          <declname>len</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> **</type>
          <declname>listPtr</declname>
        </param>
        <briefdescription>
<para>Parse an attribute value and replace the node&apos;s children with the resulting node list. </para>
        </briefdescription>
        <detaileddescription>
<para><computeroutput>content</computeroutput> is expected to be a valid XML attribute value possibly containing character and entity references. Syntax errors and references to undeclared entities are ignored silently. Only references are handled, nested elements, comments or PIs are not.</para>
<para>This function is used by the SAX parser to parse attribute values a second time if entities aren&apos;t substituted. It&apos;s also used to parse node content in the tree API, but this is a historical mistake.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>a document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>attr</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute or element (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute value </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>maximum length of the attribute value </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>listPtr</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to the resulting node list (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="997" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="997" bodyend="1243"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aceaf71d08df6e673e1b5580830d36f74" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlStringLenGetNodeList</definition>
        <argsstring>(const xmlDoc *doc, const xmlChar *value, int len)</argsstring>
        <name>xmlStringLenGetNodeList</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>See <ref refid="tree_8h_1abc3b05312fae4bcbe225542367cd2533" kindref="member">xmlStringGetNodeList</ref>. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000301"><xreftitle>Deprecated</xreftitle><xrefdescription><para>Internal function, don&apos;t use.</para>
</xrefdescription></xrefsect></para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>a document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute value </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>maximum length of the attribute value </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the first child or NULL if the value if empty or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1257" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1257" bodyend="1263"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abc3b05312fae4bcbe225542367cd2533" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlStringGetNodeList</definition>
        <argsstring>(const xmlDoc *doc, const xmlChar *value)</argsstring>
        <name>xmlStringGetNodeList</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Parse an attribute value and build a node list with text and entity reference nodes. </para>
        </briefdescription>
        <detaileddescription>
<para>The resulting nodes will be associated with the document if provided. The document is also used to look up entities.</para>
<para><xrefsect id="deprecated_1_deprecated000302"><xreftitle>Deprecated</xreftitle><xrefdescription><para>Internal function, don&apos;t use.</para>
</xrefdescription></xrefsect></para>
<para>The input is not validated. Syntax errors or references to undeclared entities will be ignored silently with unspecified results.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>a document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute value </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the first child or NULL if the value if empty or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1283" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1283" bodyend="1288"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a88afb565a6ec6c7e6a06909d785a5e8f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeListGetStringInternal</definition>
        <argsstring>(const xmlNode *node, int escape, int flags)</argsstring>
        <name>xmlNodeListGetStringInternal</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>int</type>
          <declname>escape</declname>
        </param>
        <param>
          <type>int</type>
          <declname>flags</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>a node list </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>escape</parametername>
</parameternamelist>
<parameterdescription>
<para>whether to escape characters and keep entity refs </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>flags</parametername>
</parameternamelist>
<parameterdescription>
<para>escape flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the string. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1297" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1297" bodyend="1353"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a98a1fa0c23bde675c65837d27aa4f5d5" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeListGetString</definition>
        <argsstring>(xmlDoc *doc, const xmlNode *list, int inLine)</argsstring>
        <name>xmlNodeListGetString</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>list</declname>
        </param>
        <param>
          <type>int</type>
          <declname>inLine</declname>
        </param>
        <briefdescription>
<para>Serializes attribute children (text and entity reference nodes) into a string. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>inLine</computeroutput> is true, entity references will be substituted. Otherwise, entity references will be kept and special characters like <computeroutput>&amp;</computeroutput> as well as non-ASCII chars will be escaped. See <ref refid="entities_8h_1a29754c1db1ddbea5677a28f66822ab8c" kindref="member">xmlEncodeEntitiesReentrant</ref> for details. If <computeroutput>list</computeroutput> is the child of an attribute, escaping rules apply are adjusted.</para>
<para>See <ref refid="tree_8h_1ae30c12d36d6d2d094d8da0b6008cff91" kindref="member">xmlNodeListGetRawString</ref> for an alternative option.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>a document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>list</parametername>
</parameternamelist>
<parameterdescription>
<para>a node list of attribute children </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>inLine</parametername>
</parameternamelist>
<parameterdescription>
<para>whether entity references are substituted </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a string or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1373" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1373" bodyend="1396"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae30c12d36d6d2d094d8da0b6008cff91" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeListGetRawString</definition>
        <argsstring>(const xmlDoc *doc, const xmlNode *list, int inLine)</argsstring>
        <name>xmlNodeListGetRawString</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>list</declname>
        </param>
        <param>
          <type>int</type>
          <declname>inLine</declname>
        </param>
        <briefdescription>
<para>Serializes attribute children (text and entity reference nodes) into a string. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>inLine</computeroutput> is true, entity references will be substituted. Otherwise, entity references will be kept and special characters like <computeroutput>&amp;</computeroutput> will be escaped. See <ref refid="entities_8h_1ac1c6e5ab272e7a6043c786a6e4ba3536" kindref="member">xmlEncodeSpecialChars</ref> for details.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>a document (unused) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>list</parametername>
</parameternamelist>
<parameterdescription>
<para>a node list of attribute children </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>inLine</parametername>
</parameternamelist>
<parameterdescription>
<para>whether entity references are substituted </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a string or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1413" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1413" bodyend="1429"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af22224b5d67f2a834cf7b7b1496adab2" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlAttrPtr</type>
        <definition>static xmlAttrPtr xmlNewPropInternal</definition>
        <argsstring>(xmlNodePtr node, xmlNsPtr ns, const xmlChar *name, const xmlChar *value, int eatname)</argsstring>
        <name>xmlNewPropInternal</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <param>
          <type>int</type>
          <declname>eatname</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1432" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1432" bodyend="1527"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a525da0e5ccadd8d7781c65187d95c5bd" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlNewProp</definition>
        <argsstring>(xmlNode *node, const xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlNewProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Create an attribute node. </para>
        </briefdescription>
        <detaileddescription>
<para>If provided, <computeroutput>value</computeroutput> should be a raw, unescaped string.</para>
<para>If <computeroutput>node</computeroutput> is provided, the created attribute will be appended without checking for duplicate names. It is an error if <computeroutput>node</computeroutput> is not an element.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the name of the attribute </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value of the attribute (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the attribute or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1545" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1545" bodyend="1552"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a2c8678fd25ccff9cffefc95106b7d30a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlNewNsProp</definition>
        <argsstring>(xmlNode *node, xmlNs *ns, const xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlNewNsProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Create an attribute node. </para>
        </briefdescription>
        <detaileddescription>
<para>If provided, <computeroutput>value</computeroutput> should be a raw, unescaped string.</para>
<para>If <computeroutput>node</computeroutput> is provided, the created attribute will be appended without checking for duplicate names. It is an error if <computeroutput>node</computeroutput> is not an element.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the local name of the attribute </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value of the attribute (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the attribute or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1571" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1571" bodyend="1579"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac47e2fa7d0003b4e6ac2dd0e37789526" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlNewNsPropEatName</definition>
        <argsstring>(xmlNode *node, xmlNs *ns, xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlNewNsPropEatName</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Create an attribute node. </para>
        </briefdescription>
        <detaileddescription>
<para>Like <ref refid="tree_8h_1a2c8678fd25ccff9cffefc95106b7d30a" kindref="member">xmlNewNsProp</ref>, but the <computeroutput>name</computeroutput> string will be used directly without making a copy. Takes ownership of <computeroutput>name</computeroutput> which will also be freed on error.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the local name of the attribute </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the value of the attribute (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the attribute or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1596" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1596" bodyend="1604"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7c53af60cec0bc106e594a3ac0ea8d82" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlNewDocProp</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlNewDocProp</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Create an attribute node. </para>
        </briefdescription>
        <detaileddescription>
<para>If provided, <computeroutput>value</computeroutput> is expected to be a valid XML attribute value possibly containing character and entity references. Syntax errors and references to undeclared entities are ignored silently. If you want to pass a raw string, see <ref refid="tree_8h_1a525da0e5ccadd8d7781c65187d95c5bd" kindref="member">xmlNewProp</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the name of the attribute </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>attribute value with XML references (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the attribute or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1621" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1621" bodyend="1660"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9410669969047e9e4ac08dcbe6e97521" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreePropList</definition>
        <argsstring>(xmlAttr *cur)</argsstring>
        <name>xmlFreePropList</name>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free an attribute list including all children. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first attribute in the list </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1668" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1668" bodyend="1676"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a95a4e9ddacfce828d3629aab6354694c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeProp</definition>
        <argsstring>(xmlAttr *cur)</argsstring>
        <name>xmlFreeProp</name>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free an attribute including all children. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1684" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1684" bodyend="1700"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af580829880437e8f9e9e7d87007384b3" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlRemoveProp</definition>
        <argsstring>(xmlAttr *cur)</argsstring>
        <name>xmlRemoveProp</name>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlink and free an attribute including all children. </para>
        </briefdescription>
        <detaileddescription>
<para>Note this doesn&apos;t work for namespace declarations.</para>
<para>The attribute must have a non-NULL parent pointer.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>an attribute </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success or -1 if the attribute was not found or arguments are invalid. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1714" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1714" bodyend="1741"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aeaf667259d5e1ec0a5261da1948ce8a7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocPI</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewDocPI</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a processing instruction object. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the processing instruction target </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the PI content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1753" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1753" bodyend="1789"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3d486205d5c003c00e5a09f42c478c9a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewPI</definition>
        <argsstring>(const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewPI</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a processing instruction node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1aeaf667259d5e1ec0a5261da1948ce8a7" kindref="member">xmlNewDocPI</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the processing instruction target </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the PI content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1802" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1802" bodyend="1804"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aa39c05fb472571ed00e38c065e67d2ec" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewNode</definition>
        <argsstring>(xmlNs *ns, const xmlChar *name)</argsstring>
        <name>xmlNewNode</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Create an element node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1a9ffef9f6e92b2e53420841f2b77cd7d5" kindref="member">xmlNewDocNode</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the node name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1817" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1817" bodyend="1819"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aeaf2969de3a9a51918dc68b974591ac8" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewNodeEatName</definition>
        <argsstring>(xmlNs *ns, xmlChar *name)</argsstring>
        <name>xmlNewNodeEatName</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Create an element node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1a73fded620c44c6a96ff7ae07145ca29d" kindref="member">xmlNewDocNodeEatName</ref>.</para>
<para>Like <ref refid="tree_8h_1aa39c05fb472571ed00e38c065e67d2ec" kindref="member">xmlNewNode</ref>, but the <computeroutput>name</computeroutput> string will be used directly without making a copy. Takes ownership of <computeroutput>name</computeroutput> which will also be freed on error.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the node name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1836" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1836" bodyend="1838"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3620a7bac6741f96a8e41e6f2089fc33" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNodePtr</type>
        <definition>static xmlNodePtr xmlNewElem</definition>
        <argsstring>(xmlDocPtr doc, xmlNsPtr ns, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewElem</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1841" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1841" bodyend="1872"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9ffef9f6e92b2e53420841f2b77cd7d5" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocNode</definition>
        <argsstring>(xmlDoc *doc, xmlNs *ns, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewDocNode</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create an element node. </para>
        </briefdescription>
        <detaileddescription>
<para>If provided, <computeroutput>content</computeroutput> is expected to be a valid XML attribute value possibly containing character and entity references. Syntax errors and references to undeclared entities are ignored silently. Only references are handled, nested elements, comments or PIs are not. See <ref refid="tree_8h_1a808c04e0a59641425a147d4d5525e22e" kindref="member">xmlNewDocRawNode</ref> for an alternative.</para>
<para>General notes on object creation:</para>
<para>Each node and all its children are associated with the same document. The document should be provided when creating nodes to avoid a performance penalty when adding the node to a document tree. Note that a document only owns nodes reachable from the root node. Unlinked subtrees must be freed manually.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the node name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>text content with XML references (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1899" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1899" bodyend="1926"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a73fded620c44c6a96ff7ae07145ca29d" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocNodeEatName</definition>
        <argsstring>(xmlDoc *doc, xmlNs *ns, xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewDocNodeEatName</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create an element node. </para>
        </briefdescription>
        <detaileddescription>
<para>Like <ref refid="tree_8h_1a9ffef9f6e92b2e53420841f2b77cd7d5" kindref="member">xmlNewDocNode</ref>, but the <computeroutput>name</computeroutput> string will be used directly without making a copy. Takes ownership of <computeroutput>name</computeroutput> which will also be freed on error.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the node name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>text content with XML references (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1943" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1943" bodyend="1961"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a808c04e0a59641425a147d4d5525e22e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocRawNode</definition>
        <argsstring>(xmlDoc *doc, xmlNs *ns, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewDocRawNode</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create an element node. </para>
        </briefdescription>
        <detaileddescription>
<para>If provided, <computeroutput>value</computeroutput> should be a raw, unescaped string.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the node name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="1976" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="1976" bodyend="1998"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1adf753f4fb0b1ce34aa8891b5b9441dd2" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocFragment</definition>
        <argsstring>(xmlDoc *doc)</argsstring>
        <name>xmlNewDocFragment</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Create a document fragment node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2008" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2008" bodyend="2025"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1adbac2e3e4dbc77acb95c00004c26004b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewText</definition>
        <argsstring>(const xmlChar *content)</argsstring>
        <name>xmlNewText</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a text node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1a5376de4543332506b8e4637a4948b167" kindref="member">xmlNewDocText</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2037" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2037" bodyend="2063"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a083081aa8abea05a93548d3277ca939f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewTextChild</definition>
        <argsstring>(xmlNode *parent, xmlNs *ns, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewTextChild</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a new child element and append it to a parent element. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>ns</computeroutput> is NULL, the newly created element inherits the namespace of the parent.</para>
<para>If <computeroutput>content</computeroutput> is provided, a text node will be added to the child element, see <ref refid="tree_8h_1a808c04e0a59641425a147d4d5525e22e" kindref="member">xmlNewDocRawNode</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>a namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the name of the child </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content of the child (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2082" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2082" bodyend="2123"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a0f2555f7011a9814d0ca53090c494f70" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewCharRef</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *name)</argsstring>
        <name>xmlNewCharRef</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Create an empty entity reference node. </para>
        </briefdescription>
        <detaileddescription>
<para>This function is MISNAMED. It doesn&apos;t create a character reference but an entity reference.</para>
<para>This function doesn&apos;t attempt to look up the entity in <computeroutput>doc</computeroutput>.</para>
<para>Entity names like <computeroutput>&amp;entity;</computeroutput> are handled as well.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the entity name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2175" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2175" bodyend="2195"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac405acf2e86454ca21c983e85f7a89b1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewReference</definition>
        <argsstring>(const xmlDoc *doc, const xmlChar *name)</argsstring>
        <name>xmlNewReference</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Create a new entity reference node, linking the result with the entity in <computeroutput>doc</computeroutput> if found. </para>
        </briefdescription>
        <detaileddescription>
<para>Entity names like <computeroutput>&amp;entity;</computeroutput> are handled as well.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the entity name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2209" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2209" bodyend="2258"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a5376de4543332506b8e4637a4948b167" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocText</definition>
        <argsstring>(const xmlDoc *doc, const xmlChar *content)</argsstring>
        <name>xmlNewDocText</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a new text node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2269" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2269" bodyend="2275"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a96726e14fe8986c12fb08c72d6e9b745" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewTextLen</definition>
        <argsstring>(const xmlChar *content, int len)</argsstring>
        <name>xmlNewTextLen</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Create a new text node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1a4a5a34145e80874a8c29126c680d9756" kindref="member">xmlNewDocTextLen</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>size of text content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2288" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2288" bodyend="2312"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4a5a34145e80874a8c29126c680d9756" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocTextLen</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *content, int len)</argsstring>
        <name>xmlNewDocTextLen</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Create a new text node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>size of text content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2324" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2324" bodyend="2330"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4d83a4e5843932861340ec3337303da1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewComment</definition>
        <argsstring>(const xmlChar *content)</argsstring>
        <name>xmlNewComment</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1adc3e17268ecbcc717bae0b5dceab437c" kindref="member">xmlNewDocComment</ref>. </para>
        </briefdescription>
        <detaileddescription>
<para>Create a comment node.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the comment content (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2342" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2342" bodyend="2368"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a17456163c45c7b6d2183188d2d1648ae" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewCDataBlock</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *content, int len)</argsstring>
        <name>xmlNewCDataBlock</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Create a CDATA section node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>raw text content (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>size of text content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2380" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2380" bodyend="2404"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1adc3e17268ecbcc717bae0b5dceab437c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewDocComment</definition>
        <argsstring>(xmlDoc *doc, const xmlChar *content)</argsstring>
        <name>xmlNewDocComment</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a comment node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the comment content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2415" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2415" bodyend="2421"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae1f2e46073612e5c3ddf942f92f4e3d9" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlRemoveEntity</definition>
        <argsstring>(xmlEntityPtr ent)</argsstring>
        <name>xmlRemoveEntity</name>
        <param>
          <type>xmlEntityPtr</type>
          <declname>ent</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2424" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2424" bodyend="2455"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a764a13f1c2777153da17a9b1918f38e6" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlNodeSetDoc</definition>
        <argsstring>(xmlNodePtr node, xmlDocPtr doc)</argsstring>
        <name>xmlNodeSetDoc</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2458" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2458" bodyend="2567"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a60add80f0746c370edce6358810024c5" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlSetTreeDoc</definition>
        <argsstring>(xmlNode *tree, xmlDoc *doc)</argsstring>
        <name>xmlSetTreeDoc</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>tree</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Associate all nodes in a tree with a new document. </para>
        </briefdescription>
        <detaileddescription>
<para>This is an internal function which shouldn&apos;t be used. It is invoked by functions like <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>, <ref refid="tree_8h_1a6dbbadff0a26000e89de58a0472fe1b1" kindref="member">xmlAddSibling</ref> or <ref refid="tree_8h_1ada6141ff47bc58aeb36fe0631066ebe3" kindref="member">xmlReplaceNode</ref>. <computeroutput>tree</computeroutput> must be the root node of an unlinked subtree.</para>
<para>Also copy strings from the old document&apos;s dictionary and remove ID attributes from the old ID table.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>tree</parametername>
</parameternamelist>
<parameterdescription>
<para>root of a subtree </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>new document </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success. If a memory allocation fails, returns -1. The whole tree will be updated on failure but some strings may be lost. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2587" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2587" bodyend="2621"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4474f5d951650c64f51c9d1e90cf297c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlSetListDoc</definition>
        <argsstring>(xmlNode *list, xmlDoc *doc)</argsstring>
        <name>xmlSetListDoc</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>list</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Associate all subtrees in <computeroutput>list</computeroutput> with a new document. </para>
        </briefdescription>
        <detaileddescription>
<para>Internal function, see <ref refid="tree_8h_1a60add80f0746c370edce6358810024c5" kindref="member">xmlSetTreeDoc</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>list</parametername>
</parameternamelist>
<parameterdescription>
<para>a node list </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>new document </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success. If a memory allocation fails, returns -1. All subtrees will be updated on failure but some strings may be lost. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2635" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2635" bodyend="2652"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af0127ea96aa3e4843e91cc2a64772b3a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNewChild</definition>
        <argsstring>(xmlNode *parent, xmlNs *ns, const xmlChar *name, const xmlChar *content)</argsstring>
        <name>xmlNewChild</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Create a new child element and append it to a parent element. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>ns</computeroutput> is NULL, the newly created element inherits the namespace of the parent.</para>
<para>If provided, <computeroutput>content</computeroutput> is expected to be a valid XML attribute value possibly containing character and entity references. Text and entity reference node will be added to the child element, see <ref refid="tree_8h_1a9ffef9f6e92b2e53420841f2b77cd7d5" kindref="member">xmlNewDocNode</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>a namespace (optional) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the name of the child </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>text content with XML references (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the new node object or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2673" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2673" bodyend="2714"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a106af493dbedeb854c00a7448ca37532" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlTextSetContent</definition>
        <argsstring>(xmlNodePtr text, xmlChar *content)</argsstring>
        <name>xmlTextSetContent</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>text</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2717" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2717" bodyend="2730"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad008245eefb4e39cbf0d78e6cea8f46a" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlTextAddContent</definition>
        <argsstring>(xmlNodePtr text, const xmlChar *content, int len)</argsstring>
        <name>xmlTextAddContent</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>text</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2733" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2733" bodyend="2745"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af8736f5dc85740cc210ec9e54c3505cf" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNodePtr</type>
        <definition>static xmlNodePtr xmlInsertProp</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr cur, xmlNodePtr parent, xmlNodePtr prev, xmlNodePtr next)</argsstring>
        <name>xmlInsertProp</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>parent</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>prev</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>next</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2748" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2748" bodyend="2787"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab8e01cf35f15c39415f780d67fe652da" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNodePtr</type>
        <definition>static xmlNodePtr xmlInsertNode</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr cur, xmlNodePtr parent, xmlNodePtr prev, xmlNodePtr next, int coalesce)</argsstring>
        <name>xmlInsertNode</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>parent</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>prev</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>next</declname>
        </param>
        <param>
          <type>int</type>
          <declname>coalesce</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2790" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2790" bodyend="2874"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a402c2b6bfd228cb19e50a6ccbd877d21" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlAddNextSibling</definition>
        <argsstring>(xmlNode *prev, xmlNode *cur)</argsstring>
        <name>xmlAddNextSibling</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>prev</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlinks <computeroutput>cur</computeroutput> and inserts it as next sibling after <computeroutput>prev</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Unlike <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref> this function does not merge text nodes.</para>
<para>If <computeroutput>cur</computeroutput> is an attribute node, it is inserted after attribute <computeroutput>prev</computeroutput>. If the attribute list contains an attribute with a name matching <computeroutput>cur</computeroutput>, the old attribute is destroyed.</para>
<para>See the notes in <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>prev</parametername>
</parameternamelist>
<parameterdescription>
<para>the target node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the new node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para><computeroutput>cur</computeroutput> or a sibling if <computeroutput>cur</computeroutput> was merged. Returns NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2893" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2893" bodyend="2903"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a418af347bb3c024294e0e25be1ec41b0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlAddPrevSibling</definition>
        <argsstring>(xmlNode *next, xmlNode *cur)</argsstring>
        <name>xmlAddPrevSibling</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>next</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlinks <computeroutput>cur</computeroutput> and inserts it as previous sibling before <computeroutput>next</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Unlike <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref> this function does not merge text nodes.</para>
<para>If <computeroutput>cur</computeroutput> is an attribute node, it is inserted before attribute <computeroutput>next</computeroutput>. If the attribute list contains an attribute with a name matching <computeroutput>cur</computeroutput>, the old attribute is destroyed.</para>
<para>See the notes in <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>next</parametername>
</parameternamelist>
<parameterdescription>
<para>the target node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the new node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para><computeroutput>cur</computeroutput> or a sibling if <computeroutput>cur</computeroutput> was merged. Returns NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2922" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2922" bodyend="2932"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7cebbfa03b8b118f4e2b31129750e215" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlAddSibling</definition>
        <argsstring>(xmlNode *node, xmlNode *cur)</argsstring>
        <name>xmlAddSibling</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlinks <computeroutput>cur</computeroutput> and inserts it as last sibling of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>cur</computeroutput> is a text node, it may be merged with an adjacent text node and freed. In this case the text node containing the merged content is returned.</para>
<para>If <computeroutput>cur</computeroutput> is an attribute node, it is appended to the attribute list containing <computeroutput>node</computeroutput>. If the attribute list contains an attribute with a name matching <computeroutput>cur</computeroutput>, the old attribute is destroyed.</para>
<para>See the notes in <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the target node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the new node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para><computeroutput>cur</computeroutput> or a sibling if <computeroutput>cur</computeroutput> was merged. Returns NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2953" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2953" bodyend="2975"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a54953eb87421cf8bbc6fe65e8c148f4e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlAddChildList</definition>
        <argsstring>(xmlNode *parent, xmlNode *cur)</argsstring>
        <name>xmlAddChildList</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Append a node list to another node. </para>
        </briefdescription>
        <detaileddescription>
<para>See <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first node in the list </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the last child or NULL in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="2987" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="2987" bodyend="3050"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a920e1354539cbcda18602501c96199c9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlAddChild</definition>
        <argsstring>(xmlNode *parent, xmlNode *cur)</argsstring>
        <name>xmlAddChild</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlink <computeroutput>cur</computeroutput> and append it to the children of <computeroutput>parent</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>cur</computeroutput> is a text node, it may be merged with an adjacent text node and freed. In this case the text node containing the merged content is returned.</para>
<para>If <computeroutput>cur</computeroutput> is an attribute node, it is appended to the attributes of <computeroutput>parent</computeroutput>. If the attribute list contains an attribute with a name matching <computeroutput>cur</computeroutput>, the old attribute is destroyed.</para>
<para>Before version 2.13, this function didn&apos;t unlink <computeroutput>cur</computeroutput> before moving it. Callers must unlink the node manually if it has siblings.</para>
<para>General notes:</para>
<para>Move operations like <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref> can cause element or attribute nodes to reference namespaces that aren&apos;t declared in one of their ancestors. This can lead to use-after-free errors if the elements containing the declarations are freed later, especially when moving nodes from one document to another. You should consider calling <ref refid="tree_8h_1a1cfc574b236d8a9346a38574214689e9" kindref="member">xmlReconciliateNs</ref> after a move operation to normalize namespaces. Another option is to call <ref refid="tree_8h_1a74a44e522b9b18bbab16479f190a8b82" kindref="member">xmlDOMWrapAdoptNode</ref> with the target parent before moving a node.</para>
<para>For the most part, move operations don&apos;t check whether the resulting tree structure is valid. Users must make sure that parent nodes only receive children of valid types. Inserted child nodes must never be an ancestor of the parent node to avoid cycles in the tree structure. In general, only document, document fragments, elements and attributes should be used as parent nodes.</para>
<para>When moving a node between documents and a memory allocation fails, the node&apos;s content will be corrupted and it will be unlinked. In this case, the node must be freed manually.</para>
<para>Moving DTDs between documents isn&apos;t supported.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the child node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para><computeroutput>cur</computeroutput> or a sibling if <computeroutput>cur</computeroutput> was merged. Returns NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3098" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3098" bodyend="3132"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a67b8a59550eb4de08e61f1c40b64d0bd" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlGetLastChild</definition>
        <argsstring>(const xmlNode *parent)</argsstring>
        <name>xmlGetLastChild</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <briefdescription>
<para>Find the last child of a node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the last child or NULL if parent has no children. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3141" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3141" bodyend="3146"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aadbf0de8809a479555a70636a8a580c1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>unsigned long</type>
        <definition>unsigned long xmlChildElementCount</definition>
        <argsstring>(xmlNode *parent)</argsstring>
        <name>xmlChildElementCount</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <briefdescription>
<para>Count the number of child nodes which are elements. </para>
        </briefdescription>
        <detaileddescription>
<para>Note that entity references are not expanded.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the number of element children or 0 if arguments are invalid. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3162" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3162" bodyend="3185"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a939a8828ea59bc444f45da4c98a15960" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlFirstElementChild</definition>
        <argsstring>(xmlNode *parent)</argsstring>
        <name>xmlFirstElementChild</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <briefdescription>
<para>Find the first child node which is an element. </para>
        </briefdescription>
        <detaileddescription>
<para>Note that entity references are not expanded.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the first element or NULL if parent has no children. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3196" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3196" bodyend="3218"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8484e84b13dc0d232bfb6e29cd809bd8" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlLastElementChild</definition>
        <argsstring>(xmlNode *parent)</argsstring>
        <name>xmlLastElementChild</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <briefdescription>
<para>Find the last child node which is an element. </para>
        </briefdescription>
        <detaileddescription>
<para>Note that entity references are not expanded.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>the parent node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the last element or NULL if parent has no children. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3229" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3229" bodyend="3251"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a6afa77edc95e55427f8b8eb58327e64f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlPreviousElementSibling</definition>
        <argsstring>(xmlNode *node)</argsstring>
        <name>xmlPreviousElementSibling</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Find the closest preceding sibling which is a element. </para>
        </briefdescription>
        <detaileddescription>
<para>Note that entity references are not expanded.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the sibling or NULL if no sibling was found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3262" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3262" bodyend="3285"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aa66b0281814fb5cf301e65db0507f69f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlNextElementSibling</definition>
        <argsstring>(xmlNode *node)</argsstring>
        <name>xmlNextElementSibling</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Find the closest following sibling which is a element. </para>
        </briefdescription>
        <detaileddescription>
<para>Note that entity references are not expanded.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the sibling or NULL if no sibling was found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3296" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3296" bodyend="3320"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad482ff0cb911a6c4456e30123587b0da" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeNodeList</definition>
        <argsstring>(xmlNode *cur)</argsstring>
        <name>xmlFreeNodeList</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free a node list including all children. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first node in the list </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3328" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3328" bodyend="3407"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad330960328f909614fd956bd491d5d9c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlFreeNode</definition>
        <argsstring>(xmlNode *cur)</argsstring>
        <name>xmlFreeNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Free a node including all the children. </para>
        </briefdescription>
        <detaileddescription>
<para>This doesn&apos;t unlink the node from the tree. Call <ref refid="tree_8h_1a4b20640af42b05c57978ef578a74719a" kindref="member">xmlUnlinkNode</ref> first unless <computeroutput>cur</computeroutput> is a root node.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3418" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3418" bodyend="3474"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4b20640af42b05c57978ef578a74719a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlUnlinkNode</definition>
        <argsstring>(xmlNode *cur)</argsstring>
        <name>xmlUnlinkNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlink a node from its tree. </para>
        </briefdescription>
        <detaileddescription>
<para>The node is not freed. Unless it is reinserted, it must be managed manually and freed eventually by calling <ref refid="tree_8h_1ad330960328f909614fd956bd491d5d9c" kindref="member">xmlFreeNode</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3518" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3518" bodyend="3540"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ada6141ff47bc58aeb36fe0631066ebe3" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlReplaceNode</definition>
        <argsstring>(xmlNode *old, xmlNode *cur)</argsstring>
        <name>xmlReplaceNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>old</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Unlink the old node. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>cur</computeroutput> is provided, it is unlinked and inserted in place of <computeroutput>old</computeroutput>.</para>
<para>It is an error if <computeroutput>old</computeroutput> has no parent.</para>
<para>Unlike <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>, this function doesn&apos;t merge text nodes or delete duplicate attributes.</para>
<para>See the notes in <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>old</parametername>
</parameternamelist>
<parameterdescription>
<para>the old node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para><computeroutput>old</computeroutput> or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3559" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3559" bodyend="3600"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abf50249aec9679d0102ad4df3c222776" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
        <definition>xmlNs * xmlCopyNamespace</definition>
        <argsstring>(xmlNs *cur)</argsstring>
        <name>xmlCopyNamespace</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Copy a namespace. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied namespace or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3616" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3616" bodyend="3628"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7e67b95c3a7b05079d868bebab1ada39" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
        <definition>xmlNs * xmlCopyNamespaceList</definition>
        <argsstring>(xmlNs *cur)</argsstring>
        <name>xmlCopyNamespaceList</name>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Copy a namespace list. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the head of the copied list or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3638" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3638" bodyend="3657"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a64e4094540e29bb03188e8af9d051c38" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlAttrPtr</type>
        <definition>static xmlAttrPtr xmlCopyPropInternal</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr target, xmlAttrPtr cur)</argsstring>
        <name>xmlCopyPropInternal</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>target</declname>
        </param>
        <param>
          <type>xmlAttrPtr</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3660" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3660" bodyend="3777"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad7a3ff15bb5286a056ea69844fb154bb" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlCopyProp</definition>
        <argsstring>(xmlNode *target, xmlAttr *cur)</argsstring>
        <name>xmlCopyProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>target</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Create a copy of the attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>This function sets the parent pointer of the copy to <computeroutput>target</computeroutput> but doesn&apos;t set the attribute on the target element. Users should consider to set the attribute by calling <ref refid="tree_8h_1a920e1354539cbcda18602501c96199c9" kindref="member">xmlAddChild</ref> afterwards or reset the parent pointer to NULL.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>target</parametername>
</parameternamelist>
<parameterdescription>
<para>the element where the attribute will be grafted </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied attribute or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3792" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3792" bodyend="3794"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae7fe38fd4afac78d51e339ef2911fa22" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlCopyPropList</definition>
        <argsstring>(xmlNode *target, xmlAttr *cur)</argsstring>
        <name>xmlCopyPropList</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>target</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Create a copy of an attribute list. </para>
        </briefdescription>
        <detaileddescription>
<para>This function sets the parent pointers of the copied attributes to <computeroutput>target</computeroutput> but doesn&apos;t set the attributes on the target element.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>target</parametername>
</parameternamelist>
<parameterdescription>
<para>the element where the attributes will be grafted </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the first attribute </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the head of the copied list or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3807" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3807" bodyend="3829"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac54c04d95cecd21bfbb3e9b5631959e3" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlStaticCopyNode</definition>
        <argsstring>(xmlNode *node, xmlDoc *doc, xmlNode *parent, int extended)</argsstring>
        <name>xmlStaticCopyNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <param>
          <type>int</type>
          <declname>extended</declname>
        </param>
        <briefdescription>
<para>Copy a node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>source node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>target parent </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>extended</parametername>
</parameternamelist>
<parameterdescription>
<para>flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copy or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="3860" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="3860" bodyend="4042"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a5b0114ef50ccade44a753579f11e99e7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlStaticCopyNodeList</definition>
        <argsstring>(xmlNode *node, xmlDoc *doc, xmlNode *parent)</argsstring>
        <name>xmlStaticCopyNodeList</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>parent</declname>
        </param>
        <briefdescription>
<para>Copy a node list. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>parent</computeroutput> is provided, sets the parent pointer of the copied nodes, but doesn&apos;t update the children and last pointer of <computeroutput>parent</computeroutput>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>node to copy </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>parent</parametername>
</parameternamelist>
<parameterdescription>
<para>target node (optional) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a the copy or NULL in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4055" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4055" bodyend="4126"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3f8520069d052a32b1148901b64237e4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlCopyNode</definition>
        <argsstring>(xmlNode *node, int extended)</argsstring>
        <name>xmlCopyNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>int</type>
          <declname>extended</declname>
        </param>
        <briefdescription>
<para>Copy a node. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>extended</computeroutput> is 0, make a shallow copy.</para>
<para>If <computeroutput>extended</computeroutput> is 1, make a deep copy (properties, namespaces and children when applicable).</para>
<para>If <computeroutput>extended</computeroutput> is 2, make a shallow copy including properties and namespaces of elements.</para>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1ac228506101e8877681d7b39d7a976190" kindref="member">xmlDocCopyNode</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>extended</parametername>
</parameternamelist>
<parameterdescription>
<para>mode of operation </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied node or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4146" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4146" bodyend="4151"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1acb40b4a66cf1984f117a2388a37185ef" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlDocCopyNode</definition>
        <argsstring>(xmlNode *node, xmlDoc *doc, int extended)</argsstring>
        <name>xmlDocCopyNode</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>int</type>
          <declname>extended</declname>
        </param>
        <briefdescription>
<para>Copy a node into another document. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>extended</computeroutput> is 0, make a shallow copy.</para>
<para>If <computeroutput>extended</computeroutput> is 1, make a deep copy (properties, namespaces and children when applicable).</para>
<para>If <computeroutput>extended</computeroutput> is 2, make a shallow copy including properties and namespaces of elements.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>extended</parametername>
</parameternamelist>
<parameterdescription>
<para>mode of operation </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied node or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4170" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4170" bodyend="4175"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9e2626ec354d26190fb49842079a6039" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlDocCopyNodeList</definition>
        <argsstring>(xmlDoc *doc, xmlNode *node)</argsstring>
        <name>xmlDocCopyNodeList</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Copy a node list and all children into a new document. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the target document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the first node in the list. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the head of the copied list or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4185" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4185" bodyend="4188"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab28c221e4dc2659f438f06ec743567a9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlCopyNodeList</definition>
        <argsstring>(xmlNode *node)</argsstring>
        <name>xmlCopyNodeList</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Copy a node list and all children. </para>
        </briefdescription>
        <detaileddescription>
<para>Use of this function is DISCOURAGED in favor of <ref refid="tree_8h_1a9e2626ec354d26190fb49842079a6039" kindref="member">xmlDocCopyNodeList</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the first node in the list. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the head of the copied list or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4199" column="9" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4199" bodyend="4202"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a2d008d2a936a5344cfc69e9b16a0f863" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
        <definition>xmlDtd * xmlCopyDtd</definition>
        <argsstring>(xmlDtd *dtd)</argsstring>
        <name>xmlCopyDtd</name>
        <param>
          <type><ref refid="tree_8h_1af3e371049fefe3bc6aa9d3caaa651a0d" kindref="member">xmlDtd</ref> *</type>
          <declname>dtd</declname>
        </param>
        <briefdescription>
<para>Copy a DTD. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>dtd</parametername>
</parameternamelist>
<parameterdescription>
<para>the DTD </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied DTD or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4211" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4211" bodyend="4306"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a57e08cc6331b2820398565da7372b121" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
        <definition>xmlDoc * xmlCopyDoc</definition>
        <argsstring>(xmlDoc *doc, int recursive)</argsstring>
        <name>xmlCopyDoc</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>int</type>
          <declname>recursive</declname>
        </param>
        <briefdescription>
<para>Copy a document. </para>
        </briefdescription>
        <detaileddescription>
<para>If recursive, the content tree will be copied too as well as DTD, namespaces and entities.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>recursive</parametername>
</parameternamelist>
<parameterdescription>
<para>if not zero do a recursive copy. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the copied document or NULL if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4318" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4318" bodyend="4379"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a28a336591544839ab2ef31728a4b3fae" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>long</type>
        <definition>static long xmlGetLineNoInternal</definition>
        <argsstring>(const xmlNode *node, int depth)</argsstring>
        <name>xmlGetLineNoInternal</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>int</type>
          <declname>depth</declname>
        </param>
        <briefdescription>
<para>Get line number of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Try to work around the limitation of line numbers being stored as 16 bits ints. Requires <ref refid="parser_8h_1a7d2daaf67df051ca5ef0b319b640442c" kindref="member">xmlParserOption</ref> XML_PARSE_BIG_LINES to be set when parsing.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>valid node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>depth</parametername>
</parameternamelist>
<parameterdescription>
<para>used to limit any risk of recursion </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the line number if successful, -1 otherwise </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4397" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4397" bodyend="4434"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a44b0a9b87c1ac0ee5f9393e18faded91" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>long</type>
        <definition>long xmlGetLineNo</definition>
        <argsstring>(const xmlNode *node)</argsstring>
        <name>xmlGetLineNo</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Get line number of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Try to work around the limitation of line numbers being stored as 16 bits ints. Requires <ref refid="parser_8h_1a7d2daaf67df051ca5ef0b319b640442c" kindref="member">xmlParserOption</ref> XML_PARSE_BIG_LINES to be set when parsing.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>valid node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the line number if successful, -1 otherwise </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4445" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4445" bodyend="4448"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a969324ea76e72126205f5f0fb55741e2" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlGetNodePath</definition>
        <argsstring>(const xmlNode *node)</argsstring>
        <name>xmlGetNodePath</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Build a structure based Path for the given node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>a node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the new path or NULL in case of error. The caller must free the returned string </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4458" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4458" bodyend="4661"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a0a4d3514c60f54a51738af7c38368b82" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlDocGetRootElement</definition>
        <argsstring>(const xmlDoc *doc)</argsstring>
        <name>xmlDocGetRootElement</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Get the root element of the document. </para>
        </briefdescription>
        <detaileddescription>
<para>Searches the document&apos;s children for the root element. The first child is not necessarily the root element, but could also be a DTD, comment or PI.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the root element or NULL if no element was found. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4674" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4674" bodyend="4685"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a82c209ccb822f33590cf557971f2e98a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlDocSetRootElement</definition>
        <argsstring>(xmlDoc *doc, xmlNode *root)</argsstring>
        <name>xmlDocSetRootElement</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>root</declname>
        </param>
        <briefdescription>
<para>If <computeroutput>root</computeroutput> is NULL no action is taken. </para>
        </briefdescription>
        <detaileddescription>
<para>To remove a node from a document, use <ref refid="tree_8h_1a4b20640af42b05c57978ef578a74719a" kindref="member">xmlUnlinkNode</ref> instead.</para>
<para>Set the root element of the document (<computeroutput>doc-&gt;children</computeroutput> is a list containing possibly comments, PIs, etc ...).</para>
<para><computeroutput>root</computeroutput> must be an element node. It is unlinked before insertion.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>root</parametername>
</parameternamelist>
<parameterdescription>
<para>the new document root element </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the unlinked old root element or NULL if the document didn&apos;t have a root element or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4702" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4702" bodyend="4731"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a069ffbf61977264545891e54cdb59833" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeSetLang</definition>
        <argsstring>(xmlNode *cur, const xmlChar *lang)</argsstring>
        <name>xmlNodeSetLang</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>lang</declname>
        </param>
        <briefdescription>
<para>Set the <computeroutput>xml:lang</computeroutput> attribute of a node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being changed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>lang</parametername>
</parameternamelist>
<parameterdescription>
<para>the language description </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 if arguments are invalid, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4742" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4742" bodyend="4758"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abab4ef96c8b01f6785b312271b17830f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeGetLang</definition>
        <argsstring>(const xmlNode *cur)</argsstring>
        <name>xmlNodeGetLang</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Find the <computeroutput>xml:lang</computeroutput> of a node. </para>
        </briefdescription>
        <detaileddescription>
<para>Look up the value of the <computeroutput>xml:lang</computeroutput> attribute or the one carried by the nearest ancestor.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being checked </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the lang value, or NULL if not found It&apos;s up to the caller to free the memory with <ref refid="xmlmemory_8h_1a30231cbab46e8d659a5262c3b781164b" kindref="member">xmlFree</ref>. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4771" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4771" bodyend="4790"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a627d7bd00f85d16f928a39756d651325" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeSetSpacePreserve</definition>
        <argsstring>(xmlNode *cur, int val)</argsstring>
        <name>xmlNodeSetSpacePreserve</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>int</type>
          <declname>val</declname>
        </param>
        <briefdescription>
<para>Set the <computeroutput>xml:space</computeroutput> attribute of a node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being changed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>val</parametername>
</parameternamelist>
<parameterdescription>
<para>the xml:space value (&quot;0&quot;: default, 1: &quot;preserve&quot;) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 if arguments are invalid, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4802" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4802" bodyend="4825"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4c460c3602b312f31770aa080716675a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeGetSpacePreserve</definition>
        <argsstring>(const xmlNode *cur)</argsstring>
        <name>xmlNodeGetSpacePreserve</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Find the <computeroutput>xml:space</computeroutput> of a node. </para>
        </briefdescription>
        <detaileddescription>
<para>Look up the value of the <computeroutput>xml:space</computeroutput> attribute or the one carried by the nearest ancestor.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being checked </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>-1 if xml:space is not inherited, 0 if &quot;default&quot;, 1 if &quot;preserve&quot; </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4837" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4837" bodyend="4865"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8f4d06fd5c4ff5579febaa3dc9ed67df" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlNodeSetName</definition>
        <argsstring>(xmlNode *cur, const xmlChar *name)</argsstring>
        <name>xmlNodeSetName</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Set (or reset) the name of a node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being changed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the new tag name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4874" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4874" bodyend="4910"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9d9e082857cbdb7142785c5ed196d363" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeSetBase</definition>
        <argsstring>(xmlNode *cur, const xmlChar *uri)</argsstring>
        <name>xmlNodeSetBase</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>uri</declname>
        </param>
        <briefdescription>
<para>Set (or reset) the base URI of a node, i.e. </para>
        </briefdescription>
        <detaileddescription>
<para>the value of the <computeroutput>xml:base</computeroutput> attribute.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being changed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>uri</parametername>
</parameternamelist>
<parameterdescription>
<para>the new base URI </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, -1 on error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4921" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4921" bodyend="4963"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a44b7232cf4e4262f68923a200f2b2014" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeGetBaseSafe</definition>
        <argsstring>(const xmlDoc *doc, const xmlNode *cur, xmlChar **baseOut)</argsstring>
        <name>xmlNodeGetBaseSafe</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> **</type>
          <declname>baseOut</declname>
        </param>
        <briefdescription>
<para>Searches for the base URI. </para>
        </briefdescription>
        <detaileddescription>
<para>The code should work on both XML and HTML document even if base mechanisms are completely different. It returns the base as defined in RFC 2396 sections &quot;5.1.1. Base
URI within Document Content&quot; and &quot;5.1.2. Base URI from the
Encapsulating Entity&quot;. However it does not return the document base (5.1.3), use <computeroutput>doc-&gt;URL</computeroutput> in this case.</para>
<para><simplesect kind="since"><para>2.13.0</para>
</simplesect>
<parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document the node pertains to </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being checked </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>baseOut</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to base </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 in case of success, 1 if a URI or argument is invalid, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="4982" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="4982" bodyend="5079"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a727c73de075f16410236686e1a6e1d01" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeGetBase</definition>
        <argsstring>(const xmlDoc *doc, const xmlNode *cur)</argsstring>
        <name>xmlNodeGetBase</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>See <ref refid="tree_8h_1a44b7232cf4e4262f68923a200f2b2014" kindref="member">xmlNodeGetBaseSafe</ref>. </para>
        </briefdescription>
        <detaileddescription>
<para>This function doesn&apos;t allow to distinguish memory allocation failures from a non-existing base.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document the node pertains to </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being checked </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a pointer to the base URL, or NULL if not found It&apos;s up to the caller to free the memory with <ref refid="xmlmemory_8h_1a30231cbab46e8d659a5262c3b781164b" kindref="member">xmlFree</ref>. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5091" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5091" bodyend="5096"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3449a796095bb2a630f2d0471106baca" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeBufGetContent</definition>
        <argsstring>(xmlBuffer *buffer, const xmlNode *cur)</argsstring>
        <name>xmlNodeBufGetContent</name>
        <param>
          <type><ref refid="tree_8h_1a2ee128432290a53a930b36702abd1ef4" kindref="member">xmlBuffer</ref> *</type>
          <declname>buffer</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Append the string value of a node to <computeroutput>buffer</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>For text nodes, the string value is the text content. Otherwise, the string value is the concatenation of the string values of the node&apos;s descendants.</para>
<para>Entity references are substituted.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>buffer</parametername>
</parameternamelist>
<parameterdescription>
<para>a buffer </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being read </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 in case of success and -1 in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5111" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5111" bodyend="5123"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4d0754ca91651015a555b20ae379d237" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlBufGetEntityRefContent</definition>
        <argsstring>(xmlBufPtr buf, const xmlNode *ref, int normalize)</argsstring>
        <name>xmlBufGetEntityRefContent</name>
        <param>
          <type>xmlBufPtr</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>ref</declname>
        </param>
        <param>
          <type>int</type>
          <declname>normalize</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5126" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5126" bodyend="5154"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a1e80cee4855045733ca75f417dc2715e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlBufGetNodeContent</definition>
        <argsstring>(xmlBuf *buf, const xmlNode *cur)</argsstring>
        <name>xmlBufGetNodeContent</name>
        <param>
          <type><ref refid="tree_8h_1a8a549ab0cfa53cd9e4c47eeb7ceb7094" kindref="member">xmlBuf</ref> *</type>
          <declname>buf</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Append the string value of a node to <computeroutput>buf</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>For text nodes, the string value is the text content. Otherwise, the string value is the concatenation of the string values of the node&apos;s descendants.</para>
<para>Entity references are substituted.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>buf</parametername>
</parameternamelist>
<parameterdescription>
<para>a buffer <ref refid="tree_8h_1a8a549ab0cfa53cd9e4c47eeb7ceb7094" kindref="member">xmlBuf</ref> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being read </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 in case of success and -1 in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5204" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5204" bodyend="5241"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a64a87933e820a3250b386777bda13400" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlNodeGetContent</definition>
        <argsstring>(const xmlNode *cur)</argsstring>
        <name>xmlNodeGetContent</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <briefdescription>
<para>Returns the string value of a node. </para>
        </briefdescription>
        <detaileddescription>
<para>For text nodes, the string value is the text content. Otherwise, the string value is the concatenation of the string values of the node&apos;s descendants.</para>
<para>Entity references are substituted.</para>
<para>It&apos;s up to the caller to free the result with <ref refid="xmlmemory_8h_1a30231cbab46e8d659a5262c3b781164b" kindref="member">xmlFree</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being read </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a new string or NULL if arguments are invalid or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5257" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5257" bodyend="5316"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8641a37b8276f8a21e04f5cd4acdcc3d" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlNodeSetContentInternal</definition>
        <argsstring>(xmlNodePtr cur, const xmlChar *content, int len)</argsstring>
        <name>xmlNodeSetContentInternal</name>
        <param>
          <type>xmlNodePtr</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5319" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5319" bodyend="5363"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1adb743abd3a548d61e4a40df29c441e30" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeSetContent</definition>
        <argsstring>(xmlNode *cur, const xmlChar *content)</argsstring>
        <name>xmlNodeSetContent</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Replace the text content of a node. </para>
        </briefdescription>
        <detaileddescription>
<para>Sets the raw text content of text, CDATA, comment or PI nodes.</para>
<para>For element and attribute nodes, removes all children and replaces them by parsing <computeroutput>content</computeroutput> which is expected to be a valid XML attribute value possibly containing character and entity references. Syntax errors and references to undeclared entities are ignored silently. Unfortunately, there isn&apos;t an API to pass raw content directly. An inefficient work-around is to escape the content with <ref refid="entities_8h_1ac1c6e5ab272e7a6043c786a6e4ba3536" kindref="member">xmlEncodeSpecialChars</ref> before passing it. A better trick is clearing the old content with <computeroutput>xmlNodeSetContent(node, NULL)</computeroutput> first and then calling <computeroutput>xmlNodeAddContent(node, content)</computeroutput>. Unlike this function, <ref refid="tree_8h_1ab4f631829c63107a611bde7ae07efd18" kindref="member">xmlNodeAddContent</ref> accepts raw text.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being modified </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the new value of the content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 on error, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5387" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5387" bodyend="5389"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af4e2b587c1d73d89f7cdd987607178e1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeSetContentLen</definition>
        <argsstring>(xmlNode *cur, const xmlChar *content, int len)</argsstring>
        <name>xmlNodeSetContentLen</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>See <ref refid="tree_8h_1adb743abd3a548d61e4a40df29c441e30" kindref="member">xmlNodeSetContent</ref>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being modified </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the new value of the content </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>the size of <computeroutput>content</computeroutput> </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 on error, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5400" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5400" bodyend="5402"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac45b61cd6a34b38d5f84b752971dedd7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeAddContentLen</definition>
        <argsstring>(xmlNode *cur, const xmlChar *content, int len)</argsstring>
        <name>xmlNodeAddContentLen</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Append the extra substring to the node content. </para>
        </briefdescription>
        <detaileddescription>
<para>NOTE: In contrast to <ref refid="tree_8h_1af4e2b587c1d73d89f7cdd987607178e1" kindref="member">xmlNodeSetContentLen</ref>, <computeroutput>content</computeroutput> is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.</para>
<para>This doesn&apos;t work on attributes before version 2.15.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being modified </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>extra content </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para>the size of <computeroutput>content</computeroutput> </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 on error, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5419" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5419" bodyend="5452"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab4f631829c63107a611bde7ae07efd18" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeAddContent</definition>
        <argsstring>(xmlNode *cur, const xmlChar *content)</argsstring>
        <name>xmlNodeAddContent</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>cur</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <briefdescription>
<para>Append the extra substring to the node content. </para>
        </briefdescription>
        <detaileddescription>
<para>NOTE: In contrast to <ref refid="tree_8h_1adb743abd3a548d61e4a40df29c441e30" kindref="member">xmlNodeSetContent</ref>, <computeroutput>content</computeroutput> is supposed to be raw text, so unescaped XML special chars are allowed, entity references are not supported.</para>
<para>This doesn&apos;t work on attributes before version 2.15.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cur</parametername>
</parameternamelist>
<parameterdescription>
<para>the node being modified </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>extra content </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 on error, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5468" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5468" bodyend="5470"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a6cf3836c8ceacb7fb3ecfbbb724838f8" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
        <definition>xmlNode * xmlTextMerge</definition>
        <argsstring>(xmlNode *first, xmlNode *second)</argsstring>
        <name>xmlTextMerge</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>first</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>second</declname>
        </param>
        <briefdescription>
<para>Merge the second text node into the first. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>first</computeroutput> is NULL, <computeroutput>second</computeroutput> is returned. Otherwise, the second node is unlinked and freed.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>first</parametername>
</parameternamelist>
<parameterdescription>
<para>the first text node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>second</parametername>
</parameternamelist>
<parameterdescription>
<para>the second text node being merged </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the first text node augmented or NULL in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5482" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5482" bodyend="5500"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a0803a5bb145029baf52a3e1e30a39aff" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlGetNsListSafe</definition>
        <argsstring>(const xmlDoc *doc, const xmlNode *node, xmlNs ***out)</argsstring>
        <name>xmlGetNsListSafe</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> ***</type>
          <declname>out</declname>
        </param>
        <briefdescription>
<para>Find all in-scope namespaces of a node. </para>
        </briefdescription>
        <detaileddescription>
<para><computeroutput>out</computeroutput> returns a NULL terminated array of namespace pointers that must be freed by the caller.</para>
<para><simplesect kind="since"><para>2.13.0</para>
</simplesect>
<parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>out</parametername>
</parameternamelist>
<parameterdescription>
<para>the returned namespace array </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 if no namespaces were found, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5516" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5516" bodyend="5576"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a29cd758d447e58aa38a4909e919c9be4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> **</type>
        <definition>xmlNs ** xmlGetNsList</definition>
        <argsstring>(const xmlDoc *doc, const xmlNode *node)</argsstring>
        <name>xmlGetNsList</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Find all in-scope namespaces of a node. </para>
        </briefdescription>
        <detaileddescription>
<para>Use <ref refid="tree_8h_1a0803a5bb145029baf52a3e1e30a39aff" kindref="member">xmlGetNsListSafe</ref> for better error reporting.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>a NULL terminated array of namespace pointers that must be freed by the caller or NULL if no namespaces were found or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5590" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5590" bodyend="5596"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad3a181496447942e197ae63bdb68a401" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlNewXmlNs</definition>
        <argsstring>(void)</argsstring>
        <name>xmlNewXmlNs</name>
        <param>
          <type>void</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5599" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5599" bodyend="5619"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a73c0f9dbe8f878e87754a84d0a985d15" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlTreeEnsureXMLDecl</definition>
        <argsstring>(xmlDocPtr doc)</argsstring>
        <name>xmlTreeEnsureXMLDecl</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5630" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5630" bodyend="5642"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aee29583c36b4512041798aacdb623fea" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlSearchNsSafe</definition>
        <argsstring>(xmlNode *node, const xmlChar *prefix, xmlNs **out)</argsstring>
        <name>xmlSearchNsSafe</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> **</type>
          <declname>out</declname>
        </param>
        <briefdescription>
<para>Search for a namespace with <computeroutput>prefix</computeroutput> in scope of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>a node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>a namespace prefix </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>out</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to resulting namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, -1 if a memory allocation failed, 1 on other errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5654" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5654" bodyend="5723"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac0a5cf2ff283a0e7852efc1bedb14826" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
        <definition>xmlNs * xmlSearchNs</definition>
        <argsstring>(xmlDoc *doc, xmlNode *node, const xmlChar *nameSpace)</argsstring>
        <name>xmlSearchNs</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nameSpace</declname>
        </param>
        <briefdescription>
<para>Search for a namespace with <computeroutput>prefix</computeroutput> in scope of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Recurse on the parents until it finds the defined namespace or return NULL otherwise.</para>
<para>If <computeroutput>nameSpace</computeroutput> is NULL, the default namespace is looked up.</para>
<para>Namespace search doesn&apos;t cross entity boundaries.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nameSpace</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace prefix </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the namespace pointer or NULL if no namespace was found or a memory allocation failed. Allocations can only fail if the <computeroutput>xml</computeroutput> namespace is queried. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5743" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5743" bodyend="5749"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ad91a7ba0b66313a3165d420b974c2831" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlNsInScope</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr node, xmlNodePtr ancestor, const xmlChar *prefix)</argsstring>
        <name>xmlNsInScope</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>ancestor</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <briefdescription>
<para>Verify that the given namespace held on <computeroutput>ancestor</computeroutput> is still in scope on node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ancestor</parametername>
</parameternamelist>
<parameterdescription>
<para>the ancestor carrying the namespace </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace prefix </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if true, 0 if false and -1 in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5762" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5762" bodyend="5789"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1affe0f0c0f6cf3a87d54b16644642ebca" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlSearchNsByHrefSafe</definition>
        <argsstring>(xmlNode *node, const xmlChar *href, xmlNs **out)</argsstring>
        <name>xmlSearchNsByHrefSafe</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>href</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> **</type>
          <declname>out</declname>
        </param>
        <briefdescription>
<para>Search for a namespace matching <computeroutput>URI</computeroutput> in scope of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>a node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>href</parametername>
</parameternamelist>
<parameterdescription>
<para>a namespace URI </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>out</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to resulting namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, -1 if a memory allocation failed, 1 on other errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5801" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5801" bodyend="5879"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ae427708425a177257e1c218a1ebb62d2" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
        <definition>xmlNs * xmlSearchNsByHref</definition>
        <argsstring>(xmlDoc *doc, xmlNode *node, const xmlChar *href)</argsstring>
        <name>xmlSearchNsByHref</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>href</declname>
        </param>
        <briefdescription>
<para>Search for a namespace matching <computeroutput>URI</computeroutput> in scope of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the current node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>href</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace value </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the namespace pointer or NULL if no namespace was found or a memory allocation failed. Allocations can only fail if the <computeroutput>xml</computeroutput> namespace is queried. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5892" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5892" bodyend="5898"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8c374425bca7f7ee1de7fca6d104d7a7" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlGrowNsCache</definition>
        <argsstring>(xmlNsCache **cache, int *capacity)</argsstring>
        <name>xmlGrowNsCache</name>
        <param>
          <type>xmlNsCache **</type>
          <declname>cache</declname>
        </param>
        <param>
          <type>int *</type>
          <declname>capacity</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="5972" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="5972" bodyend="5987"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a1cfc574b236d8a9346a38574214689e9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlReconciliateNs</definition>
        <argsstring>(xmlDoc *doc, xmlNode *tree)</argsstring>
        <name>xmlReconciliateNs</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>tree</declname>
        </param>
        <briefdescription>
<para>This function checks that all the namespaces declared within the given tree are properly declared. </para>
        </briefdescription>
        <detaileddescription>
<para>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 tries to reuse the existing namespaces found in the new environment. If not possible the new namespaces are redeclared on <computeroutput>tree</computeroutput> at the top of the given subtree.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>tree</parametername>
</parameternamelist>
<parameterdescription>
<para>a node defining the subtree to reconciliate </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success or -1 in case of error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6003" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6003" bodyend="6119"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4b24597d58e4a367a4312c3e6e3db70c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlHasProp</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name)</argsstring>
        <name>xmlHasProp</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Search for an attribute of an element. </para>
        </briefdescription>
        <detaileddescription>
<para>This function also looks in DTD attribute declaration for #FIXED or default declaration values.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute or the attribute declaration or NULL if neither was found. Also returns NULL if a memory allocation failed, making this function unreliable. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6277" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6277" bodyend="6312"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a96d5a72c470e5548c4fa58a092d04a7c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlHasNsProp</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)</argsstring>
        <name>xmlHasNsProp</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nameSpace</declname>
        </param>
        <briefdescription>
<para>Search for an attribute of an element. </para>
        </briefdescription>
        <detaileddescription>
<para>The attribute has to match the specified namespace. A namespace of NULL means that the attribute must have no namespace.</para>
<para>This function also looks in DTD attribute declaration for #FIXED or default declaration values.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nameSpace</parametername>
</parameternamelist>
<parameterdescription>
<para>the URI of the namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute or the attribute declaration or NULL if neither was found. Also returns NULL if a memory allocation failed making this function unreliable. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6331" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6331" bodyend="6334"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1acdf499365a63403ecf987e8752642eea" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeGetAttrValue</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name, const xmlChar *nsUri, xmlChar **out)</argsstring>
        <name>xmlNodeGetAttrValue</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nsUri</declname>
        </param>
        <param>
          <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> **</type>
          <declname>out</declname>
        </param>
        <briefdescription>
<para>Look up the value of an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>The attribute has to match the specified namespace. A namespace of NULL means that the attribute must have no namespace.</para>
<para>Entities are substituted. The returned value must be freed by the caller.</para>
<para><simplesect kind="since"><para>2.13.0</para>
</simplesect>
<parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nsUri</parametername>
</parameternamelist>
<parameterdescription>
<para>the URI of the namespace </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>out</parametername>
</parameternamelist>
<parameterdescription>
<para>the returned string </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 if no attribute was found, -1 if a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6355" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6355" bodyend="6371"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a06a3348a5cb68ce583217432af2cda40" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlGetProp</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name)</argsstring>
        <name>xmlGetProp</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Look up the value of an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>Entities are substituted. The returned value must be freed by the caller.</para>
<para>This function looks in DTD attribute declarations for #FIXED or default declaration values.</para>
<para>NOTE: This function is ignores namespaces. Use <ref refid="tree_8h_1a662aaf1a98c3dece26f0715f8707d3e2" kindref="member">xmlGetNsProp</ref> or <ref refid="tree_8h_1a88687202e54e6fea421642d8d3f856fe" kindref="member">xmlGetNoNsProp</ref> for namespace aware processing.</para>
<para>NOTE: This function doesn&apos;t allow to distinguish malloc failures from missing attributes.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute value or NULL if not found or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6394" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6394" bodyend="6401"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a88687202e54e6fea421642d8d3f856fe" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlGetNoNsProp</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name)</argsstring>
        <name>xmlGetNoNsProp</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Look up the value of an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>Entities are substituted. The returned value must be freed by the caller.</para>
<para>This function looks in DTD attribute declarations for #FIXED or default declaration values.</para>
<para>This function is similar to <ref refid="tree_8h_1a06a3348a5cb68ce583217432af2cda40" kindref="member">xmlGetProp</ref> except it will accept only an attribute in no namespace.</para>
<para>NOTE: This function doesn&apos;t allow to distinguish malloc failures from missing attributes. It&apos;s more robust to use <ref refid="tree_8h_1acdf499365a63403ecf987e8752642eea" kindref="member">xmlNodeGetAttrValue</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute value or NULL if not found or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6424" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6424" bodyend="6431"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a662aaf1a98c3dece26f0715f8707d3e2" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
        <definition>xmlChar * xmlGetNsProp</definition>
        <argsstring>(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)</argsstring>
        <name>xmlGetNsProp</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nameSpace</declname>
        </param>
        <briefdescription>
<para>Look up the value of an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>The attribute has to match the specified namespace. A namespace of NULL means that the attribute must have no namespace.</para>
<para>Entities are substituted. The returned value must be freed by the caller.</para>
<para>This function looks in DTD attribute declaration for #FIXED or default declaration values.</para>
<para>NOTE: This function doesn&apos;t allow to distinguish malloc failures from missing attributes. It&apos;s more robust to use <ref refid="tree_8h_1acdf499365a63403ecf987e8752642eea" kindref="member">xmlNodeGetAttrValue</ref>.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nameSpace</parametername>
</parameternamelist>
<parameterdescription>
<para>the URI of the namespace </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute value or NULL if not found or a memory allocation failed. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6455" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6455" bodyend="6462"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7f7a13e4a426703953ab21b2d0a23100" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlUnsetProp</definition>
        <argsstring>(xmlNode *node, const xmlChar *name)</argsstring>
        <name>xmlUnsetProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Remove an attribute of an element. </para>
        </briefdescription>
        <detaileddescription>
<para>This handles only attributes in no namespace.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if successful, -1 if not found </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6473" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6473" bodyend="6482"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a2d2db6e8d2ddf4bcfeedb390230476fa" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlUnsetNsProp</definition>
        <argsstring>(xmlNode *node, xmlNs *ns, const xmlChar *name)</argsstring>
        <name>xmlUnsetNsProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <briefdescription>
<para>Remove an attribute of an element. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace definition </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if successful, -1 if not found </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6493" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6493" bodyend="6503"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3b65c6f86a3eeb7f39d068ee72e26f43" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlSetProp</definition>
        <argsstring>(xmlNode *node, const xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlSetProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Set (or reset) an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>name</computeroutput> has a prefix, the corresponding namespace will be used. It is an error if there&apos;s no such binding for the prefix in scope.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name (a QName) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute value </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute pointer. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6516" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6516" bodyend="6542"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8ed95f2f9d6b4c801e0af7e122160c04" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a94c0908950e8e798cf7eb5ed524da0af" kindref="member">xmlAttr</ref> *</type>
        <definition>xmlAttr * xmlSetNsProp</definition>
        <argsstring>(xmlNode *node, xmlNs *ns, const xmlChar *name, const xmlChar *value)</argsstring>
        <name>xmlSetNsProp</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> *</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>name</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>value</declname>
        </param>
        <briefdescription>
<para>Set (or reset) an element&apos;s attribute. </para>
        </briefdescription>
        <detaileddescription>
<para>The namespace must be in scope.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace definition </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>name</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>value</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute value </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the attribute pointer. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6556" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6556" bodyend="6611"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af599245215b2c5f59fc33b1f769fb1b7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlNodeIsText</definition>
        <argsstring>(const xmlNode *node)</argsstring>
        <name>xmlNodeIsText</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Check whether the node is a text node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if yes, 0 if no </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6620" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6620" bodyend="6625"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac847bbc7153f8cf46d29b297b930cf0a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlIsBlankNode</definition>
        <argsstring>(const xmlNode *node)</argsstring>
        <name>xmlIsBlankNode</name>
        <param>
          <type>const <ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Checks whether this node is an empty or whitespace-only text node. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if yes, 0 if no </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6635" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6635" bodyend="6650"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aceac1296d6f4f7c4acf0fded11f832f4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlTextConcat</definition>
        <argsstring>(xmlNode *node, const xmlChar *content, int len)</argsstring>
        <name>xmlTextConcat</name>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>content</declname>
        </param>
        <param>
          <type>int</type>
          <declname>len</declname>
        </param>
        <briefdescription>
<para>Concat the given string at the end of the existing node content. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>len</computeroutput> is -1, the string length will be calculated.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>content</parametername>
</parameternamelist>
<parameterdescription>
<para>the content </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>len</parametername>
</parameternamelist>
<parameterdescription>
<para><computeroutput>content</computeroutput> length </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>-1 in case of error, 0 otherwise </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6664" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6664" bodyend="6675"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aaa2e4539f87f524d8d7b12f435dd84ad" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlGetDocCompressMode</definition>
        <argsstring>(const xmlDoc *doc)</argsstring>
        <name>xmlGetDocCompressMode</name>
        <param>
          <type>const <ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <briefdescription>
<para>Get the compression level of a document, ZLIB based. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 (uncompressed) to 9 (max compression) </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6684" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6684" bodyend="6687"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8869a892d2d9672bcd1d4ed7516acb8e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlSetDocCompressMode</definition>
        <argsstring>(xmlDoc *doc, int mode)</argsstring>
        <name>xmlSetDocCompressMode</name>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>int</type>
          <declname>mode</declname>
        </param>
        <briefdescription>
<para>Set the compression level of a document, ZLIB based. </para>
        </briefdescription>
        <detaileddescription>
<para>Correct values: 0 (uncompressed) to 9 (max compression)</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>mode</parametername>
</parameternamelist>
<parameterdescription>
<para>the compression ratio </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6698" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6698" bodyend="6703"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac138fe5e98047100a7766c756c60ee8c" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlGetCompressMode</definition>
        <argsstring>(void)</argsstring>
        <name>xmlGetCompressMode</name>
        <param>
          <type>void</type>
        </param>
        <briefdescription>
<para>Get the global compression level, ZLIB based. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000303"><xreftitle>Deprecated</xreftitle><xrefdescription><para>Use <ref refid="tree_8h_1aaa2e4539f87f524d8d7b12f435dd84ad" kindref="member">xmlGetDocCompressMode</ref></para>
</xrefdescription></xrefsect></para>
<para><simplesect kind="return"><para>0 (uncompressed) to 9 (max compression) </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6713" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6713" bodyend="6716"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a8e1c2de917f01f58f32ac9bfb88ba5f0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlSetCompressMode</definition>
        <argsstring>(int mode)</argsstring>
        <name>xmlSetCompressMode</name>
        <param>
          <type>int</type>
          <declname>mode</declname>
        </param>
        <briefdescription>
<para>Set the global compression level, ZLIB based. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000304"><xreftitle>Deprecated</xreftitle><xrefdescription><para>Use <ref refid="tree_8h_1a8869a892d2d9672bcd1d4ed7516acb8e" kindref="member">xmlSetDocCompressMode</ref></para>
</xrefdescription></xrefsect></para>
<para>Correct values: 0 (uncompressed) to 9 (max compression)</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>mode</parametername>
</parameternamelist>
<parameterdescription>
<para>the compression ratio </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6728" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6728" bodyend="6732"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a9ec64ec349a3215afe1fc79c401dd34d" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>static void xmlDOMWrapNsMapFree</definition>
        <argsstring>(xmlNsMapPtr nsmap)</argsstring>
        <name>xmlDOMWrapNsMapFree</name>
        <param>
          <type>xmlNsMapPtr</type>
          <declname>nsmap</declname>
        </param>
        <briefdescription>
<para>Frees the ns-map. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>nsmap</parametername>
</parameternamelist>
<parameterdescription>
<para>the ns-map </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6782" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6782" bodyend="6801"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1af514d1dc6017bc0cb6aaf81af19985d5" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsMapItemPtr</type>
        <definition>static xmlNsMapItemPtr xmlDOMWrapNsMapAddItem</definition>
        <argsstring>(xmlNsMapPtr *nsmap, int position, xmlNsPtr oldNs, xmlNsPtr newNs, int depth)</argsstring>
        <name>xmlDOMWrapNsMapAddItem</name>
        <param>
          <type>xmlNsMapPtr *</type>
          <declname>nsmap</declname>
        </param>
        <param>
          <type>int</type>
          <declname>position</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>oldNs</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>newNs</declname>
        </param>
        <param>
          <type>int</type>
          <declname>depth</declname>
        </param>
        <briefdescription>
<para>Adds an ns-mapping item. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>nsmap</parametername>
</parameternamelist>
<parameterdescription>
<para>the ns-map </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>position</parametername>
</parameternamelist>
<parameterdescription>
<para>position </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>oldNs</parametername>
</parameternamelist>
<parameterdescription>
<para>the old ns-struct </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>newNs</parametername>
</parameternamelist>
<parameterdescription>
<para>the new ns-struct </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>depth</parametername>
</parameternamelist>
<parameterdescription>
<para>depth and ns-kind information </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the added item. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6814" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6814" bodyend="6881"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab32d0a124f66a6d3f3a895feab16cbc8" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlDOMWrapStoreNs</definition>
        <argsstring>(xmlDocPtr doc, const xmlChar *nsName, const xmlChar *prefix)</argsstring>
        <name>xmlDOMWrapStoreNs</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nsName</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <briefdescription>
<para>Creates or reuses an <ref refid="tree_8h_1a79683a004465ef75a960604fada53ab3" kindref="member">xmlNs</ref> struct on doc-&gt;oldNs with the given prefix and namespace name. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nsName</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the prefix </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the acquired ns struct or NULL in case of an API or internal error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6894" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6894" bodyend="6925"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac4dd57be68af02ce74230f9300e7a4b3" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
        <definition>xmlDOMWrapCtxt * xmlDOMWrapNewCtxt</definition>
        <argsstring>(void)</argsstring>
        <name>xmlDOMWrapNewCtxt</name>
        <param>
          <type>void</type>
        </param>
        <briefdescription>
<para>Allocates and initializes a new DOM-wrapper context. </para>
        </briefdescription>
        <detaileddescription>
<para><simplesect kind="return"><para>the <ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> or NULL in case of an internal error. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6933" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6933" bodyend="6942"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ab3afaace00223e2500d15a97bb779c19" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void xmlDOMWrapFreeCtxt</definition>
        <argsstring>(xmlDOMWrapCtxt *ctxt)</argsstring>
        <name>xmlDOMWrapFreeCtxt</name>
        <param>
          <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
          <declname>ctxt</declname>
        </param>
        <briefdescription>
<para>Frees the DOM-wrapper context. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>the DOM-wrapper context </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6950" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6950" bodyend="6960"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a3e7c92d0c0961a6f6e5670a7c28d59ff" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlTreeNSListLookupByPrefix</definition>
        <argsstring>(xmlNsPtr nsList, const xmlChar *prefix)</argsstring>
        <name>xmlTreeNSListLookupByPrefix</name>
        <param>
          <type>xmlNsPtr</type>
          <declname>nsList</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <briefdescription>
<para>Searches for a ns-decl with the given prefix in <computeroutput>nsList</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>nsList</parametername>
</parameternamelist>
<parameterdescription>
<para>a list of ns-structs </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the searched prefix </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the ns-decl if found, NULL if not found and on API errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6971" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6971" bodyend="6987"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a62e0b1ec8906dd41424c9ad4f08d5531" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlDOMWrapNSNormGatherInScopeNs</definition>
        <argsstring>(xmlNsMapPtr *map, xmlNodePtr node)</argsstring>
        <name>xmlDOMWrapNSNormGatherInScopeNs</name>
        <param>
          <type>xmlNsMapPtr *</type>
          <declname>map</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <briefdescription>
<para>Puts in-scope namespaces into the ns-map. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>map</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace map </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node to start with </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, -1 on API or internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="6997" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="6997" bodyend="7047"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7bea81a3b65e0f66e9bda514321ac8b1" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlDOMWrapNSNormAddNsMapItem2</definition>
        <argsstring>(xmlNsPtr **list, int *size, int *number, xmlNsPtr oldNs, xmlNsPtr newNs)</argsstring>
        <name>xmlDOMWrapNSNormAddNsMapItem2</name>
        <param>
          <type>xmlNsPtr **</type>
          <declname>list</declname>
        </param>
        <param>
          <type>int *</type>
          <declname>size</declname>
        </param>
        <param>
          <type>int *</type>
          <declname>number</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>oldNs</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>newNs</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7055" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7055" bodyend="7076"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ada812e18a3ae6633cc9984b56b7c054b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlDOMWrapRemoveNode</definition>
        <argsstring>(xmlDOMWrapCtxt *ctxt, xmlDoc *doc, xmlNode *node, int options)</argsstring>
        <name>xmlDOMWrapRemoveNode</name>
        <param>
          <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>doc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para>Unlinks the given node from its owner. </para>
        </briefdescription>
        <detaileddescription>
<para>This will substitute ns-references to node-&gt;nsDef for ns-references to doc-&gt;oldNs, thus ensuring the removed branch to be autark wrt ns-references.</para>
<para>NOTE: This function was not intensively tested.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>a DOM wrapper context </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node to be removed. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>set of options, unused at the moment </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 on success, 1 if the node is not supported, -1 on API and internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7095" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7095" bodyend="7214"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a92dba4f41ebd92edfbcfb29b724db5d8" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlSearchNsByNamespaceStrict</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr node, const xmlChar *nsName, xmlNsPtr *retNs, int prefixed)</argsstring>
        <name>xmlSearchNsByNamespaceStrict</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nsName</declname>
        </param>
        <param>
          <type>xmlNsPtr *</type>
          <declname>retNs</declname>
        </param>
        <param>
          <type>int</type>
          <declname>prefixed</declname>
        </param>
        <briefdescription>
<para>Dynamically searches for a ns-declaration which matches the given <computeroutput>nsName</computeroutput> in the ancestor-or-self axis of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the start node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nsName</parametername>
</parameternamelist>
<parameterdescription>
<para>the searched namespace name </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>retNs</parametername>
</parameternamelist>
<parameterdescription>
<para>the resulting ns-decl </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefixed</parametername>
</parameternamelist>
<parameterdescription>
<para>if the found ns-decl must have a prefix (for attributes) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if a ns-decl was found, 0 if not and -1 on API and internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7230" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7230" bodyend="7315"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a7acd3a9763d91c5fcfe1b6897384a706" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlSearchNsByPrefixStrict</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr node, const xmlChar *prefix, xmlNsPtr *retNs)</argsstring>
        <name>xmlSearchNsByPrefixStrict</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <param>
          <type>xmlNsPtr *</type>
          <declname>retNs</declname>
        </param>
        <briefdescription>
<para>Dynamically searches for a ns-declaration which matches the given <computeroutput>nsName</computeroutput> in the ancestor-or-self axis of <computeroutput>node</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the document </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the start node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the searched namespace prefix </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>retNs</parametername>
</parameternamelist>
<parameterdescription>
<para>the resulting ns-decl </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if a ns-decl was found, 0 if not and -1 on API and internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7329" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7329" bodyend="7375"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1aba6a454b64f7e1e760ec31df8d91c458" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>xmlNsPtr</type>
        <definition>static xmlNsPtr xmlDOMWrapNSNormDeclareNsForced</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr elem, const xmlChar *nsName, const xmlChar *prefix, int checkShadow)</argsstring>
        <name>xmlDOMWrapNSNormDeclareNsForced</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>elem</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>nsName</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>prefix</declname>
        </param>
        <param>
          <type>int</type>
          <declname>checkShadow</declname>
        </param>
        <briefdescription>
<para>Declares a new namespace on <computeroutput>elem</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>It tries to use the given <computeroutput>prefix</computeroutput>. If a ns-decl with the given prefix is already existent on <computeroutput>elem</computeroutput>, it will generate an other prefix.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>elem</parametername>
</parameternamelist>
<parameterdescription>
<para>the element-node to declare on </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nsName</parametername>
</parameternamelist>
<parameterdescription>
<para>the namespace-name of the ns-decl </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefix</parametername>
</parameternamelist>
<parameterdescription>
<para>the preferred prefix of the ns-decl </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>checkShadow</parametername>
</parameternamelist>
<parameterdescription>
<para>ensure that the new ns-decl doesn&apos;t shadow ancestor ns-decls </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if a ns-decl was found, 0 if not and -1 on API and internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7392" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7392" bodyend="7449"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a94af656b65850c05c32627e1d6fc5058" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlDOMWrapNSNormAcquireNormalizedNs</definition>
        <argsstring>(xmlDocPtr doc, xmlNodePtr elem, xmlNsPtr ns, xmlNsPtr *retNs, xmlNsMapPtr *nsMap, int depth, int ancestorsOnly, int prefixed)</argsstring>
        <name>xmlDOMWrapNSNormAcquireNormalizedNs</name>
        <param>
          <type>xmlDocPtr</type>
          <declname>doc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>elem</declname>
        </param>
        <param>
          <type>xmlNsPtr</type>
          <declname>ns</declname>
        </param>
        <param>
          <type>xmlNsPtr *</type>
          <declname>retNs</declname>
        </param>
        <param>
          <type>xmlNsMapPtr *</type>
          <declname>nsMap</declname>
        </param>
        <param>
          <type>int</type>
          <declname>depth</declname>
        </param>
        <param>
          <type>int</type>
          <declname>ancestorsOnly</declname>
        </param>
        <param>
          <type>int</type>
          <declname>prefixed</declname>
        </param>
        <briefdescription>
<para>Searches for a matching ns-name in the ns-decls of <computeroutput>nsMap</computeroutput>, if not found it will either declare it on <computeroutput>elem</computeroutput>, or store it in <computeroutput>doc-&gt;oldNs</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>If a new ns-decl needs to be declared on <computeroutput>elem</computeroutput>, it tries to use the <computeroutput>ns-&gt;prefix</computeroutput> for it, if this prefix is already in use on <computeroutput>elem</computeroutput>, it will change the prefix or the new ns-decl.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>doc</parametername>
</parameternamelist>
<parameterdescription>
<para>the doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>elem</parametername>
</parameternamelist>
<parameterdescription>
<para>the element-node to declare namespaces on </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ns</parametername>
</parameternamelist>
<parameterdescription>
<para>the ns-struct to use for the search </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>retNs</parametername>
</parameternamelist>
<parameterdescription>
<para>the found/created ns-struct </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nsMap</parametername>
</parameternamelist>
<parameterdescription>
<para>the ns-map </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>depth</parametername>
</parameternamelist>
<parameterdescription>
<para>the current tree depth </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ancestorsOnly</parametername>
</parameternamelist>
<parameterdescription>
<para>search in ancestor ns-decls only </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>prefixed</parametername>
</parameternamelist>
<parameterdescription>
<para>if the searched ns-decl must have a prefix (for attributes) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if succeeded, -1 otherwise and on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7470" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7470" bodyend="7586"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a4e1846b236deabae89924109f4c5c9e1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlDOMWrapReconcileNamespaces</definition>
        <argsstring>(xmlDOMWrapCtxt *ctxt, xmlNode *elem, int options)</argsstring>
        <name>xmlDOMWrapReconcileNamespaces</name>
        <param>
          <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>elem</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para>Fix up namespaces. </para>
        </briefdescription>
        <detaileddescription>
<para>Ensures that ns-references point to ns-decls hold on element-nodes. Ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content.</para>
<para>NOTE: This function was not intensively tested.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>DOM wrapper context, unused at the moment </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>elem</parametername>
</parameternamelist>
<parameterdescription>
<para>the element-node </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>option flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if succeeded, -1 otherwise and on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7609" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7609" bodyend="7844"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a06bf0979faf16de23ef59d46b2f7e239" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlDOMWrapAdoptBranch</definition>
        <argsstring>(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr sourceDoc, xmlNodePtr node, xmlDocPtr destDoc, xmlNodePtr destParent, int options)</argsstring>
        <name>xmlDOMWrapAdoptBranch</name>
        <param>
          <type>xmlDOMWrapCtxtPtr</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type>xmlDocPtr</type>
          <declname>sourceDoc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>node</declname>
        </param>
        <param>
          <type>xmlDocPtr</type>
          <declname>destDoc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>destParent</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para>Ensures that ns-references point to <computeroutput>destDoc</computeroutput>: either to <computeroutput>elements-&gt;nsDef</computeroutput> entries if <computeroutput>destParent</computeroutput> is given, or to <computeroutput>destDoc-&gt;oldNs</computeroutput> otherwise. </para>
        </briefdescription>
        <detaileddescription>
<para>If <computeroutput>destParent</computeroutput> is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content.</para>
<para>NOTE: This function was not intensively tested.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional context for custom processing </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>sourceDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional sourceDoc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the element-node to start with </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the destination doc for adoption </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destParent</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional new parent of <computeroutput>node</computeroutput> in <computeroutput>destDoc</computeroutput> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>option flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if succeeded, -1 otherwise and on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="7868" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="7868" bodyend="8124"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a79ec6f5a3e6fbf433d87a47d33441bb9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlDOMWrapCloneNode</definition>
        <argsstring>(xmlDOMWrapCtxt *ctxt, xmlDoc *sourceDoc, xmlNode *node, xmlNode **resNode, xmlDoc *destDoc, xmlNode *destParent, int deep, int options)</argsstring>
        <name>xmlDOMWrapCloneNode</name>
        <param>
          <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>sourceDoc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> **</type>
          <declname>resNode</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>destDoc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>destParent</declname>
        </param>
        <param>
          <type>int</type>
          <declname>deep</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para>Clone a node and fix namespaces. </para>
        </briefdescription>
        <detaileddescription>
<para>References of out-of scope ns-decls are remapped to point to <computeroutput>destDoc</computeroutput>. If <computeroutput>destParent</computeroutput> is given, then nsDef entries on element-nodes are used. If <emphasis>no</emphasis> <computeroutput>destParent</computeroutput> is given, then <computeroutput>destDoc-&gt;oldNs</computeroutput> entries are used. This is the case when you don&apos;t know already where the cloned branch will be added to.</para>
<para>If <computeroutput>destParent</computeroutput> is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional context for custom processing </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>sourceDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional sourceDoc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node to start with </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>resNode</parametername>
</parameternamelist>
<parameterdescription>
<para>the clone of the given <computeroutput>node</computeroutput> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the destination doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destParent</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional new parent of <computeroutput>node</computeroutput> in <computeroutput>destDoc</computeroutput> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>deep</parametername>
</parameternamelist>
<parameterdescription>
<para>descend into child if set </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>option flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if the operation succeeded, 1 if a node of unsupported (or not yet supported) type was given, -1 on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8154" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8154" bodyend="8663"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a73b5efcafbb5b927bcf963b380984b87" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>static int xmlDOMWrapAdoptAttr</definition>
        <argsstring>(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr sourceDoc, xmlAttrPtr attr, xmlDocPtr destDoc, xmlNodePtr destParent, int options)</argsstring>
        <name>xmlDOMWrapAdoptAttr</name>
        <param>
          <type>xmlDOMWrapCtxtPtr</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type>xmlDocPtr</type>
          <declname>sourceDoc</declname>
        </param>
        <param>
          <type>xmlAttrPtr</type>
          <declname>attr</declname>
        </param>
        <param>
          <type>xmlDocPtr</type>
          <declname>destDoc</declname>
        </param>
        <param>
          <type>xmlNodePtr</type>
          <declname>destParent</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para><computeroutput>attr</computeroutput> is adopted by <computeroutput>destDoc</computeroutput>. </para>
        </briefdescription>
        <detaileddescription>
<para>Ensures that ns-references point to <computeroutput>destDoc</computeroutput>: either to <computeroutput>elements-&gt;nsDef</computeroutput> entries if <computeroutput>destParent</computeroutput> is given, or to <computeroutput>destDoc-&gt;oldNs</computeroutput> otherwise.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional context for custom processing </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>sourceDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>unused </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>attr</parametername>
</parameternamelist>
<parameterdescription>
<para>the attribute-node to be adopted </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the destination doc for adoption </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destParent</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional new parent of <computeroutput>attr</computeroutput> in <computeroutput>destDoc</computeroutput> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>option flags (unused) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if succeeded, -1 otherwise and on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8680" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8680" bodyend="8729"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a74a44e522b9b18bbab16479f190a8b82" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlDOMWrapAdoptNode</definition>
        <argsstring>(xmlDOMWrapCtxt *ctxt, xmlDoc *sourceDoc, xmlNode *node, xmlDoc *destDoc, xmlNode *destParent, int options)</argsstring>
        <name>xmlDOMWrapAdoptNode</name>
        <param>
          <type><ref refid="tree_8h_1af8f4d5181a0e6a3098bc71d0deeb3af7" kindref="member">xmlDOMWrapCtxt</ref> *</type>
          <declname>ctxt</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>sourceDoc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>node</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ae94acff8b6413934705e29389bcddc17" kindref="member">xmlDoc</ref> *</type>
          <declname>destDoc</declname>
        </param>
        <param>
          <type><ref refid="tree_8h_1ac8c054adbdabc014ab4584dfb1ce841e" kindref="member">xmlNode</ref> *</type>
          <declname>destParent</declname>
        </param>
        <param>
          <type>int</type>
          <declname>options</declname>
        </param>
        <briefdescription>
<para>Fix up namespaces before moving a node. </para>
        </briefdescription>
        <detaileddescription>
<para>References of out-of scope ns-decls are remapped to point to <computeroutput>destDoc</computeroutput>: If <computeroutput>destParent</computeroutput> is given, then nsDef entries on element-nodes are used. If <emphasis>no</emphasis> <computeroutput>destParent</computeroutput> is given, then <computeroutput>destDoc-&gt;oldNs</computeroutput> entries are used This is the case when you have an unlinked node and just want to move it to the context of.</para>
<para>If <computeroutput>destParent</computeroutput> is given, it ensures that the tree is namespace wellformed by creating additional ns-decls where needed. Note that, since prefixes of already existent ns-decls can be shadowed by this process, it could break QNames in attribute values or element content.</para>
<para>NOTE: This function was not intensively tested.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>ctxt</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional context for custom processing </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>sourceDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional sourceDoc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>node</parametername>
</parameternamelist>
<parameterdescription>
<para>the node to start with </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destDoc</parametername>
</parameternamelist>
<parameterdescription>
<para>the destination doc </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>destParent</parametername>
</parameternamelist>
<parameterdescription>
<para>the optional new parent of <computeroutput>node</computeroutput> in <computeroutput>destDoc</computeroutput> </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>options</parametername>
</parameternamelist>
<parameterdescription>
<para>option flags </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>0 if the operation succeeded, 1 if a node of unsupported type was given, 2 if a node of not yet supported type was given and -1 on API/internal errors. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8760" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8760" bodyend="8822"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1abe5e5586678f8f6478c72bf869be4a5f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int xmlIsXHTML</definition>
        <argsstring>(const xmlChar *systemID, const xmlChar *publicID)</argsstring>
        <name>xmlIsXHTML</name>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>systemID</declname>
        </param>
        <param>
          <type>const <ref refid="xmlstring_8h_1afb1489b546f7800463867523ffaee1d3" kindref="member">xmlChar</ref> *</type>
          <declname>publicID</declname>
        </param>
        <briefdescription>
<para>Try to find if the document correspond to an XHTML DTD. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>systemID</parametername>
</parameternamelist>
<parameterdescription>
<para>the system identifier </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>publicID</parametername>
</parameternamelist>
<parameterdescription>
<para>the public identifier </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>1 if true, 0 if not and -1 in case of error </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8851" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8851" bodyend="8865"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1a01070188bceb05066c6c77f8d4f4f988" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1a6fc959a53aad61a058f9039b313d8622" kindref="member">xmlRegisterNodeFunc</ref></type>
        <definition>xmlRegisterNodeFunc xmlRegisterNodeDefault</definition>
        <argsstring>(xmlRegisterNodeFunc func)</argsstring>
        <name>xmlRegisterNodeDefault</name>
        <param>
          <type><ref refid="tree_8h_1a6fc959a53aad61a058f9039b313d8622" kindref="member">xmlRegisterNodeFunc</ref></type>
          <declname>func</declname>
        </param>
        <briefdescription>
<para>Registers a callback for node creation. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000305"><xreftitle>Deprecated</xreftitle><xrefdescription><para>don&apos;t use</para>
</xrefdescription></xrefsect></para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>func</parametername>
</parameternamelist>
<parameterdescription>
<para>function pointer to the new RegisterNodeFunc </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the old value of the registration function </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8882" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8882" bodyend="8889"/>
      </memberdef>
      <memberdef kind="function" id="tree_8c_1ac337445071b41061a558b5f7bceed3fe" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="tree_8h_1aa242184c4aae31aa9c34f690f2e8b00f" kindref="member">xmlDeregisterNodeFunc</ref></type>
        <definition>xmlDeregisterNodeFunc xmlDeregisterNodeDefault</definition>
        <argsstring>(xmlDeregisterNodeFunc func)</argsstring>
        <name>xmlDeregisterNodeDefault</name>
        <param>
          <type><ref refid="tree_8h_1aa242184c4aae31aa9c34f690f2e8b00f" kindref="member">xmlDeregisterNodeFunc</ref></type>
          <declname>func</declname>
        </param>
        <briefdescription>
<para>Registers a callback for node destruction. </para>
        </briefdescription>
        <detaileddescription>
<para><xrefsect id="deprecated_1_deprecated000306"><xreftitle>Deprecated</xreftitle><xrefdescription><para>don&apos;t use</para>
</xrefdescription></xrefsect></para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>func</parametername>
</parameternamelist>
<parameterdescription>
<para>function pointer to the new DeregisterNodeFunc </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the previous value of the deregistration function </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/builds/GNOME/libxml2/tree.c" line="8900" column="1" bodyfile="/builds/GNOME/libxml2/tree.c" bodystart="8900" bodyend="8907"/>
      </memberdef>
    </sectiondef>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/builds/GNOME/libxml2/tree.c"/>
  </compounddef>
</doxygen>
