added Info.plist
[TestXSLT.git] / libxml2 / doc / html / libxml-tree.html
1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>tree</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
2         .synopsis, .classsynopsis {
3             background: #eeeeee;
4             border: solid 1px #aaaaaa;
5             padding: 0.5em;
6         }
7         .programlisting {
8             background: #eeeeff;
9             border: solid 1px #aaaaff;
10             padding: 0.5em;
11         }
12         .variablelist {
13             padding: 4px;
14             margin-left: 3em;
15         }
16         .navigation {
17             background: #ffeeee;
18             border: solid 1px #ffaaaa;
19             margin-top: 0.5em;
20             margin-bottom: 0.5em;
21         }
22         .navigation a {
23             color: #770000;
24         }
25         .navigation a:visited {
26             color: #550000;
27         }
28         .navigation .title {
29             font-size: 200%;
30         }
31       </style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-SAX.html" title="SAX"><link rel="next" href="libxml-entities.html" title="entities"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-tree"></a><div class="titlepage"></div><div class="refnamediv"><h2>tree</h2><p>tree &#8212; </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
32
33
34
35 struct      <a href="libxml-tree.html#xmlParserInputBuffer">xmlParserInputBuffer</a>;
36 typedef     <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>;
37 struct      <a href="libxml-tree.html#xmlOutputBuffer">xmlOutputBuffer</a>;
38 typedef     <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>;
39 struct      <a href="libxml-parser.html#xmlParserInput">xmlParserInput</a>;
40 typedef     <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>;
41 struct      <a href="libxml-parser.html#xmlParserCtxt">xmlParserCtxt</a>;
42 typedef     <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>;
43 struct      <a href="libxml-parser.html#xmlSAXLocator">xmlSAXLocator</a>;
44 typedef     <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a>;
45 struct      <a href="libxml-parser.html#xmlSAXHandler">xmlSAXHandler</a>;
46 typedef     <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a>;
47 struct      <a href="libxml-tree.html#xmlEntity">xmlEntity</a>;
48 typedef     <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>;
49 #define     <a href="libxml-tree.html#BASE-BUFFER-SIZE-CAPS">BASE_BUFFER_SIZE</a>
50 #define     <a href="libxml-tree.html#XML-XML-NAMESPACE-CAPS">XML_XML_NAMESPACE</a>
51 enum        <a href="libxml-tree.html#xmlElementType">xmlElementType</a>;
52 typedef     <a href="libxml-tree.html#xmlChar">xmlChar</a>;
53 #define     <a href="libxml-tree.html#BAD-CAST-CAPS">BAD_CAST</a>
54 struct      <a href="libxml-tree.html#xmlNotation">xmlNotation</a>;
55 typedef     <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>;
56 enum        <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>;
57 enum        <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a>;
58 struct      <a href="libxml-tree.html#xmlEnumeration">xmlEnumeration</a>;
59 typedef     <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>;
60 struct      <a href="libxml-tree.html#xmlAttribute">xmlAttribute</a>;
61 typedef     <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>;
62 enum        <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a>;
63 enum        <a href="libxml-tree.html#xmlElementContentOccur">xmlElementContentOccur</a>;
64 struct      <a href="libxml-tree.html#xmlElementContent">xmlElementContent</a>;
65 typedef     <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>;
66 enum        <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a>;
67 struct      <a href="libxml-tree.html#xmlElement">xmlElement</a>;
68 typedef     <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>;
69 #define     <a href="libxml-tree.html#XML-LOCAL-NAMESPACE-CAPS">XML_LOCAL_NAMESPACE</a>
70 typedef     <a href="libxml-tree.html#xmlNsType">xmlNsType</a>;
71 struct      <a href="libxml-tree.html#xmlNs">xmlNs</a>;
72 typedef     <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>;
73 struct      <a href="libxml-tree.html#xmlDtd">xmlDtd</a>;
74 typedef     <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>;
75 struct      <a href="libxml-tree.html#xmlAttr">xmlAttr</a>;
76 typedef     <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>;
77 struct      <a href="libxml-tree.html#xmlID">xmlID</a>;
78 typedef     <a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>;
79 struct      <a href="libxml-tree.html#xmlRef">xmlRef</a>;
80 typedef     <a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>;
81 enum        <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>;
82 struct      <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a>;
83 typedef     <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>;
84 struct      <a href="libxml-tree.html#xmlNode">xmlNode</a>;
85 typedef     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>;
86 #define     <a href="libxml-tree.html#XML-GET-CONTENT-CAPS">XML_GET_CONTENT</a>                 (n)
87 #define     <a href="libxml-tree.html#XML-GET-LINE-CAPS">XML_GET_LINE</a>                    (n)
88 struct      <a href="libxml-tree.html#xmlDoc">xmlDoc</a>;
89 typedef     <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>;
90 #define     <a href="libxml-tree.html#xmlChildrenNode">xmlChildrenNode</a>
91 #define     <a href="libxml-tree.html#xmlRootNode">xmlRootNode</a>
92 int         <a href="libxml-tree.html#xmlValidateNCName">xmlValidateNCName</a>               (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
93                                              int space);
94 int         <a href="libxml-tree.html#xmlValidateQName">xmlValidateQName</a>                (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
95                                              int space);
96 int         <a href="libxml-tree.html#xmlValidateName">xmlValidateName</a>                 (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
97                                              int space);
98 int         <a href="libxml-tree.html#xmlValidateNMToken">xmlValidateNMToken</a>              (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
99                                              int space);
100 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlBuildQName">xmlBuildQName</a>                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ncname,
101                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix,
102                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *memory,
103                                              int len);
104 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a>                  (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
105                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);
106 const <a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlSplitQName3">xmlSplitQName3</a>               (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
107                                              int *len);
108 void        <a href="libxml-tree.html#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a>    (<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);
109 <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> <a href="libxml-tree.html#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a>
110                                             (void);
111 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> <a href="libxml-tree.html#xmlBufferCreate">xmlBufferCreate</a>                (void);
112 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> <a href="libxml-tree.html#xmlBufferCreateSize">xmlBufferCreateSize</a>            (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="size-t">size_t</GTKDOCLINK> size);
113 int         <a href="libxml-tree.html#xmlBufferResize">xmlBufferResize</a>                 (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
114                                              unsigned int size);
115 void        <a href="libxml-tree.html#xmlBufferFree">xmlBufferFree</a>                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
116 int         <a href="libxml-tree.html#xmlBufferDump">xmlBufferDump</a>                   (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *file,
117                                              <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
118 void        <a href="libxml-tree.html#xmlBufferAdd">xmlBufferAdd</a>                    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
119                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
120                                              int len);
121 void        <a href="libxml-tree.html#xmlBufferAddHead">xmlBufferAddHead</a>                (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
122                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
123                                              int len);
124 void        <a href="libxml-tree.html#xmlBufferCat">xmlBufferCat</a>                    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
125                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str);
126 void        <a href="libxml-tree.html#xmlBufferCCat">xmlBufferCCat</a>                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
127                                              const char *str);
128 int         <a href="libxml-tree.html#xmlBufferShrink">xmlBufferShrink</a>                 (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
129                                              unsigned int len);
130 int         <a href="libxml-tree.html#xmlBufferGrow">xmlBufferGrow</a>                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
131                                              unsigned int len);
132 void        <a href="libxml-tree.html#xmlBufferEmpty">xmlBufferEmpty</a>                  (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
133 const <a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlBufferContent">xmlBufferContent</a>             (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
134 void        <a href="libxml-tree.html#xmlBufferSetAllocationScheme">xmlBufferSetAllocationScheme</a>    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
135                                              <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);
136 int         <a href="libxml-tree.html#xmlBufferLength">xmlBufferLength</a>                 (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
137 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   <a href="libxml-tree.html#xmlCreateIntSubset">xmlCreateIntSubset</a>              (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
138                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
139                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
140                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);
141 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   <a href="libxml-tree.html#xmlNewDtd">xmlNewDtd</a>                       (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
142                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
143                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
144                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);
145 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   <a href="libxml-tree.html#xmlGetIntSubset">xmlGetIntSubset</a>                 (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
146 void        <a href="libxml-tree.html#xmlFreeDtd">xmlFreeDtd</a>                      (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur);
147 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlNewGlobalNs">xmlNewGlobalNs</a>                  (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
148                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
149                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);
150 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlNewNs">xmlNewNs</a>                        (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
151                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
152                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);
153 void        <a href="libxml-tree.html#xmlFreeNs">xmlFreeNs</a>                       (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
154 void        <a href="libxml-tree.html#xmlFreeNsList">xmlFreeNsList</a>                   (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
155 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>   <a href="libxml-tree.html#xmlNewDoc">xmlNewDoc</a>                       (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *version);
156 void        <a href="libxml-tree.html#xmlFreeDoc">xmlFreeDoc</a>                      (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
157 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlNewDocProp">xmlNewDocProp</a>                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
158                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
159                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
160 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlNewProp">xmlNewProp</a>                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
161                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
162                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
163 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlNewNsProp">xmlNewNsProp</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
164                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
165                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
166                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
167 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlNewNsPropEatName">xmlNewNsPropEatName</a>             (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
168                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
169                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
170                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
171 void        <a href="libxml-tree.html#xmlFreePropList">xmlFreePropList</a>                 (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
172 void        <a href="libxml-tree.html#xmlFreeProp">xmlFreeProp</a>                     (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
173 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlCopyProp">xmlCopyProp</a>                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
174                                              <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
175 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlCopyPropList">xmlCopyPropList</a>                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
176                                              <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
177 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   <a href="libxml-tree.html#xmlCopyDtd">xmlCopyDtd</a>                      (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd);
178 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>   <a href="libxml-tree.html#xmlCopyDoc">xmlCopyDoc</a>                      (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
179                                              int recursive);
180 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocNode">xmlNewDocNode</a>                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
181                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
182                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
183                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
184 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a>            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
185                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
186                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
187                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
188 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a>                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
189                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
190                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
191                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
192 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewNode">xmlNewNode</a>                      (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
193                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
194 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewNodeEatName">xmlNewNodeEatName</a>               (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
195                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
196 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewChild">xmlNewChild</a>                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
197                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
198                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
199                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
200 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a>                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
201                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
202                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
203                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
204 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocText">xmlNewDocText</a>                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
205                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
206 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewText">xmlNewText</a>                      (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
207 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewPI">xmlNewPI</a>                        (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
208                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
209 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocTextLen">xmlNewDocTextLen</a>                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
210                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
211                                              int len);
212 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewTextLen">xmlNewTextLen</a>                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
213                                              int len);
214 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocComment">xmlNewDocComment</a>                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
215                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
216 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewComment">xmlNewComment</a>                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
217 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewCDataBlock">xmlNewCDataBlock</a>                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
218                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
219                                              int len);
220 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewCharRef">xmlNewCharRef</a>                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
221                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
222 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewReference">xmlNewReference</a>                 (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
223                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
224 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlCopyNode">xmlCopyNode</a>                     (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
225                                              int recursive);
226 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlDocCopyNode">xmlDocCopyNode</a>                  (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
227                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
228                                              int recursive);
229 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlCopyNodeList">xmlCopyNodeList</a>                 (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
230 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlNewDocFragment">xmlNewDocFragment</a>               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
231 <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="long">long</GTKDOCLINK>        <a href="libxml-tree.html#xmlGetLineNo">xmlGetLineNo</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
232 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlGetNodePath">xmlGetNodePath</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
233 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlDocGetRootElement">xmlDocGetRootElement</a>            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
234 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlGetLastChild">xmlGetLastChild</a>                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent);
235 int         <a href="libxml-tree.html#xmlNodeIsText">xmlNodeIsText</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
236 int         <a href="libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
237 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a>            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
238                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root);
239 void        <a href="libxml-tree.html#xmlNodeSetName">xmlNodeSetName</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
240                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
241 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlAddChild">xmlAddChild</a>                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
242                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
243 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlAddChildList">xmlAddChildList</a>                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
244                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
245 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlReplaceNode">xmlReplaceNode</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old,
246                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
247 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlAddSibling">xmlAddSibling</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
248                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
249 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlAddPrevSibling">xmlAddPrevSibling</a>               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
250                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
251 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlAddNextSibling">xmlAddNextSibling</a>               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
252                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
253 void        <a href="libxml-tree.html#xmlUnlinkNode">xmlUnlinkNode</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
254 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlTextMerge">xmlTextMerge</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first,
255                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second);
256 int         <a href="libxml-tree.html#xmlTextConcat">xmlTextConcat</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
257                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
258                                              int len);
259 void        <a href="libxml-tree.html#xmlFreeNodeList">xmlFreeNodeList</a>                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
260 void        <a href="libxml-tree.html#xmlFreeNode">xmlFreeNode</a>                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
261 void        <a href="libxml-tree.html#xmlSetTreeDoc">xmlSetTreeDoc</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree,
262                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
263 void        <a href="libxml-tree.html#xmlSetListDoc">xmlSetListDoc</a>                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
264                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
265 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlSearchNs">xmlSearchNs</a>                     (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
266                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
267                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
268 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlSearchNsByHref">xmlSearchNsByHref</a>               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
269                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
270                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href);
271 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>*   <a href="libxml-tree.html#xmlGetNsList">xmlGetNsList</a>                    (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
272                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
273 void        <a href="libxml-tree.html#xmlSetNs">xmlSetNs</a>                        (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
274                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns);
275 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlCopyNamespace">xmlCopyNamespace</a>                (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
276 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    <a href="libxml-tree.html#xmlCopyNamespaceList">xmlCopyNamespaceList</a>            (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
277 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlSetProp">xmlSetProp</a>                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
278                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
279                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
280 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlGetProp">xmlGetProp</a>                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
281                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
282 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlGetNoNsProp">xmlGetNoNsProp</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
283                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
284 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlHasProp">xmlHasProp</a>                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
285                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
286 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlHasNsProp">xmlHasNsProp</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
287                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
288                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
289 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  <a href="libxml-tree.html#xmlSetNsProp">xmlSetNsProp</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
290                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
291                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
292                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
293 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlGetNsProp">xmlGetNsProp</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
294                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
295                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
296 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlStringGetNodeList">xmlStringGetNodeList</a>            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
297                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
298 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  <a href="libxml-tree.html#xmlStringLenGetNodeList">xmlStringLenGetNodeList</a>         (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
299                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
300                                              int len);
301 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlNodeListGetString">xmlNodeListGetString</a>            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
302                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
303                                              int inLine);
304 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlNodeListGetRawString">xmlNodeListGetRawString</a>         (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
305                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
306                                              int inLine);
307 void        <a href="libxml-tree.html#xmlNodeSetContent">xmlNodeSetContent</a>               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
308                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
309 void        <a href="libxml-tree.html#xmlNodeSetContentLen">xmlNodeSetContentLen</a>            (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
310                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
311                                              int len);
312 void        <a href="libxml-tree.html#xmlNodeAddContent">xmlNodeAddContent</a>               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
313                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
314 void        <a href="libxml-tree.html#xmlNodeAddContentLen">xmlNodeAddContentLen</a>            (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
315                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
316                                              int len);
317 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlNodeGetContent">xmlNodeGetContent</a>               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
318 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlNodeGetLang">xmlNodeGetLang</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
319 void        <a href="libxml-tree.html#xmlNodeSetLang">xmlNodeSetLang</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
320                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);
321 int         <a href="libxml-tree.html#xmlNodeGetSpacePreserve">xmlNodeGetSpacePreserve</a>         (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
322 void        <a href="libxml-tree.html#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a>         (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
323                                              int val);
324 <a href="libxml-tree.html#xmlChar">xmlChar</a>*    <a href="libxml-tree.html#xmlNodeGetBase">xmlNodeGetBase</a>                  (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
325                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
326 void        <a href="libxml-tree.html#xmlNodeSetBase">xmlNodeSetBase</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
327                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *uri);
328 int         <a href="libxml-tree.html#xmlRemoveProp">xmlRemoveProp</a>                   (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
329 int         <a href="libxml-tree.html#xmlUnsetProp">xmlUnsetProp</a>                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
330                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
331 int         <a href="libxml-tree.html#xmlUnsetNsProp">xmlUnsetNsProp</a>                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
332                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
333                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
334 void        <a href="libxml-tree.html#xmlBufferWriteCHAR">xmlBufferWriteCHAR</a>              (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
335                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);
336 void        <a href="libxml-tree.html#xmlBufferWriteChar">xmlBufferWriteChar</a>              (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
337                                              const char *string);
338 void        <a href="libxml-tree.html#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a>      (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
339                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);
340 int         <a href="libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a>               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
341                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree);
342 void        <a href="libxml-tree.html#xmlDocDumpFormatMemory">xmlDocDumpFormatMemory</a>          (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
343                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
344                                              int *size,
345                                              int format);
346 void        <a href="libxml-tree.html#xmlDocDumpMemory">xmlDocDumpMemory</a>                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
347                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
348                                              int *size);
349 void        <a href="libxml-tree.html#xmlDocDumpMemoryEnc">xmlDocDumpMemoryEnc</a>             (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
350                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
351                                              int *doc_txt_len,
352                                              const char *txt_encoding);
353 void        <a href="libxml-tree.html#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a>       (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
354                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
355                                              int *doc_txt_len,
356                                              const char *txt_encoding,
357                                              int format);
358 int         <a href="libxml-tree.html#xmlDocFormatDump">xmlDocFormatDump</a>                (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
359                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
360                                              int format);
361 int         <a href="libxml-tree.html#xmlDocDump">xmlDocDump</a>                      (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
362                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
363 void        <a href="libxml-tree.html#xmlElemDump">xmlElemDump</a>                     (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
364                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
365                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
366 int         <a href="libxml-tree.html#xmlSaveFile">xmlSaveFile</a>                     (const char *filename,
367                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
368 int         <a href="libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile</a>               (const char *filename,
369                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
370                                              int format);
371 int         <a href="libxml-tree.html#xmlNodeDump">xmlNodeDump</a>                     (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
372                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
373                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
374                                              int level,
375                                              int format);
376 int         <a href="libxml-tree.html#xmlSaveFileTo">xmlSaveFileTo</a>                   (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
377                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
378                                              const char *encoding);
379 int         <a href="libxml-tree.html#xmlSaveFormatFileTo">xmlSaveFormatFileTo</a>             (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
380                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
381                                              const char *encoding,
382                                              int format);
383 void        <a href="libxml-tree.html#xmlNodeDumpOutput">xmlNodeDumpOutput</a>               (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
384                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
385                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
386                                              int level,
387                                              int format,
388                                              const char *encoding);
389 int         <a href="libxml-tree.html#xmlSaveFormatFileEnc">xmlSaveFormatFileEnc</a>            (const char *filename,
390                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
391                                              const char *encoding,
392                                              int format);
393 int         <a href="libxml-tree.html#xmlSaveFileEnc">xmlSaveFileEnc</a>                  (const char *filename,
394                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
395                                              const char *encoding);
396 int         <a href="libxml-tree.html#xmlIsXHTML">xmlIsXHTML</a>                      (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *systemID,
397                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *publicID);
398 int         <a href="libxml-tree.html#xmlGetDocCompressMode">xmlGetDocCompressMode</a>           (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
399 void        <a href="libxml-tree.html#xmlSetDocCompressMode">xmlSetDocCompressMode</a>           (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
400                                              int mode);
401 int         <a href="libxml-tree.html#xmlGetCompressMode">xmlGetCompressMode</a>              (void);
402 void        <a href="libxml-tree.html#xmlSetCompressMode">xmlSetCompressMode</a>              (int mode);
403 </pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
404
405 </p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlParserInputBuffer"></a>struct xmlParserInputBuffer</h3><pre class="programlisting">struct xmlParserInputBuffer {
406     void*                  context;
407     xmlInputReadCallback   readcallback;
408     xmlInputCloseCallback  closecallback;
409     
410     xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
411     
412     xmlBufferPtr buffer;    /* Local buffer encoded in UTF-8 */
413     xmlBufferPtr raw;       /* if encoder != NULL buffer for raw input */
414 };
415 </pre><p>
416
417 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInputBufferPtr"></a>xmlParserInputBufferPtr</h3><pre class="programlisting">typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
418 </pre><p>
419
420 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlOutputBuffer"></a>struct xmlOutputBuffer</h3><pre class="programlisting">struct xmlOutputBuffer {
421     void*                   context;
422     xmlOutputWriteCallback  writecallback;
423     xmlOutputCloseCallback  closecallback;
424     
425     xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
426     
427     xmlBufferPtr buffer;    /* Local buffer encoded in UTF-8 or ISOLatin */
428     xmlBufferPtr conv;      /* if encoder != NULL buffer for output */
429     int written;            /* total number of byte written */
430 };
431 </pre><p>
432
433 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlOutputBufferPtr"></a>xmlOutputBufferPtr</h3><pre class="programlisting">typedef xmlOutputBuffer *xmlOutputBufferPtr;
434 </pre><p>
435
436 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInput"></a>struct xmlParserInput</h3><pre class="programlisting">struct xmlParserInput {
437     /* Input buffer */
438     xmlParserInputBufferPtr buf;      /* UTF-8 encoded buffer */
439
440     const char *filename;             /* The file analyzed, if any */
441     const char *directory;            /* the directory/base of the file */
442     const xmlChar *base;              /* Base of the array to parse */
443     const xmlChar *cur;               /* Current char being parsed */
444     const xmlChar *end;               /* end of the array to parse */
445     int length;                       /* length if known */
446     int line;                         /* Current line */
447     int col;                          /* Current column */
448     /*
449      * NOTE: consumed is only tested for equality in the parser code,
450      *       so even if there is an overflow this should not give troubles
451      *       for parsing very large instances.
452      */
453     unsigned long consumed;           /* How many xmlChars already consumed */
454     xmlParserInputDeallocate free;    /* function to deallocate the base */
455     const xmlChar *encoding;          /* the encoding string for entity */
456     const xmlChar *version;           /* the version string for entity */
457     int standalone;                   /* Was that entity marked standalone */
458 };
459 </pre><p>
460 An xmlParserInput is an input flow for the XML processor.
461 Each entity parsed is associated an xmlParserInput (except the
462 few predefined ones). This is the case both for internal entities
463 - in which case the flow is already completely in memory - or
464 external entities - in which case we use the buf structure for
465 progressive reading and I18N conversions to the internal UTF-8 format.</p><p>
466
467 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInputPtr"></a>xmlParserInputPtr</h3><pre class="programlisting">typedef xmlParserInput *xmlParserInputPtr;
468 </pre><p>
469
470 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserCtxt"></a>struct xmlParserCtxt</h3><pre class="programlisting">struct xmlParserCtxt {
471     struct _xmlSAXHandler *sax;       /* The SAX handler */
472     void            *userData;        /* For SAX interface only, used by DOM build */
473     xmlDocPtr           myDoc;        /* the document being built */
474     int            wellFormed;        /* is the document well formed */
475     int       replaceEntities;        /* shall we replace entities ? */
476     const xmlChar    *version;        /* the XML version string */
477     const xmlChar   *encoding;        /* the declared encoding, if any */
478     int            standalone;        /* standalone document */
479     int                  html;        /* an HTML(1)/Docbook(2) document */
480
481     /* Input stream stack */
482     xmlParserInputPtr  input;         /* Current input stream */
483     int                inputNr;       /* Number of current input streams */
484     int                inputMax;      /* Max number of input streams */
485     xmlParserInputPtr *inputTab;      /* stack of inputs */
486
487     /* Node analysis stack only used for DOM building */
488     xmlNodePtr         node;          /* Current parsed Node */
489     int                nodeNr;        /* Depth of the parsing stack */
490     int                nodeMax;       /* Max depth of the parsing stack */
491     xmlNodePtr        *nodeTab;       /* array of nodes */
492
493     int record_info;                  /* Whether node info should be kept */
494     xmlParserNodeInfoSeq node_seq;    /* info about each node parsed */
495
496     int errNo;                        /* error code */
497
498     int     hasExternalSubset;        /* reference and external subset */
499     int             hasPErefs;        /* the internal subset has PE refs */
500     int              external;        /* are we parsing an external entity */
501
502     int                 valid;        /* is the document valid */
503     int              validate;        /* shall we try to validate ? */
504     xmlValidCtxt        vctxt;        /* The validity context */
505
506     xmlParserInputState instate;      /* current type of input */
507     int                 token;        /* next char look-ahead */    
508
509     char           *directory;        /* the data directory */
510
511     /* Node name stack */
512     xmlChar           *name;          /* Current parsed Node */
513     int                nameNr;        /* Depth of the parsing stack */
514     int                nameMax;       /* Max depth of the parsing stack */
515     xmlChar *         *nameTab;       /* array of nodes */
516
517     long               nbChars;       /* number of xmlChar processed */
518     long            checkIndex;       /* used by progressive parsing lookup */
519     int             keepBlanks;       /* ugly but ... */
520     int             disableSAX;       /* SAX callbacks are disabled */
521     int               inSubset;       /* Parsing is in int 1/ext 2 subset */
522     xmlChar *          intSubName;    /* name of subset */
523     xmlChar *          extSubURI;     /* URI of external subset */
524     xmlChar *          extSubSystem;  /* SYSTEM ID of external subset */
525
526     /* xml:space values */
527     int *              space;         /* Should the parser preserve spaces */
528     int                spaceNr;       /* Depth of the parsing stack */
529     int                spaceMax;      /* Max depth of the parsing stack */
530     int *              spaceTab;      /* array of space infos */
531
532     int                depth;         /* to prevent entity substitution loops */
533     xmlParserInputPtr  entity;        /* used to check entities boundaries */
534     int                charset;       /* encoding of the in-memory content
535                                          actually an xmlCharEncoding */
536     int                nodelen;       /* Those two fields are there to */
537     int                nodemem;       /* Speed up large node parsing */
538     int                pedantic;      /* signal pedantic warnings */
539     void              *_private;      /* For user data, libxml won't touch it */
540
541     int                loadsubset;    /* should the external subset be loaded */
542     int                linenumbers;   /* set line number in element content */
543     void              *catalogs;       /* document's own catalog */
544     int                recovery;      /* run in recovery mode */
545     int                progressive;   /* is this a progressive parsing */
546 };
547 </pre><p>
548 The parser context.
549 NOTE This doesn't completely define the parser state, the (current ?)
550      design of the parser uses recursive function calls since this allow
551      and easy mapping from the production rules of the specification
552      to the actual code. The drawback is that the actual function call
553      also reflect the parser state. However most of the parsing routines
554      takes as the only argument the parser context pointer, so migrating
555      to a state based parser for progressive parsing shouldn't be too hard.</p><p>
556
557 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserCtxtPtr"></a>xmlParserCtxtPtr</h3><pre class="programlisting">typedef xmlParserCtxt *xmlParserCtxtPtr;
558 </pre><p>
559
560 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXLocator"></a>struct xmlSAXLocator</h3><pre class="programlisting">struct xmlSAXLocator {
561     const xmlChar *(*getPublicId)(void *ctx);
562     const xmlChar *(*getSystemId)(void *ctx);
563     int (*getLineNumber)(void *ctx);
564     int (*getColumnNumber)(void *ctx);
565 };
566 </pre><p>
567 A SAX Locator.</p><p>
568
569 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXLocatorPtr"></a>xmlSAXLocatorPtr</h3><pre class="programlisting">typedef xmlSAXLocator *xmlSAXLocatorPtr;
570 </pre><p>
571
572 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXHandler"></a>struct xmlSAXHandler</h3><pre class="programlisting">struct xmlSAXHandler {
573     internalSubsetSAXFunc internalSubset;
574     isStandaloneSAXFunc isStandalone;
575     hasInternalSubsetSAXFunc hasInternalSubset;
576     hasExternalSubsetSAXFunc hasExternalSubset;
577     resolveEntitySAXFunc resolveEntity;
578     getEntitySAXFunc getEntity;
579     entityDeclSAXFunc entityDecl;
580     notationDeclSAXFunc notationDecl;
581     attributeDeclSAXFunc attributeDecl;
582     elementDeclSAXFunc elementDecl;
583     unparsedEntityDeclSAXFunc unparsedEntityDecl;
584     setDocumentLocatorSAXFunc setDocumentLocator;
585     startDocumentSAXFunc startDocument;
586     endDocumentSAXFunc endDocument;
587     startElementSAXFunc startElement;
588     endElementSAXFunc endElement;
589     referenceSAXFunc reference;
590     charactersSAXFunc characters;
591     ignorableWhitespaceSAXFunc ignorableWhitespace;
592     processingInstructionSAXFunc processingInstruction;
593     commentSAXFunc comment;
594     warningSAXFunc warning;
595     errorSAXFunc error;
596     fatalErrorSAXFunc fatalError; /* unused error() get all the errors */
597     getParameterEntitySAXFunc getParameterEntity;
598     cdataBlockSAXFunc cdataBlock;
599     externalSubsetSAXFunc externalSubset;
600     int initialized;
601 };
602 </pre><p>
603 A SAX handler is bunch of callbacks called by the parser when processing
604 of the input generate data or structure informations.</p><p>
605
606 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXHandlerPtr"></a>xmlSAXHandlerPtr</h3><pre class="programlisting">typedef xmlSAXHandler *xmlSAXHandlerPtr;
607 </pre><p>
608
609 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEntity"></a>struct xmlEntity</h3><pre class="programlisting">struct xmlEntity {
610     void           *_private;           /* application data */
611     xmlElementType          type;       /* XML_ENTITY_DECL, must be second ! */
612     const xmlChar          *name;       /* Entity name */
613     struct _xmlNode    *children;       /* First child link */
614     struct _xmlNode        *last;       /* Last child link */
615     struct _xmlDtd       *parent;       /* -&gt; DTD */
616     struct _xmlNode        *next;       /* next sibling link  */
617     struct _xmlNode        *prev;       /* previous sibling link  */
618     struct _xmlDoc          *doc;       /* the containing document */
619
620     xmlChar                *orig;       /* content without ref substitution */
621     xmlChar             *content;       /* content or ndata if unparsed */
622     int                   length;       /* the content length */
623     xmlEntityType          etype;       /* The entity type */
624     const xmlChar    *ExternalID;       /* External identifier for PUBLIC */
625     const xmlChar      *SystemID;       /* URI for a SYSTEM or PUBLIC Entity */
626
627     struct _xmlEntity     *nexte;       /* unused */
628     const xmlChar           *URI;       /* the full URI as computed */
629     int                    owner;       /* does the entity own the childrens */
630 };
631 </pre><p>
632
633 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEntityPtr"></a>xmlEntityPtr</h3><pre class="programlisting">typedef xmlEntity *xmlEntityPtr;
634 </pre><p>
635
636 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="BASE-BUFFER-SIZE-CAPS"></a>BASE_BUFFER_SIZE</h3><pre class="programlisting">#define BASE_BUFFER_SIZE 4000
637 </pre><p>
638 default buffer size 4000.</p><p>
639
640 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-XML-NAMESPACE-CAPS"></a>XML_XML_NAMESPACE</h3><pre class="programlisting">#define     XML_XML_NAMESPACE</pre><p>
641 This is the namespace for the special xml: prefix predefined in the
642 XML Namespace specification.</p><p>
643
644 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementType"></a>enum xmlElementType</h3><pre class="programlisting">typedef enum {
645     XML_ELEMENT_NODE=           1,
646     XML_ATTRIBUTE_NODE=         2,
647     XML_TEXT_NODE=              3,
648     XML_CDATA_SECTION_NODE=     4,
649     XML_ENTITY_REF_NODE=        5,
650     XML_ENTITY_NODE=            6,
651     XML_PI_NODE=                7,
652     XML_COMMENT_NODE=           8,
653     XML_DOCUMENT_NODE=          9,
654     XML_DOCUMENT_TYPE_NODE=     10,
655     XML_DOCUMENT_FRAG_NODE=     11,
656     XML_NOTATION_NODE=          12,
657     XML_HTML_DOCUMENT_NODE=     13,
658     XML_DTD_NODE=               14,
659     XML_ELEMENT_DECL=           15,
660     XML_ATTRIBUTE_DECL=         16,
661     XML_ENTITY_DECL=            17,
662     XML_NAMESPACE_DECL=         18,
663     XML_XINCLUDE_START=         19,
664     XML_XINCLUDE_END=           20
665 #ifdef LIBXML_DOCB_ENABLED
666    ,XML_DOCB_DOCUMENT_NODE=     21
667 #endif
668 } xmlElementType;
669 </pre><p>
670
671 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlChar"></a>xmlChar</h3><pre class="programlisting">typedef unsigned char xmlChar;
672 </pre><p>
673 This is a basic byte in an UTF-8 encoded string.
674 It's unsigned allowing to pinpoint case where char * are assigned
675 to xmlChar * (possibly making serialization back impossible).</p><p>
676
677 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="BAD-CAST-CAPS"></a>BAD_CAST</h3><pre class="programlisting">#define BAD_CAST (xmlChar *)
678 </pre><p>
679 Macro to cast a string to an xmlChar * when one know its safe.</p><p>
680
681 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNotation"></a>struct xmlNotation</h3><pre class="programlisting">struct xmlNotation {
682     const xmlChar               *name;          /* Notation name */
683     const xmlChar               *PublicID;      /* Public identifier, if any */
684     const xmlChar               *SystemID;      /* System identifier, if any */
685 };
686 </pre><p>
687 A DTD Notation definition.</p><p>
688
689 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNotationPtr"></a>xmlNotationPtr</h3><pre class="programlisting">typedef xmlNotation *xmlNotationPtr;
690 </pre><p>
691
692 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributeType"></a>enum xmlAttributeType</h3><pre class="programlisting">typedef enum {
693     XML_ATTRIBUTE_CDATA = 1,
694     XML_ATTRIBUTE_ID,
695     XML_ATTRIBUTE_IDREF ,
696     XML_ATTRIBUTE_IDREFS,
697     XML_ATTRIBUTE_ENTITY,
698     XML_ATTRIBUTE_ENTITIES,
699     XML_ATTRIBUTE_NMTOKEN,
700     XML_ATTRIBUTE_NMTOKENS,
701     XML_ATTRIBUTE_ENUMERATION,
702     XML_ATTRIBUTE_NOTATION
703 } xmlAttributeType;
704 </pre><p>
705 A DTD Attribute type definition.</p><p>
706
707 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributeDefault"></a>enum xmlAttributeDefault</h3><pre class="programlisting">typedef enum {
708     XML_ATTRIBUTE_NONE = 1,
709     XML_ATTRIBUTE_REQUIRED,
710     XML_ATTRIBUTE_IMPLIED,
711     XML_ATTRIBUTE_FIXED
712 } xmlAttributeDefault;
713 </pre><p>
714 A DTD Attribute default definition.</p><p>
715
716 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEnumeration"></a>struct xmlEnumeration</h3><pre class="programlisting">struct xmlEnumeration {
717     struct _xmlEnumeration    *next;    /* next one */
718     const xmlChar            *name;     /* Enumeration name */
719 };
720 </pre><p>
721 List structure used when there is an enumeration in DTDs.</p><p>
722
723 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEnumerationPtr"></a>xmlEnumerationPtr</h3><pre class="programlisting">typedef xmlEnumeration *xmlEnumerationPtr;
724 </pre><p>
725
726 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttribute"></a>struct xmlAttribute</h3><pre class="programlisting">struct xmlAttribute {
727     void           *_private;           /* application data */
728     xmlElementType          type;       /* XML_ATTRIBUTE_DECL, must be second ! */
729     const xmlChar          *name;       /* Attribute name */
730     struct _xmlNode    *children;       /* NULL */
731     struct _xmlNode        *last;       /* NULL */
732     struct _xmlDtd       *parent;       /* -&gt; DTD */
733     struct _xmlNode        *next;       /* next sibling link  */
734     struct _xmlNode        *prev;       /* previous sibling link  */
735     struct _xmlDoc          *doc;       /* the containing document */
736
737     struct _xmlAttribute  *nexth;       /* next in hash table */
738     xmlAttributeType       atype;       /* The attribute type */
739     xmlAttributeDefault      def;       /* the default */
740     const xmlChar  *defaultValue;       /* or the default value */
741     xmlEnumerationPtr       tree;       /* or the enumeration tree if any */
742     const xmlChar        *prefix;       /* the namespace prefix if any */
743     const xmlChar          *elem;       /* Element holding the attribute */
744 };
745 </pre><p>
746 An Attribute declaration in a DTD.</p><p>
747
748 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributePtr"></a>xmlAttributePtr</h3><pre class="programlisting">typedef xmlAttribute *xmlAttributePtr;
749 </pre><p>
750
751 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentType"></a>enum xmlElementContentType</h3><pre class="programlisting">typedef enum {
752     XML_ELEMENT_CONTENT_PCDATA = 1,
753     XML_ELEMENT_CONTENT_ELEMENT,
754     XML_ELEMENT_CONTENT_SEQ,
755     XML_ELEMENT_CONTENT_OR
756 } xmlElementContentType;
757 </pre><p>
758 Possible definitions of element content types.</p><p>
759
760 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentOccur"></a>enum xmlElementContentOccur</h3><pre class="programlisting">typedef enum {
761     XML_ELEMENT_CONTENT_ONCE = 1,
762     XML_ELEMENT_CONTENT_OPT,
763     XML_ELEMENT_CONTENT_MULT,
764     XML_ELEMENT_CONTENT_PLUS
765 } xmlElementContentOccur;
766 </pre><p>
767 Possible definitions of element content occurrences.</p><p>
768
769 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContent"></a>struct xmlElementContent</h3><pre class="programlisting">struct xmlElementContent {
770     xmlElementContentType     type;     /* PCDATA, ELEMENT, SEQ or OR */
771     xmlElementContentOccur    ocur;     /* ONCE, OPT, MULT or PLUS */
772     const xmlChar             *name;    /* Element name */
773     struct _xmlElementContent *c1;      /* first child */
774     struct _xmlElementContent *c2;      /* second child */
775     struct _xmlElementContent *parent;  /* parent */
776     const xmlChar             *prefix;  /* Namespace prefix */
777 };
778 </pre><p>
779 An XML Element content as stored after parsing an element definition
780 in a DTD.</p><p>
781
782 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentPtr"></a>xmlElementContentPtr</h3><pre class="programlisting">typedef xmlElementContent *xmlElementContentPtr;
783 </pre><p>
784
785 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementTypeVal"></a>enum xmlElementTypeVal</h3><pre class="programlisting">typedef enum {
786     XML_ELEMENT_TYPE_UNDEFINED = 0,
787     XML_ELEMENT_TYPE_EMPTY = 1,
788     XML_ELEMENT_TYPE_ANY,
789     XML_ELEMENT_TYPE_MIXED,
790     XML_ELEMENT_TYPE_ELEMENT
791 } xmlElementTypeVal;
792 </pre><p>
793 The different possibilities for an element content type.</p><p>
794
795 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElement"></a>struct xmlElement</h3><pre class="programlisting">struct xmlElement {
796     void           *_private;           /* application data */
797     xmlElementType          type;       /* XML_ELEMENT_DECL, must be second ! */
798     const xmlChar          *name;       /* Element name */
799     struct _xmlNode    *children;       /* NULL */
800     struct _xmlNode        *last;       /* NULL */
801     struct _xmlDtd       *parent;       /* -&gt; DTD */
802     struct _xmlNode        *next;       /* next sibling link  */
803     struct _xmlNode        *prev;       /* previous sibling link  */
804     struct _xmlDoc          *doc;       /* the containing document */
805
806     xmlElementTypeVal      etype;       /* The type */
807     xmlElementContentPtr content;       /* the allowed element content */
808     xmlAttributePtr   attributes;       /* List of the declared attributes */
809     const xmlChar        *prefix;       /* the namespace prefix if any */
810 #ifdef LIBXML_REGEXP_ENABLED
811     xmlRegexpPtr       contModel;       /* the validating regexp */
812 #else
813     void              *contModel;
814 #endif
815 };
816 </pre><p>
817 An XML Element declaration from a DTD.</p><p>
818
819 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementPtr"></a>xmlElementPtr</h3><pre class="programlisting">typedef xmlElement *xmlElementPtr;
820 </pre><p>
821
822 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-LOCAL-NAMESPACE-CAPS"></a>XML_LOCAL_NAMESPACE</h3><pre class="programlisting">#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
823 </pre><p>
824 A namespace declaration node.</p><p>
825
826 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNsType"></a>xmlNsType</h3><pre class="programlisting">typedef xmlElementType xmlNsType;
827 </pre><p>
828
829 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNs"></a>struct xmlNs</h3><pre class="programlisting">struct xmlNs {
830     struct _xmlNs  *next;       /* next Ns link for this node  */
831     xmlNsType      type;        /* global or local */
832     const xmlChar *href;        /* URL for the namespace */
833     const xmlChar *prefix;      /* prefix for the namespace */
834     void           *_private;   /* application data */
835 };
836 </pre><p>
837 An XML namespace.
838 Note that prefix == NULL is valid, it defines the default namespace
839 within the subtree (until overridden).
840 </p><p>
841 xmlNsType is unified with xmlElementType.</p><p>
842
843 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNsPtr"></a>xmlNsPtr</h3><pre class="programlisting">typedef xmlNs *xmlNsPtr;
844 </pre><p>
845
846 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDtd"></a>struct xmlDtd</h3><pre class="programlisting">struct xmlDtd {
847     void           *_private;   /* application data */
848     xmlElementType  type;       /* XML_DTD_NODE, must be second ! */
849     const xmlChar *name;        /* Name of the DTD */
850     struct _xmlNode *children;  /* the value of the property link */
851     struct _xmlNode *last;      /* last child link */
852     struct _xmlDoc  *parent;    /* child-&gt;parent link */
853     struct _xmlNode *next;      /* next sibling link  */
854     struct _xmlNode *prev;      /* previous sibling link  */
855     struct _xmlDoc  *doc;       /* the containing document */
856
857     /* End of common part */
858     void          *notations;   /* Hash table for notations if any */
859     void          *elements;    /* Hash table for elements if any */
860     void          *attributes;  /* Hash table for attributes if any */
861     void          *entities;    /* Hash table for entities if any */
862     const xmlChar *ExternalID;  /* External identifier for PUBLIC DTD */
863     const xmlChar *SystemID;    /* URI for a SYSTEM or PUBLIC DTD */
864     void          *pentities;   /* Hash table for param entities if any */
865 };
866 </pre><p>
867 An XML DTD, as defined by &lt;!DOCTYPE ... There is actually one for
868 the internal subset and for the external subset.</p><p>
869
870 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDtdPtr"></a>xmlDtdPtr</h3><pre class="programlisting">typedef xmlDtd *xmlDtdPtr;
871 </pre><p>
872
873 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttr"></a>struct xmlAttr</h3><pre class="programlisting">struct xmlAttr {
874     void           *_private;   /* application data */
875     xmlElementType   type;      /* XML_ATTRIBUTE_NODE, must be second ! */
876     const xmlChar   *name;      /* the name of the property */
877     struct _xmlNode *children;  /* the value of the property */
878     struct _xmlNode *last;      /* NULL */
879     struct _xmlNode *parent;    /* child-&gt;parent link */
880     struct _xmlAttr *next;      /* next sibling link  */
881     struct _xmlAttr *prev;      /* previous sibling link  */
882     struct _xmlDoc  *doc;       /* the containing document */
883     xmlNs           *ns;        /* pointer to the associated namespace */
884     xmlAttributeType atype;     /* the attribute type if validating */
885 };
886 </pre><p>
887 An attribute on an XML node.</p><p>
888
889 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttrPtr"></a>xmlAttrPtr</h3><pre class="programlisting">typedef xmlAttr *xmlAttrPtr;
890 </pre><p>
891
892 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlID"></a>struct xmlID</h3><pre class="programlisting">struct xmlID {
893     struct _xmlID    *next;     /* next ID */
894     const xmlChar    *value;    /* The ID name */
895     xmlAttrPtr        attr;     /* The attribute holding it */
896     const xmlChar    *name;     /* The attribute if attr is not available */
897     int               lineno;   /* The line number if attr is not available */
898 };
899 </pre><p>
900 An XML ID instance.</p><p>
901
902 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIDPtr"></a>xmlIDPtr</h3><pre class="programlisting">typedef xmlID *xmlIDPtr;
903 </pre><p>
904
905 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRef"></a>struct xmlRef</h3><pre class="programlisting">struct xmlRef {
906     struct _xmlRef    *next;    /* next Ref */
907     const xmlChar     *value;   /* The Ref name */
908     xmlAttrPtr        attr;     /* The attribute holding it */
909     const xmlChar    *name;     /* The attribute if attr is not available */
910     int               lineno;   /* The line number if attr is not available */
911 };
912 </pre><p>
913 An XML IDREF instance.</p><p>
914
915 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRefPtr"></a>xmlRefPtr</h3><pre class="programlisting">typedef xmlRef *xmlRefPtr;
916 </pre><p>
917
918 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAllocationScheme"></a>enum xmlBufferAllocationScheme</h3><pre class="programlisting">typedef enum {
919     XML_BUFFER_ALLOC_DOUBLEIT,
920     XML_BUFFER_ALLOC_EXACT
921 } xmlBufferAllocationScheme;
922 </pre><p>
923 A buffer allocation scheme can be defined to either match exactly the
924 need or double it's allocated size each time it is found too small.</p><p>
925
926 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBuffer"></a>struct xmlBuffer</h3><pre class="programlisting">struct xmlBuffer {
927     xmlChar *content;           /* The buffer content UTF8 */
928     unsigned int use;           /* The buffer size used */
929     unsigned int size;          /* The buffer size */
930     xmlBufferAllocationScheme alloc; /* The realloc method */
931 };
932 </pre><p>
933 A buffer structure.</p><p>
934
935 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferPtr"></a>xmlBufferPtr</h3><pre class="programlisting">typedef xmlBuffer *xmlBufferPtr;
936 </pre><p>
937
938 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNode"></a>struct xmlNode</h3><pre class="programlisting">struct xmlNode {
939     void           *_private;   /* application data */
940     xmlElementType   type;      /* type number, must be second ! */
941     const xmlChar   *name;      /* the name of the node, or the entity */
942     struct _xmlNode *children;  /* parent-&gt;childs link */
943     struct _xmlNode *last;      /* last child link */
944     struct _xmlNode *parent;    /* child-&gt;parent link */
945     struct _xmlNode *next;      /* next sibling link  */
946     struct _xmlNode *prev;      /* previous sibling link  */
947     struct _xmlDoc  *doc;       /* the containing document */
948
949     /* End of common part */
950     xmlNs           *ns;        /* pointer to the associated namespace */
951     xmlChar         *content;   /* the content */
952     struct _xmlAttr *properties;/* properties list */
953     xmlNs           *nsDef;     /* namespace definitions on this node */
954 };
955 </pre><p>
956 A node in an XML tree.</p><p>
957
958 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodePtr"></a>xmlNodePtr</h3><pre class="programlisting">typedef xmlNode *xmlNodePtr;
959 </pre><p>
960
961 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-GET-CONTENT-CAPS"></a>XML_GET_CONTENT()</h3><pre class="programlisting">#define     XML_GET_CONTENT(n)</pre><p>
962 Macro to extract the content pointer of a node.</p><p>
963
964 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>n</tt></i> :</span></td><td>
965
966
967 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-GET-LINE-CAPS"></a>XML_GET_LINE()</h3><pre class="programlisting">#define     XML_GET_LINE(n)</pre><p>
968 Macro to extract the line number of an element node. 
969 This will work only if line numbering is activated by
970 calling xmlLineNumbersDefault(1) before parsing.</p><p>
971
972 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>n</tt></i> :</span></td><td>
973
974
975 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDoc"></a>struct xmlDoc</h3><pre class="programlisting">struct xmlDoc {
976     void           *_private;   /* application data */
977     xmlElementType  type;       /* XML_DOCUMENT_NODE, must be second ! */
978     char           *name;       /* name/filename/URI of the document */
979     struct _xmlNode *children;  /* the document tree */
980     struct _xmlNode *last;      /* last child link */
981     struct _xmlNode *parent;    /* child-&gt;parent link */
982     struct _xmlNode *next;      /* next sibling link  */
983     struct _xmlNode *prev;      /* previous sibling link  */
984     struct _xmlDoc  *doc;       /* autoreference to itself */
985
986     /* End of common part */
987     int             compression;/* level of zlib compression */
988     int             standalone; /* standalone document (no external refs) */
989     struct _xmlDtd  *intSubset; /* the document internal subset */
990     struct _xmlDtd  *extSubset; /* the document external subset */
991     struct _xmlNs   *oldNs;     /* Global namespace, the old way */
992     const xmlChar  *version;    /* the XML version string */
993     const xmlChar  *encoding;   /* external initial encoding, if any */
994     void           *ids;        /* Hash table for ID attributes if any */
995     void           *refs;       /* Hash table for IDREFs attributes if any */
996     const xmlChar  *URL;        /* The URI for that document */
997     int             charset;    /* encoding of the in-memory content
998                                    actually an xmlCharEncoding */
999 };
1000 </pre><p>
1001 An XML document.</p><p>
1002
1003 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocPtr"></a>xmlDocPtr</h3><pre class="programlisting">typedef xmlDoc *xmlDocPtr;
1004 </pre><p>
1005
1006 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlChildrenNode"></a>xmlChildrenNode</h3><pre class="programlisting">#define xmlChildrenNode children
1007 </pre><p>
1008 Macro for compatibility naming layer with libxml1.</p><p>
1009
1010 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRootNode"></a>xmlRootNode</h3><pre class="programlisting">#define xmlRootNode children
1011 </pre><p>
1012 Macro for compatibility naming layer with libxml1.</p><p>
1013
1014 </p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateNCName"></a>xmlValidateNCName ()</h3><pre class="programlisting">int         xmlValidateNCName               (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
1015                                              int space);</pre><p>
1016 Check that a value conforms to the lexical space of NCName</p><p>
1017
1018 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
1019 </td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
1020 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
1021         and -1 in case of internal or API error.
1022 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateQName"></a>xmlValidateQName ()</h3><pre class="programlisting">int         xmlValidateQName                (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
1023                                              int space);</pre><p>
1024 Check that a value conforms to the lexical space of QName</p><p>
1025
1026 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
1027 </td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
1028 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
1029         and -1 in case of internal or API error.
1030 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateName"></a>xmlValidateName ()</h3><pre class="programlisting">int         xmlValidateName                 (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
1031                                              int space);</pre><p>
1032 Check that a value conforms to the lexical space of Name</p><p>
1033
1034 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
1035 </td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
1036 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
1037         and -1 in case of internal or API error.
1038 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateNMToken"></a>xmlValidateNMToken ()</h3><pre class="programlisting">int         xmlValidateNMToken              (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
1039                                              int space);</pre><p>
1040 Check that a value conforms to the lexical space of NMToken</p><p>
1041
1042 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
1043 </td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
1044 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
1045         and -1 in case of internal or API error.
1046 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBuildQName"></a>xmlBuildQName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlBuildQName                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ncname,
1047                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix,
1048                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *memory,
1049                                              int len);</pre><p>
1050 Builds the QName <i><tt>prefix</tt></i>:<i><tt>ncname</tt></i> in <i><tt>memory</tt></i> if there is enough space
1051 and prefix is not NULL nor empty, otherwise allocate a new string.
1052 If prefix is NULL or empty it returns ncname.</p><p>
1053
1054 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ncname</tt></i> :</span></td><td>  the Name
1055 </td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>  the prefix
1056 </td></tr><tr><td><span class="term"><i><tt>memory</tt></i> :</span></td><td>  preallocated memory
1057 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  preallocated memory length
1058 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new string which must be freed by the caller if different from
1059         <i><tt>memory</tt></i> and <i><tt>ncname</tt></i> or NULL in case of error
1060 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSplitQName2"></a>xmlSplitQName2 ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlSplitQName2                  (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1061                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);</pre><p>
1062 parse an XML qualified name string
1063 </p><p>
1064 [NS 5] QName ::= (Prefix ':')? LocalPart
1065 </p><p>
1066 [NS 6] Prefix ::= NCName
1067 </p><p>
1068 [NS 7] LocalPart ::= NCName</p><p>
1069
1070 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the full QName
1071 </td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>  a xmlChar ** 
1072 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>NULL if not a QName, otherwise the local part, and prefix
1073   is updated to get the Prefix if any.
1074 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSplitQName3"></a>xmlSplitQName3 ()</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlSplitQName3               (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1075                                              int *len);</pre><p>
1076 parse an XML qualified name string,i</p><p>
1077
1078 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the full QName
1079 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> an int *
1080 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>NULL if it is not a Qualified Name, otherwise, update len
1081         with the lenght in byte of the prefix and return a pointer
1082 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetBufferAllocationScheme"></a>xmlSetBufferAllocationScheme ()</h3><pre class="programlisting">void        xmlSetBufferAllocationScheme    (<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);</pre><p>
1083 Set the buffer allocation method.  Types are
1084 XML_BUFFER_ALLOC_EXACT - use exact sizes, keeps memory usage down
1085 XML_BUFFER_ALLOC_DOUBLEIT - double buffer when extra needed, 
1086                             improves performance</p><p>
1087
1088 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>scheme</tt></i> :</span></td><td>  allocation method to use
1089 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetBufferAllocationScheme"></a>xmlGetBufferAllocationScheme ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> xmlGetBufferAllocationScheme
1090                                             (void);</pre><p>
1091 Types are
1092 XML_BUFFER_ALLOC_EXACT - use exact sizes, keeps memory usage down
1093 XML_BUFFER_ALLOC_DOUBLEIT - double buffer when extra needed, 
1094                             improves performance</p><p>
1095
1096 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the current allocation scheme
1097 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCreate"></a>xmlBufferCreate ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> xmlBufferCreate                (void);</pre><p>
1098 routine to create an XML buffer.</p><p>
1099
1100 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new structure.
1101 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCreateSize"></a>xmlBufferCreateSize ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> xmlBufferCreateSize            (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="size-t">size_t</GTKDOCLINK> size);</pre><p>
1102 routine to create an XML buffer.</p><p>
1103
1104 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> initial size of buffer
1105 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new structure.
1106 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferResize"></a>xmlBufferResize ()</h3><pre class="programlisting">int         xmlBufferResize                 (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1107                                              unsigned int size);</pre><p>
1108 Resize a buffer to accommodate minimum size of <i><tt>size</tt></i>.</p><p>
1109
1110 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to resize
1111 </td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td>  the desired size
1112 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case of problems, 1 otherwise
1113 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferFree"></a>xmlBufferFree ()</h3><pre class="programlisting">void        xmlBufferFree                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
1114 Frees an XML buffer. It frees both the content and the structure which
1115 encapsulate it.</p><p>
1116
1117 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to free
1118 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferDump"></a>xmlBufferDump ()</h3><pre class="programlisting">int         xmlBufferDump                   (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *file,
1119                                              <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
1120 Dumps an XML buffer to  a FILE *.</p><p>
1121
1122 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>file</tt></i> :</span></td><td>  the file output
1123 </td></tr><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to dump
1124 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written
1125 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAdd"></a>xmlBufferAdd ()</h3><pre class="programlisting">void        xmlBufferAdd                    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1126                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
1127                                              int len);</pre><p>
1128 Add a string range to an XML buffer. if len == -1, the length of
1129 str is recomputed.</p><p>
1130
1131 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to dump
1132 </td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td>  the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
1133 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to add
1134 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAddHead"></a>xmlBufferAddHead ()</h3><pre class="programlisting">void        xmlBufferAddHead                (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1135                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
1136                                              int len);</pre><p>
1137 Add a string range to the beginning of an XML buffer.
1138 if len == -1, the length of <i><tt>str</tt></i> is recomputed.</p><p>
1139
1140 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer
1141 </td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td>  the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
1142 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to add
1143 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCat"></a>xmlBufferCat ()</h3><pre class="programlisting">void        xmlBufferCat                    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1144                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str);</pre><p>
1145 Append a zero terminated string to an XML buffer.</p><p>
1146
1147 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to dump
1148 </td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td>  the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
1149 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCCat"></a>xmlBufferCCat ()</h3><pre class="programlisting">void        xmlBufferCCat                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1150                                              const char *str);</pre><p>
1151 Append a zero terminated C string to an XML buffer.</p><p>
1152
1153 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to dump
1154 </td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td>  the C char string
1155 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferShrink"></a>xmlBufferShrink ()</h3><pre class="programlisting">int         xmlBufferShrink                 (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1156                                              unsigned int len);</pre><p>
1157 Remove the beginning of an XML buffer.</p><p>
1158
1159 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to dump
1160 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the number of xmlChar to remove
1161 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> removed, or -1 in case of failure.
1162 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferGrow"></a>xmlBufferGrow ()</h3><pre class="programlisting">int         xmlBufferGrow                   (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1163                                              unsigned int len);</pre><p>
1164 Grow the available space of an XML buffer.</p><p>
1165
1166 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer
1167 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the minimum free size to allocate
1168 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new available space or -1 in case of error
1169 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferEmpty"></a>xmlBufferEmpty ()</h3><pre class="programlisting">void        xmlBufferEmpty                  (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
1170 empty a buffer.</p><p>
1171
1172 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer
1173 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferContent"></a>xmlBufferContent ()</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlBufferContent             (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
1174 Function to extract the content of a buffer</p><p>
1175
1176 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer
1177 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the internal content
1178 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferSetAllocationScheme"></a>xmlBufferSetAllocationScheme ()</h3><pre class="programlisting">void        xmlBufferSetAllocationScheme    (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1179                                              <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);</pre><p>
1180 Sets the allocation scheme for this buffer</p><p>
1181
1182 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer to tune
1183 </td></tr><tr><td><span class="term"><i><tt>scheme</tt></i> :</span></td><td>  allocation scheme to use
1184 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferLength"></a>xmlBufferLength ()</h3><pre class="programlisting">int         xmlBufferLength                 (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
1185 Function to get the length of a buffer</p><p>
1186
1187 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the buffer 
1188 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the length of data in the internal content
1189 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCreateIntSubset"></a>xmlCreateIntSubset ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   xmlCreateIntSubset              (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1190                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1191                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
1192                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);</pre><p>
1193 Create the internal subset of a document</p><p>
1194
1195 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document pointer
1196 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the DTD name
1197 </td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i> :</span></td><td>  the external (PUBLIC) ID
1198 </td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i> :</span></td><td>  the system ID
1199 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new DTD structure
1200 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDtd"></a>xmlNewDtd ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   xmlNewDtd                       (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1201                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1202                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
1203                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);</pre><p>
1204 Creation of a new DTD for the external subset. To create an
1205 internal subset, use <a href="libxml-tree.html#xmlCreateIntSubset">xmlCreateIntSubset</a>().</p><p>
1206
1207 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document pointer
1208 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the DTD name
1209 </td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i> :</span></td><td>  the external ID
1210 </td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i> :</span></td><td>  the system ID
1211 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new DTD structure
1212 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetIntSubset"></a>xmlGetIntSubset ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   xmlGetIntSubset                 (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
1213 Get the internal subset of a document</p><p>
1214
1215 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document pointer
1216 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the DTD structure or NULL if not found
1217 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeDtd"></a>xmlFreeDtd ()</h3><pre class="programlisting">void        xmlFreeDtd                      (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur);</pre><p>
1218 Free a DTD structure.</p><p>
1219
1220 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the DTD structure to free up
1221 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewGlobalNs"></a>xmlNewGlobalNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlNewGlobalNs                  (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1222                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
1223                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);</pre><p>
1224 Creation of a Namespace, the old way using PI and without scoping
1225   DEPRECATED !!!
1226 It now create a namespace on the root element of the document if found.</p><p>
1227
1228 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document carrying the namespace
1229 </td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td>  the URI associated
1230 </td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>  the prefix for the namespace
1231 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>NULL this functionality had been removed
1232 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNs"></a>xmlNewNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlNewNs                        (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1233                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
1234                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);</pre><p>
1235 Creation of a new Namespace. This function will refuse to create
1236 a namespace with a similar prefix than an existing one present on this
1237 node.
1238 We use href==NULL in the case of an element creation where the namespace
1239 was not defined.</p><p>
1240
1241 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the element carrying the namespace
1242 </td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td>  the URI associated
1243 </td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>  the prefix for the namespace
1244 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new namespace pointer or NULL
1245 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNs"></a>xmlFreeNs ()</h3><pre class="programlisting">void        xmlFreeNs                       (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
1246 Free up the structures associated to a namespace</p><p>
1247
1248 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the namespace pointer
1249 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNsList"></a>xmlFreeNsList ()</h3><pre class="programlisting">void        xmlFreeNsList                   (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
1250 Free up all the structures associated to the chained namespaces.</p><p>
1251
1252 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first namespace pointer
1253 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDoc"></a>xmlNewDoc ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>   xmlNewDoc                       (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *version);</pre><p>
1254 Creates a new XML document</p><p>
1255
1256 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>version</tt></i> :</span></td><td>  xmlChar string giving the version of XML "1.0"
1257 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new document
1258 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeDoc"></a>xmlFreeDoc ()</h3><pre class="programlisting">void        xmlFreeDoc                      (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
1259 Free up all the structures used by a document, tree included.</p><p>
1260
1261 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  pointer to the document
1262 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocProp"></a>xmlNewDocProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlNewDocProp                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1263                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1264                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1265 Create a new property carried by a document.</p><p>
1266
1267 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1268 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the attribute
1269 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the attribute
1270 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
1271 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewProp"></a>xmlNewProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlNewProp                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1272                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1273                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1274 Create a new property carried by a node.</p><p>
1275
1276 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the holding node
1277 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the attribute
1278 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the attribute
1279 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
1280 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNsProp"></a>xmlNewNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlNewNsProp                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1281                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1282                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1283                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1284 Create a new property tagged with a namespace and carried by a node.</p><p>
1285
1286 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the holding node
1287 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  the namespace
1288 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the attribute
1289 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the attribute
1290 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
1291 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNsPropEatName"></a>xmlNewNsPropEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlNewNsPropEatName             (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1292                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1293                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1294                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1295 Create a new property tagged with a namespace and carried by a node.</p><p>
1296
1297 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the holding node
1298 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  the namespace
1299 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the attribute
1300 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the attribute
1301 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
1302 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreePropList"></a>xmlFreePropList ()</h3><pre class="programlisting">void        xmlFreePropList                 (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
1303 Free a property and all its siblings, all the children are freed too.</p><p>
1304
1305 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first property in the list
1306 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeProp"></a>xmlFreeProp ()</h3><pre class="programlisting">void        xmlFreeProp                     (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
1307 Free one attribute, all the content is freed too</p><p>
1308
1309 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  an attribute
1310 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyProp"></a>xmlCopyProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlCopyProp                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
1311                                              <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
1312 Do a copy of the attribute.</p><p>
1313
1314 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>target</tt></i> :</span></td><td>  the element where the attribute will be grafted
1315 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the attribute
1316 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>, or NULL in case of error.
1317 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyPropList"></a>xmlCopyPropList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlCopyPropList                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
1318                                              <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
1319 Do a copy of an attribute list.</p><p>
1320
1321 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>target</tt></i> :</span></td><td>  the element where the attributes will be grafted
1322 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first attribute
1323 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>, or NULL in case of error.
1324 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyDtd"></a>xmlCopyDtd ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>   xmlCopyDtd                      (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd);</pre><p>
1325 Do a copy of the dtd.</p><p>
1326
1327 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>dtd</tt></i> :</span></td><td>  the dtd
1328 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>, or NULL in case of error.
1329 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyDoc"></a>xmlCopyDoc ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>   xmlCopyDoc                      (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1330                                              int recursive);</pre><p>
1331 Do a copy of the document info. If recursive, the content tree will
1332 be copied too as well as DTD, namespaces and entities.</p><p>
1333
1334 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1335 </td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td>  if 1 do a recursive copy.
1336 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>, or NULL in case of error.
1337 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocNode"></a>xmlNewDocNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocNode                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1338                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1339                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1340                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1341 Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
1342 are optional (NULL).
1343 NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
1344       references, but XML special chars need to be escaped first by using
1345       <a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a>() if you don't
1346       need entities support.</p><p>
1347
1348 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1349 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  namespace if any
1350 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the node name
1351 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the XML text content if any
1352 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1353 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocNodeEatName"></a>xmlNewDocNodeEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocNodeEatName            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1354                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1355                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1356                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1357 Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
1358 are optional (NULL).
1359 NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
1360       references, but XML special chars need to be escaped first by using
1361       <a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a>() if you don't
1362       need entities support.</p><p>
1363
1364 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1365 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  namespace if any
1366 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the node name
1367 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the XML text content if any
1368 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1369 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocRawNode"></a>xmlNewDocRawNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocRawNode                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1370                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1371                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1372                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1373 Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
1374 are optional (NULL).</p><p>
1375
1376 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1377 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  namespace if any
1378 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the node name
1379 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content if any
1380 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1381 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNode"></a>xmlNewNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewNode                      (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1382                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1383 Creation of a new node element. <i><tt>ns</tt></i> is optional (NULL).</p><p>
1384
1385 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  namespace if any
1386 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the node name
1387 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1388 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNodeEatName"></a>xmlNewNodeEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewNodeEatName               (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1389                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1390 Creation of a new node element. <i><tt>ns</tt></i> is optional (NULL).</p><p>
1391
1392 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  namespace if any
1393 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the node name
1394 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1395 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewChild"></a>xmlNewChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewChild                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
1396                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1397                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1398                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1399 Creation of a new child element, added at the end of <i><tt>parent</tt></i> children list.
1400 <i><tt>ns</tt></i> and <i><tt>content</tt></i> parameters are optional (NULL). If content is non NULL,
1401 a child list containing the TEXTs and ENTITY_REFs node will be created.
1402 NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
1403       references, but XML special chars need to be escaped first by using
1404       <a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a>() if entities
1405       support is not needed.</p><p>
1406
1407 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td>  the parent node
1408 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  a namespace if any
1409 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the child
1410 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the XML content of the child if any.
1411 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1412 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextChild"></a>xmlNewTextChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewTextChild                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
1413                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1414                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1415                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1416 Creation of a new child element, added at the end of <i><tt>parent</tt></i> children list.
1417 <i><tt>ns</tt></i> and <i><tt>content</tt></i> parameters are optional (NULL). If content is non NULL,
1418 a child TEXT node will be created containing the string content.</p><p>
1419
1420 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td>  the parent node
1421 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  a namespace if any
1422 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the name of the child
1423 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content of the child if any.
1424 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1425 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocText"></a>xmlNewDocText ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocText                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1426                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1427 Creation of a new text node within a document.</p><p>
1428
1429 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
1430 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content
1431 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1432 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewText"></a>xmlNewText ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewText                      (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1433 Creation of a new text node.</p><p>
1434
1435 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content
1436 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1437 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewPI"></a>xmlNewPI ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewPI                        (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1438                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1439 Creation of a processing instruction element.</p><p>
1440
1441 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the processing instruction name
1442 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the PI content
1443 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1444 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocTextLen"></a>xmlNewDocTextLen ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocTextLen                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1445                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1446                                              int len);</pre><p>
1447 Creation of a new text node with an extra content length parameter. The
1448 text node pertain to a given document.</p><p>
1449
1450 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
1451 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content
1452 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the text len.
1453 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1454 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextLen"></a>xmlNewTextLen ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewTextLen                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1455                                              int len);</pre><p>
1456 Creation of a new text node with an extra parameter for the content's length</p><p>
1457
1458 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the text content
1459 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the text len.
1460 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1461 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocComment"></a>xmlNewDocComment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocComment                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1462                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1463 Creation of a new node containing a comment within a document.</p><p>
1464
1465 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1466 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the comment content
1467 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1468 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewComment"></a>xmlNewComment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewComment                   (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1469 Creation of a new node containing a comment.</p><p>
1470
1471 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the comment content
1472 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1473 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewCDataBlock"></a>xmlNewCDataBlock ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewCDataBlock                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1474                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1475                                              int len);</pre><p>
1476 Creation of a new node containing a CDATA block.</p><p>
1477
1478 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1479 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the CDATA block content content
1480 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the length of the block
1481 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1482 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewCharRef"></a>xmlNewCharRef ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewCharRef                   (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1483                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1484 Creation of a new character reference node.</p><p>
1485
1486 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
1487 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the char ref string, starting with # or "&amp;# ... ;"
1488 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1489 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewReference"></a>xmlNewReference ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewReference                 (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1490                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1491 Creation of a new reference node.</p><p>
1492
1493 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
1494 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the reference name, or the reference string with &amp; and ;
1495 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1496 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNode"></a>xmlCopyNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlCopyNode                     (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1497                                              int recursive);</pre><p>
1498 Do a copy of the node.</p><p>
1499
1500 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1501 </td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td>  if 1 do a recursive copy.
1502 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
1503 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocCopyNode"></a>xmlDocCopyNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlDocCopyNode                  (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1504                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1505                                              int recursive);</pre><p>
1506 Do a copy of the node to a given document.</p><p>
1507
1508 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1509 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1510 </td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td>  if 1 do a recursive copy.
1511 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
1512 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNodeList"></a>xmlCopyNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlCopyNodeList                 (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1513 Do a recursive copy of the node list.</p><p>
1514
1515 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the first node in the list.
1516 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
1517 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocFragment"></a>xmlNewDocFragment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlNewDocFragment               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
1518 Creation of a new Fragment node.</p><p>
1519
1520 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document owning the fragment
1521 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
1522 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetLineNo"></a>xmlGetLineNo ()</h3><pre class="programlisting"><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="long">long</GTKDOCLINK>        xmlGetLineNo                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1523 Get line number of node. this requires activation of this option
1524 before invoking the parser by calling xmlLineNumbersDefault(1)</p><p>
1525
1526 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> valid node
1527 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the line number if successful, -1 otherwise
1528 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNodePath"></a>xmlGetNodePath ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlGetNodePath                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1529 Build a structure based Path for the given node</p><p>
1530
1531 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> a node
1532 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new path or NULL in case of error. The caller must free
1533     the returned string
1534 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocGetRootElement"></a>xmlDocGetRootElement ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlDocGetRootElement            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
1535 Get the root element of the document (doc-&gt;children is a list
1536 containing possibly comments, PIs, etc ...).</p><p>
1537
1538 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1539 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> for the root or NULL
1540 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetLastChild"></a>xmlGetLastChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlGetLastChild                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent);</pre><p>
1541 Search the last child of a node.</p><p>
1542
1543 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td>  the parent node
1544 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the last child or NULL if none.
1545 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeIsText"></a>xmlNodeIsText ()</h3><pre class="programlisting">int         xmlNodeIsText                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1546 Is this node a Text node ?</p><p>
1547
1548 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1549 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 yes, 0 no
1550 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsBlankNode"></a>xmlIsBlankNode ()</h3><pre class="programlisting">int         xmlIsBlankNode                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1551 Checks whether this node is an empty or whitespace only
1552 (and possibly ignorable) text-node.</p><p>
1553
1554 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1555 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 yes, 0 no
1556 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocSetRootElement"></a>xmlDocSetRootElement ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlDocSetRootElement            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1557                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root);</pre><p>
1558 Set the root element of the document (doc-&gt;children is a list
1559 containing possibly comments, PIs, etc ...).</p><p>
1560
1561 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1562 </td></tr><tr><td><span class="term"><i><tt>root</tt></i> :</span></td><td>  the new document root element
1563 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the old root element if any was found
1564 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetName"></a>xmlNodeSetName ()</h3><pre class="programlisting">void        xmlNodeSetName                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1565                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1566 Set (or reset) the name of a node.</p><p>
1567
1568 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being changed
1569 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the new tag name
1570 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddChild"></a>xmlAddChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlAddChild                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
1571                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1572 Add a new node to <i><tt>parent</tt></i>, at the end of the child (or property) list
1573 merging adjacent TEXT nodes (in which case <i><tt>cur</tt></i> is freed)
1574 If the new node is ATTRIBUTE, it is added into properties instead of children.
1575 If there is an attribute with equal name, it is first destroyed.</p><p>
1576
1577 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td>  the parent node
1578 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the child node
1579 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the child or NULL in case of error.
1580 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddChildList"></a>xmlAddChildList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlAddChildList                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
1581                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1582 Add a list of node at the end of the child list of the parent
1583 merging adjacent TEXT nodes (<i><tt>cur</tt></i> may be freed)</p><p>
1584
1585 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td>  the parent node
1586 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first node in the list
1587 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the last child or NULL in case of error.
1588 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlReplaceNode"></a>xmlReplaceNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlReplaceNode                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old,
1589                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1590 Unlink the old node from it's current context, prune the new one
1591 at the same place. If <i><tt>cur</tt></i> was already inserted in a document it is
1592 first unlinked from its existing context.</p><p>
1593
1594 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>old</tt></i> :</span></td><td>  the old node
1595 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node
1596 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the <i><tt>old</tt></i> node
1597 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddSibling"></a>xmlAddSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlAddSibling                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1598                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
1599 Add a new element <i><tt>elem</tt></i> to the list of siblings of <i><tt>cur</tt></i>
1600 merging adjacent TEXT nodes (<i><tt>elem</tt></i> may be freed)
1601 If the new element was already inserted in a document it is
1602 first unlinked from its existing context.</p><p>
1603
1604 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the child node
1605 </td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td>  the new node
1606 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new element or NULL in case of error.
1607 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddPrevSibling"></a>xmlAddPrevSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlAddPrevSibling               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1608                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
1609 Add a new node <i><tt>elem</tt></i> as the previous sibling of <i><tt>cur</tt></i>
1610 merging adjacent TEXT nodes (<i><tt>elem</tt></i> may be freed)
1611 If the new node was already inserted in a document it is
1612 first unlinked from its existing context.
1613 If the new node is ATTRIBUTE, it is added into properties instead of children.
1614 If there is an attribute with equal name, it is first destroyed.</p><p>
1615
1616 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the child node
1617 </td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td>  the new node
1618 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new node or NULL in case of error.
1619 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddNextSibling"></a>xmlAddNextSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlAddNextSibling               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1620                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
1621 Add a new node <i><tt>elem</tt></i> as the next sibling of <i><tt>cur</tt></i>
1622 If the new node was already inserted in a document it is
1623 first unlinked from its existing context.
1624 As a result of text merging <i><tt>elem</tt></i> may be freed.
1625 If the new node is ATTRIBUTE, it is added into properties instead of children.
1626 If there is an attribute with equal name, it is first destroyed.</p><p>
1627
1628 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the child node
1629 </td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td>  the new node
1630 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new node or NULL in case of error.
1631 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnlinkNode"></a>xmlUnlinkNode ()</h3><pre class="programlisting">void        xmlUnlinkNode                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1632 Unlink a node from it's current context, the node is not freed</p><p>
1633
1634 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node
1635 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextMerge"></a>xmlTextMerge ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlTextMerge                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first,
1636                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second);</pre><p>
1637 Merge two text nodes into one</p><p>
1638
1639 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>first</tt></i> :</span></td><td>  the first text node
1640 </td></tr><tr><td><span class="term"><i><tt>second</tt></i> :</span></td><td>  the second text node being merged
1641 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the first text node augmented
1642 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextConcat"></a>xmlTextConcat ()</h3><pre class="programlisting">int         xmlTextConcat                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1643                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1644                                              int len);</pre><p>
1645 Concat the given string at the end of the existing node content</p><p>
1646
1647 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1648 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the content
1649 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  <i><tt>content</tt></i> length
1650 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 in case of error, 0 otherwise
1651 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNodeList"></a>xmlFreeNodeList ()</h3><pre class="programlisting">void        xmlFreeNodeList                 (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1652 Free a node and all its siblings, this is a recursive behaviour, all
1653 the children are freed too.</p><p>
1654
1655 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first node in the list
1656 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNode"></a>xmlFreeNode ()</h3><pre class="programlisting">void        xmlFreeNode                     (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1657 Free a node, this is a recursive behaviour, all the children are freed too.
1658 This doesn't unlink the child from the list, use <a href="libxml-tree.html#xmlUnlinkNode">xmlUnlinkNode</a>() first.</p><p>
1659
1660 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node
1661 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetTreeDoc"></a>xmlSetTreeDoc ()</h3><pre class="programlisting">void        xmlSetTreeDoc                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree,
1662                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
1663 update all nodes under the tree to point to the right document</p><p>
1664
1665 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td>  the top element
1666 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1667 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetListDoc"></a>xmlSetListDoc ()</h3><pre class="programlisting">void        xmlSetListDoc                   (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
1668                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
1669 update all nodes in the list to point to the right document</p><p>
1670
1671 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td>  the first element
1672 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1673 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSearchNs"></a>xmlSearchNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlSearchNs                     (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1674                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1675                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
1676 Search a Ns registered under a given name space for a document.
1677 recurse on the parents until it finds the defined namespace
1678 or return NULL otherwise.
1679 <i><tt>nameSpace</tt></i> can be NULL, this is a search for the default namespace.
1680 We don't allow to cross entities boundaries. If you don't declare
1681 the namespace within those you will be in troubles !!! A warning
1682 is generated to cover this case.</p><p>
1683
1684 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1685 </td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the current node
1686 </td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td>  the namespace prefix
1687 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the namespace pointer or NULL.
1688 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSearchNsByHref"></a>xmlSearchNsByHref ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlSearchNsByHref               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1689                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1690                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href);</pre><p>
1691 Search a Ns aliasing a given URI. Recurse on the parents until it finds
1692 the defined namespace or return NULL otherwise.</p><p>
1693
1694 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1695 </td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the current node
1696 </td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td>  the namespace value
1697 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the namespace pointer or NULL.
1698 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNsList"></a>xmlGetNsList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>*   xmlGetNsList                    (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1699                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
1700 Search all the namespace applying to a given element.</p><p>
1701
1702 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1703 </td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the current node
1704 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>an NULL terminated array of all the <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> found
1705         that need to be freed by the caller or NULL if no
1706         namespace if defined
1707 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetNs"></a>xmlSetNs ()</h3><pre class="programlisting">void        xmlSetNs                        (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1708                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns);</pre><p>
1709 Associate a namespace to a node, a posteriori.</p><p>
1710
1711 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  a node in the document
1712 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  a namespace pointer
1713 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNamespace"></a>xmlCopyNamespace ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlCopyNamespace                (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
1714 Do a copy of the namespace.</p><p>
1715
1716 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the namespace
1717 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>, or NULL in case of error.
1718 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNamespaceList"></a>xmlCopyNamespaceList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>    xmlCopyNamespaceList            (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
1719 Do a copy of an namespace list.</p><p>
1720
1721 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the first namespace
1722 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>, or NULL in case of error.
1723 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetProp"></a>xmlSetProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlSetProp                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1724                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1725                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1726 Set (or reset) an attribute carried by a node.</p><p>
1727
1728 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1729 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1730 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the attribute value
1731 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute pointer.
1732 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetProp"></a>xmlGetProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlGetProp                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1733                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1734 Search and get the value of an attribute associated to a node
1735 This does the entity substitution.
1736 This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
1737 default declaration values unless DTD use has been turned off.
1738 NOTE: this function acts independently of namespaces associated
1739       to the attribute. Use <a href="libxml-tree.html#xmlGetNsProp">xmlGetNsProp</a>() or <a href="libxml-tree.html#xmlGetNoNsProp">xmlGetNoNsProp</a>()
1740       for namespace aware processing.</p><p>
1741
1742 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1743 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1744 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
1745     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1746 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNoNsProp"></a>xmlGetNoNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlGetNoNsProp                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1747                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1748 Search and get the value of an attribute associated to a node
1749 This does the entity substitution.
1750 This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
1751 default declaration values unless DTD use has been turned off.
1752 This function is similar to xmlGetProp except it will accept only
1753 an attribute in no namespace.</p><p>
1754
1755 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1756 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1757 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
1758     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1759 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlHasProp"></a>xmlHasProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlHasProp                      (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1760                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1761 Search an attribute associated to a node
1762 This function also looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
1763 default declaration values unless DTD use has been turned off.</p><p>
1764
1765 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1766 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1767 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute or the attribute declaration or NULL if 
1768         neither was found.
1769 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlHasNsProp"></a>xmlHasNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlHasNsProp                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1770                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1771                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
1772 Search for an attribute associated to a node
1773 This attribute has to be anchored in the namespace specified.
1774 This does the entity substitution.
1775 This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
1776 default declaration values unless DTD use has been turned off.</p><p>
1777
1778 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1779 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1780 </td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td>  the URI of the namespace
1781 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute or the attribute declaration or NULL
1782     if neither was found.
1783 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetNsProp"></a>xmlSetNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>  xmlSetNsProp                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1784                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1785                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1786                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1787 Set (or reset) an attribute carried by a node.
1788 The ns structure must be in scope, this is not checked.</p><p>
1789
1790 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1791 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  the namespace definition
1792 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1793 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the attribute value
1794 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute pointer.
1795 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNsProp"></a>xmlGetNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlGetNsProp                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1796                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
1797                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
1798 Search and get the value of an attribute associated to a node
1799 This attribute has to be anchored in the namespace specified.
1800 This does the entity substitution.
1801 This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
1802 default declaration values unless DTD use has been turned off.</p><p>
1803
1804 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1805 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1806 </td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td>  the URI of the namespace
1807 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
1808     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1809 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringGetNodeList"></a>xmlStringGetNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlStringGetNodeList            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1810                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1811 Parse the value string and build the node list associated. Should
1812 produce a flat tree with only TEXTs and ENTITY_REFs.</p><p>
1813
1814 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1815 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the attribute
1816 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the first child
1817 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringLenGetNodeList"></a>xmlStringLenGetNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>  xmlStringLenGetNodeList         (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1818                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
1819                                              int len);</pre><p>
1820 Parse the value string and build the node list associated. Should
1821 produce a flat tree with only TEXTs and ENTITY_REFs.</p><p>
1822
1823 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1824 </td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>  the value of the text
1825 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the length of the string value
1826 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the first child
1827 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeListGetString"></a>xmlNodeListGetString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlNodeListGetString            (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1828                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
1829                                              int inLine);</pre><p>
1830 Build the string equivalent to the text contained in the Node list
1831 made of TEXTs and ENTITY_REFs</p><p>
1832
1833 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1834 </td></tr><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td>  a Node list
1835 </td></tr><tr><td><span class="term"><i><tt>inLine</tt></i> :</span></td><td>  should we replace entity contents or show their external form
1836 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the string copy, the caller must free it with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1837 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeListGetRawString"></a>xmlNodeListGetRawString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlNodeListGetRawString         (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1838                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
1839                                              int inLine);</pre><p>
1840 Builds the string equivalent to the text contained in the Node list
1841 made of TEXTs and ENTITY_REFs, contrary to <a href="libxml-tree.html#xmlNodeListGetString">xmlNodeListGetString</a>()
1842 this function doesn't do any character encoding handling.</p><p>
1843
1844 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1845 </td></tr><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td>  a Node list
1846 </td></tr><tr><td><span class="term"><i><tt>inLine</tt></i> :</span></td><td>  should we replace entity contents or show their external form
1847 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the string copy, the caller must free it with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1848 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetContent"></a>xmlNodeSetContent ()</h3><pre class="programlisting">void        xmlNodeSetContent               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1849                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1850 Replace the content of a node.</p><p>
1851
1852 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being modified
1853 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the new value of the content
1854 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetContentLen"></a>xmlNodeSetContentLen ()</h3><pre class="programlisting">void        xmlNodeSetContentLen            (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1855                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1856                                              int len);</pre><p>
1857 Replace the content of a node.</p><p>
1858
1859 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being modified
1860 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  the new value of the content
1861 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the size of <i><tt>content</tt></i>
1862 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeAddContent"></a>xmlNodeAddContent ()</h3><pre class="programlisting">void        xmlNodeAddContent               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1863                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
1864 Append the extra substring to the node content.</p><p>
1865
1866 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being modified
1867 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  extra content
1868 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeAddContentLen"></a>xmlNodeAddContentLen ()</h3><pre class="programlisting">void        xmlNodeAddContentLen            (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1869                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
1870                                              int len);</pre><p>
1871 Append the extra substring to the node content.</p><p>
1872
1873 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being modified
1874 </td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td>  extra content
1875 </td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>  the size of <i><tt>content</tt></i>
1876 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetContent"></a>xmlNodeGetContent ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlNodeGetContent               (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1877 Read the value of a node, this can be either the text carried
1878 directly by this node if it's a TEXT node or the aggregate string
1879 of the values carried by this node child's (TEXT and ENTITY_REF).
1880 Entity references are substituted.</p><p>
1881
1882 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being read
1883 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL if no content is available.
1884     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1885 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetLang"></a>xmlNodeGetLang ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlNodeGetLang                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1886 Searches the language of a node, i.e. the values of the xml:lang
1887 attribute or the one carried by the nearest ancestor.</p><p>
1888
1889 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being checked
1890 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the lang value, or NULL if not found
1891     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1892 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetLang"></a>xmlNodeSetLang ()</h3><pre class="programlisting">void        xmlNodeSetLang                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1893                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);</pre><p>
1894 Set the language of a node, i.e. the values of the xml:lang
1895 attribute.</p><p>
1896
1897 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being changed
1898 </td></tr><tr><td><span class="term"><i><tt>lang</tt></i> :</span></td><td>  the language description
1899 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetSpacePreserve"></a>xmlNodeGetSpacePreserve ()</h3><pre class="programlisting">int         xmlNodeGetSpacePreserve         (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1900 Searches the space preserving behaviour of a node, i.e. the values
1901 of the xml:space attribute or the one carried by the nearest
1902 ancestor.</p><p>
1903
1904 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being checked
1905 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 if xml:space is not inherited, 0 if "default", 1 if "preserve"
1906 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetSpacePreserve"></a>xmlNodeSetSpacePreserve ()</h3><pre class="programlisting">void        xmlNodeSetSpacePreserve         (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1907                                              int val);</pre><p>
1908 Set (or reset) the space preserving behaviour of a node, i.e. the
1909 value of the xml:space attribute.</p><p>
1910
1911 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being changed
1912 </td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td>  the xml:space value ("0": default, 1: "preserve")
1913 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetBase"></a>xmlNodeGetBase ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>*    xmlNodeGetBase                  (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1914                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
1915 Searches for the BASE URL. The code should work on both XML
1916 and HTML document even if base mechanisms are completely different.
1917 It returns the base as defined in RFC 2396 sections
1918 5.1.1. Base URI within Document Content
1919 and
1920 5.1.2. Base URI from the Encapsulating Entity
1921 However it does not return the document base (5.1.3), use
1922 <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocumentGetBase">xmlDocumentGetBase</GTKDOCLINK>() for this</p><p>
1923
1924 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document the node pertains to
1925 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being checked
1926 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the base URL, or NULL if not found
1927     It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1928 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetBase"></a>xmlNodeSetBase ()</h3><pre class="programlisting">void        xmlNodeSetBase                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
1929                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> *uri);</pre><p>
1930 Set (or reset) the base URI of a node, i.e. the value of the
1931 xml:base attribute.</p><p>
1932
1933 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the node being changed
1934 </td></tr><tr><td><span class="term"><i><tt>uri</tt></i> :</span></td><td>  the new base URI
1935 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRemoveProp"></a>xmlRemoveProp ()</h3><pre class="programlisting">int         xmlRemoveProp                   (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
1936 Unlink and free one attribute, all the content is freed too
1937 Note this doesn't work for namespace definition attributes</p><p>
1938
1939 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  an attribute
1940 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if success and -1 in case of error.
1941 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnsetProp"></a>xmlUnsetProp ()</h3><pre class="programlisting">int         xmlUnsetProp                    (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1942                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1943 Remove an attribute carried by a node.</p><p>
1944
1945 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1946 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1947 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if successful, -1 if not found
1948 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnsetNsProp"></a>xmlUnsetNsProp ()</h3><pre class="programlisting">int         xmlUnsetNsProp                  (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
1949                                              <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
1950                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
1951 Remove an attribute carried by a node.</p><p>
1952
1953 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td>  the node
1954 </td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td>  the namespace definition
1955 </td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>  the attribute name
1956 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if successful, -1 if not found
1957 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteCHAR"></a>xmlBufferWriteCHAR ()</h3><pre class="programlisting">void        xmlBufferWriteCHAR              (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1958                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);</pre><p>
1959 routine which manages and grows an output buffer. This one adds
1960 xmlChars at the end of the buffer.</p><p>
1961
1962 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the XML buffer
1963 </td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td>  the string to add
1964 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteChar"></a>xmlBufferWriteChar ()</h3><pre class="programlisting">void        xmlBufferWriteChar              (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1965                                              const char *string);</pre><p>
1966 routine which manage and grows an output buffer. This one add
1967 C chars at the end of the array.</p><p>
1968
1969 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the XML buffer output
1970 </td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td>  the string to add
1971 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteQuotedString"></a>xmlBufferWriteQuotedString ()</h3><pre class="programlisting">void        xmlBufferWriteQuotedString      (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
1972                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);</pre><p>
1973 routine which manage and grows an output buffer. This one writes
1974 a quoted or double quoted <a href="libxml-tree.html#xmlChar">xmlChar</a> string, checking first if it holds
1975 quote or double-quotes internally</p><p>
1976
1977 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the XML buffer output
1978 </td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td>  the string to add
1979 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlReconciliateNs"></a>xmlReconciliateNs ()</h3><pre class="programlisting">int         xmlReconciliateNs               (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
1980                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree);</pre><p>
1981 This function checks that all the namespaces declared within the given
1982 tree are properly declared. This is needed for example after Copy or Cut
1983 and then paste operations. The subtree may still hold pointers to
1984 namespace declarations outside the subtree or invalid/masked. As much
1985 as possible the function try to reuse the existing namespaces found in
1986 the new environment. If not possible the new namespaces are redeclared
1987 on <i><tt>tree</tt></i> at the top of the given subtree.</p><p>
1988
1989 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
1990 </td></tr><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td>  a node defining the subtree to reconciliate
1991 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of namespace declarations created or -1 in case of error.
1992 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpFormatMemory"></a>xmlDocDumpFormatMemory ()</h3><pre class="programlisting">void        xmlDocDumpFormatMemory          (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
1993                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
1994                                              int *size,
1995                                              int format);</pre><p>
1996 Dump an XML document in memory and return the <a href="libxml-tree.html#xmlChar">xmlChar</a> * and it's size.
1997 It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
1998 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
1999 or xmlKeepBlanksDefault(0) was called</p><p>
2000
2001 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2002 </td></tr><tr><td><span class="term"><i><tt>mem</tt></i> :</span></td><td>  OUT: the memory pointer
2003 </td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td>  OUT: the memory length
2004 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td>  should formatting spaces been added
2005 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpMemory"></a>xmlDocDumpMemory ()</h3><pre class="programlisting">void        xmlDocDumpMemory                (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2006                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
2007                                              int *size);</pre><p>
2008 Dump an XML document in memory and return the <a href="libxml-tree.html#xmlChar">xmlChar</a> * and it's size.
2009 It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().</p><p>
2010
2011 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2012 </td></tr><tr><td><span class="term"><i><tt>mem</tt></i> :</span></td><td>  OUT: the memory pointer
2013 </td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td>  OUT: the memory length
2014 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpMemoryEnc"></a>xmlDocDumpMemoryEnc ()</h3><pre class="programlisting">void        xmlDocDumpMemoryEnc             (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
2015                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
2016                                              int *doc_txt_len,
2017                                              const char *txt_encoding);</pre><p>
2018 Dump the current DOM tree into memory using the character encoding specified
2019 by the caller.  Note it is up to the caller of this function to free the
2020 allocated memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().</p><p>
2021
2022 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i> :</span></td><td>  Document to generate XML text from
2023 </td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i> :</span></td><td>  Memory pointer for allocated XML text
2024 </td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i> :</span></td><td>  Length of the generated XML text
2025 </td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i> :</span></td><td>  Character encoding to use when generating XML text
2026 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpFormatMemoryEnc"></a>xmlDocDumpFormatMemoryEnc ()</h3><pre class="programlisting">void        xmlDocDumpFormatMemoryEnc       (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
2027                                              <a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
2028                                              int *doc_txt_len,
2029                                              const char *txt_encoding,
2030                                              int format);</pre><p>
2031 Dump the current DOM tree into memory using the character encoding specified
2032 by the caller.  Note it is up to the caller of this function to free the
2033 allocated memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
2034 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2035 or xmlKeepBlanksDefault(0) was called</p><p>
2036
2037 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i> :</span></td><td>  Document to generate XML text from
2038 </td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i> :</span></td><td>  Memory pointer for allocated XML text
2039 </td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i> :</span></td><td>  Length of the generated XML text
2040 </td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i> :</span></td><td>  Character encoding to use when generating XML text
2041 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td>  should formatting spaces been added
2042 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocFormatDump"></a>xmlDocFormatDump ()</h3><pre class="programlisting">int         xmlDocFormatDump                (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
2043                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2044                                              int format);</pre><p>
2045 Dump an XML document to an open FILE.</p><p>
2046
2047 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td>  the FILE*
2048 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2049 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
2050 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2051 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2052 or xmlKeepBlanksDefault(0) was called
2053 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDump"></a>xmlDocDump ()</h3><pre class="programlisting">int         xmlDocDump                      (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
2054                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
2055 Dump an XML document to an open FILE.</p><p>
2056
2057 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td>  the FILE*
2058 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2059 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2060 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElemDump"></a>xmlElemDump ()</h3><pre class="programlisting">void        xmlElemDump                     (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
2061                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
2062                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
2063 Dump an XML/HTML node, recursive behaviour, children are printed too.</p><p>
2064
2065 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td>  the FILE * for the output
2066 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
2067 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the current node
2068 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFile"></a>xmlSaveFile ()</h3><pre class="programlisting">int         xmlSaveFile                     (const char *filename,
2069                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
2070 Dump an XML document to a file. Will use compression if
2071 compiled in and enabled. If <i><tt>filename</tt></i> is "-" the stdout file is
2072 used.</p><p>
2073
2074 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>  the filename (or URL)
2075 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2076 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2077 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFile"></a>xmlSaveFormatFile ()</h3><pre class="programlisting">int         xmlSaveFormatFile               (const char *filename,
2078                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2079                                              int format);</pre><p>
2080 Dump an XML document to a file. Will use compression if
2081 compiled in and enabled. If <i><tt>filename</tt></i> is "-" the stdout file is
2082 used. If <i><tt>format</tt></i> is set then the document will be indented on output.
2083 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2084 or xmlKeepBlanksDefault(0) was called</p><p>
2085
2086 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>  the filename (or URL)
2087 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2088 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td>  should formatting spaces been added
2089 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2090 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeDump"></a>xmlNodeDump ()</h3><pre class="programlisting">int         xmlNodeDump                     (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
2091                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
2092                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
2093                                              int level,
2094                                              int format);</pre><p>
2095 Dump an XML node, recursive behaviour,children are printed too.
2096 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2097 or xmlKeepBlanksDefault(0) was called</p><p>
2098
2099 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the XML buffer output
2100 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
2101 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the current node
2102 </td></tr><tr><td><span class="term"><i><tt>level</tt></i> :</span></td><td> the imbrication level for indenting
2103 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> is formatting allowed
2104 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of bytes written to the buffer or -1 in case of error
2105 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFileTo"></a>xmlSaveFileTo ()</h3><pre class="programlisting">int         xmlSaveFileTo                   (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
2106                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2107                                              const char *encoding);</pre><p>
2108 Dump an XML document to an I/O buffer.</p><p>
2109
2110 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  an output I/O buffer
2111 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2112 </td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>  the encoding if any assuming the I/O layer handles the trancoding
2113 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2114 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFileTo"></a>xmlSaveFormatFileTo ()</h3><pre class="programlisting">int         xmlSaveFormatFileTo             (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
2115                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2116                                              const char *encoding,
2117                                              int format);</pre><p>
2118 Dump an XML document to an I/O buffer.</p><p>
2119
2120 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  an output I/O buffer
2121 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2122 </td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>  the encoding if any assuming the I/O layer handles the trancoding
2123 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
2124 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2125 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2126 or xmlKeepBlanksDefault(0) was called
2127 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeDumpOutput"></a>xmlNodeDumpOutput ()</h3><pre class="programlisting">void        xmlNodeDumpOutput               (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
2128                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
2129                                              <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
2130                                              int level,
2131                                              int format,
2132                                              const char *encoding);</pre><p>
2133 Dump an XML node, recursive behaviour, children are printed too.
2134 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2135 or xmlKeepBlanksDefault(0) was called</p><p>
2136
2137 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td>  the XML buffer output
2138 </td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
2139 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the current node
2140 </td></tr><tr><td><span class="term"><i><tt>level</tt></i> :</span></td><td> the imbrication level for indenting
2141 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> is formatting allowed
2142 </td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>  an optional encoding string
2143 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFileEnc"></a>xmlSaveFormatFileEnc ()</h3><pre class="programlisting">int         xmlSaveFormatFileEnc            (const char *filename,
2144                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2145                                              const char *encoding,
2146                                              int format);</pre><p>
2147 Dump an XML document to a file or an URL.</p><p>
2148
2149 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>  the filename or URL to output
2150 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document being saved
2151 </td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>  the name of the encoding to use or NULL.
2152 </td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td>  should formatting spaces be added.
2153 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of bytes written or -1 in case of error.
2154 Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
2155 or xmlKeepBlanksDefault(0) was called
2156 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFileEnc"></a>xmlSaveFileEnc ()</h3><pre class="programlisting">int         xmlSaveFileEnc                  (const char *filename,
2157                                              <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
2158                                              const char *encoding);</pre><p>
2159 Dump an XML document, converting it to the given encoding</p><p>
2160
2161 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>  the filename (or URL)
2162 </td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>  the document
2163 </td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>  the name of an encoding (or NULL)
2164 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
2165 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsXHTML"></a>xmlIsXHTML ()</h3><pre class="programlisting">int         xmlIsXHTML                      (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *systemID,
2166                                              const <a href="libxml-tree.html#xmlChar">xmlChar</a> *publicID);</pre><p>
2167 Try to find if the document correspond to an XHTML DTD</p><p>
2168
2169 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>systemID</tt></i> :</span></td><td>  the system identifier
2170 </td></tr><tr><td><span class="term"><i><tt>publicID</tt></i> :</span></td><td>  the public identifier
2171 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if true, 0 if not and -1 in case of error
2172 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetDocCompressMode"></a>xmlGetDocCompressMode ()</h3><pre class="programlisting">int         xmlGetDocCompressMode           (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
2173 get the compression ratio for a document, ZLIB based</p><p>
2174
2175 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
2176 </td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 (uncompressed) to 9 (max compression)
2177 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetDocCompressMode"></a>xmlSetDocCompressMode ()</h3><pre class="programlisting">void        xmlSetDocCompressMode           (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
2178                                              int mode);</pre><p>
2179 set the compression ratio for a document, ZLIB based
2180 Correct values: 0 (uncompressed) to 9 (max compression)</p><p>
2181
2182 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td>  the document
2183 </td></tr><tr><td><span class="term"><i><tt>mode</tt></i> :</span></td><td>  the compression ratio
2184 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetCompressMode"></a>xmlGetCompressMode ()</h3><pre class="programlisting">int         xmlGetCompressMode              (void);</pre><p>
2185 get the default compression mode used, ZLIB based.</p><p>
2186
2187 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 (uncompressed) to 9 (max compression)
2188 </td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetCompressMode"></a>xmlSetCompressMode ()</h3><pre class="programlisting">void        xmlSetCompressMode              (int mode);</pre><p>
2189 set the default compression mode used, ZLIB based
2190 Correct values: 0 (uncompressed) to 9 (max compression)</p><p>
2191
2192 </p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>mode</tt></i> :</span></td><td>  the compression ratio
2193 </td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-SAX.html"><b>&lt;&lt; SAX</b></a></td><td align="right"><a accesskey="n" href="libxml-entities.html"><b>entities &gt;&gt;</b></a></td></tr></table></body></html>