libxml-xmlreader.html revision d433046ae52b0488a9fad77d2045c0139b8cada8
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmlreader</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css"> 3 .synopsis, .classsynopsis { 4 background: #eeeeee; 5 border: solid 1px #aaaaaa; 6 padding: 0.5em; 7 } 8 .programlisting { 9 background: #eeeeff; 10 border: solid 1px #aaaaff; 11 padding: 0.5em; 12 } 13 .variablelist { 14 padding: 4px; 15 margin-left: 3em; 16 } 17 .navigation { 18 background: #ffeeee; 19 border: solid 1px #ffaaaa; 20 margin-top: 0.5em; 21 margin-bottom: 0.5em; 22 } 23 .navigation a { 24 color: #770000; 25 } 26 .navigation a:visited { 27 color: #550000; 28 } 29 .navigation .title { 30 font-size: 200%; 31 } 32 </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-parser.html" title="parser"><link rel="next" href="libxml-SAX.html" title="SAX"></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-parser.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-SAX.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-xmlreader"></a><div class="titlepage"></div><div class="refnamediv"><h2>xmlreader</h2><p>xmlreader — </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis"> 33 34 35 36enum <a href="libxml-xmlreader.html#xmlParserProperties">xmlParserProperties</a>; 37enum <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a>; 38struct <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a>; 39typedef <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>; 40<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> <a href="libxml-xmlreader.html#xmlNewTextReader">xmlNewTextReader</a> (<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, 41 const char *URI); 42<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> <a href="libxml-xmlreader.html#xmlNewTextReaderFilename">xmlNewTextReaderFilename</a> (const char *URI); 43void <a href="libxml-xmlreader.html#xmlFreeTextReader">xmlFreeTextReader</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 44int <a href="libxml-xmlreader.html#xmlTextReaderRead">xmlTextReaderRead</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 45<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderReadInnerXml">xmlTextReaderReadInnerXml</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 46<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderReadOuterXml">xmlTextReaderReadOuterXml</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 47<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderReadString">xmlTextReaderReadString</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 48int <a href="libxml-xmlreader.html#xmlTextReaderReadAttributeValue">xmlTextReaderReadAttributeValue</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 49int <a href="libxml-xmlreader.html#xmlTextReaderAttributeCount">xmlTextReaderAttributeCount</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 50<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderBaseUri">xmlTextReaderBaseUri</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 51int <a href="libxml-xmlreader.html#xmlTextReaderDepth">xmlTextReaderDepth</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 52int <a href="libxml-xmlreader.html#xmlTextReaderHasAttributes">xmlTextReaderHasAttributes</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 53int <a href="libxml-xmlreader.html#xmlTextReaderHasValue">xmlTextReaderHasValue</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 54int <a href="libxml-xmlreader.html#xmlTextReaderIsDefault">xmlTextReaderIsDefault</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 55int <a href="libxml-xmlreader.html#xmlTextReaderIsEmptyElement">xmlTextReaderIsEmptyElement</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 56<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderLocalName">xmlTextReaderLocalName</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 57<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderName">xmlTextReaderName</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 58<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderNamespaceUri">xmlTextReaderNamespaceUri</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 59int <a href="libxml-xmlreader.html#xmlTextReaderNodeType">xmlTextReaderNodeType</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 60<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderPrefix">xmlTextReaderPrefix</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 61int <a href="libxml-xmlreader.html#xmlTextReaderQuoteChar">xmlTextReaderQuoteChar</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 62<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderValue">xmlTextReaderValue</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 63<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderXmlLang">xmlTextReaderXmlLang</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 64int <a href="libxml-xmlreader.html#xmlTextReaderReadState">xmlTextReaderReadState</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 65int <a href="libxml-xmlreader.html#xmlTextReaderClose">xmlTextReaderClose</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 66<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderGetAttributeNo">xmlTextReaderGetAttributeNo</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 67 int no); 68<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderGetAttribute">xmlTextReaderGetAttribute</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 69 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name); 70<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderGetAttributeNs">xmlTextReaderGetAttributeNs</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 71 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *localName, 72 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *namespaceURI); 73<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> <a href="libxml-xmlreader.html#xmlTextReaderGetRemainder">xmlTextReaderGetRemainder</a> 74 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 75<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderLookupNamespace">xmlTextReaderLookupNamespace</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 76 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix); 77int <a href="libxml-xmlreader.html#xmlTextReaderMoveToAttributeNo">xmlTextReaderMoveToAttributeNo</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 78 int no); 79int <a href="libxml-xmlreader.html#xmlTextReaderMoveToAttribute">xmlTextReaderMoveToAttribute</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 80 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name); 81int <a href="libxml-xmlreader.html#xmlTextReaderMoveToAttributeNs">xmlTextReaderMoveToAttributeNs</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 82 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *localName, 83 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *namespaceURI); 84int <a href="libxml-xmlreader.html#xmlTextReaderMoveToFirstAttribute">xmlTextReaderMoveToFirstAttribute</a> 85 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 86int <a href="libxml-xmlreader.html#xmlTextReaderMoveToNextAttribute">xmlTextReaderMoveToNextAttribute</a> 87 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 88int <a href="libxml-xmlreader.html#xmlTextReaderMoveToElement">xmlTextReaderMoveToElement</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 89int <a href="libxml-xmlreader.html#xmlTextReaderNormalization">xmlTextReaderNormalization</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 90int <a href="libxml-xmlreader.html#xmlTextReaderSetParserProp">xmlTextReaderSetParserProp</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 91 int prop, 92 int value); 93int <a href="libxml-xmlreader.html#xmlTextReaderGetParserProp">xmlTextReaderGetParserProp</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 94 int prop); 95<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-xmlreader.html#xmlTextReaderCurrentNode">xmlTextReaderCurrentNode</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 96<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a href="libxml-xmlreader.html#xmlTextReaderCurrentDoc">xmlTextReaderCurrentDoc</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 97<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-xmlreader.html#xmlTextReaderExpand">xmlTextReaderExpand</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 98int <a href="libxml-xmlreader.html#xmlTextReaderNext">xmlTextReaderNext</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 99int <a href="libxml-xmlreader.html#xmlTextReaderIsValid">xmlTextReaderIsValid</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader); 100int <a href="libxml-xmlreader.html#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 101 const char *rng); 102int <a href="libxml-xmlreader.html#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 103 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema); 104typedef <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a>; 105void (<a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">*xmlTextReaderErrorFunc</a>) (void *arg, 106 const char *msg, 107 <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, 108 <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator); 109int <a href="libxml-xmlreader.html#xmlTextReaderLocatorLineNumber">xmlTextReaderLocatorLineNumber</a> (<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator); 110<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-xmlreader.html#xmlTextReaderLocatorBaseURI">xmlTextReaderLocatorBaseURI</a> (<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator); 111void <a href="libxml-xmlreader.html#xmlTextReaderSetErrorHandler">xmlTextReaderSetErrorHandler</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 112 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, 113 void *arg); 114void <a href="libxml-xmlreader.html#xmlTextReaderGetErrorHandler">xmlTextReaderGetErrorHandler</a> (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 115 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> *f, 116 void **arg); 117</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p> 118 119</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlParserProperties"></a>enum xmlParserProperties</h3><pre class="programlisting">typedef enum { 120 XML_PARSER_LOADDTD = 1, 121 XML_PARSER_DEFAULTATTRS = 2, 122 XML_PARSER_VALIDATE = 3, 123 XML_PARSER_SUBST_ENTITIES = 4 124} xmlParserProperties; 125</pre><p> 126 127</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserSeverities"></a>enum xmlParserSeverities</h3><pre class="programlisting">typedef enum { 128 XML_PARSER_SEVERITY_VALIDITY_WARNING = 1, 129 XML_PARSER_SEVERITY_VALIDITY_ERROR = 2, 130 XML_PARSER_SEVERITY_WARNING = 3, 131 XML_PARSER_SEVERITY_ERROR = 4 132} xmlParserSeverities; 133</pre><p> 134 135</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReader"></a>struct xmlTextReader</h3><pre class="programlisting">struct xmlTextReader;</pre><p> 136 137</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderPtr"></a>xmlTextReaderPtr</h3><pre class="programlisting">typedef xmlTextReader *xmlTextReaderPtr; 138</pre><p> 139 140</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextReader"></a>xmlNewTextReader ()</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> xmlNewTextReader (<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, 141 const char *URI);</pre><p> 142Create an xmlTextReader structure fed with <i><tt>input</tt></i></p><p> 143 144</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>input</tt></i>�:</span></td><td> the xmlParserInputBufferPtr used to read data 145</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>�:</span></td><td> the URI information for the source if available 146</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new xmlTextReaderPtr or NULL in case of error 147</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextReaderFilename"></a>xmlNewTextReaderFilename ()</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> xmlNewTextReaderFilename (const char *URI);</pre><p> 148Create an xmlTextReader structure fed with the resource at <i><tt>URI</tt></i></p><p> 149 150</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URI</tt></i>�:</span></td><td> the URI of the resource to process 151</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new xmlTextReaderPtr or NULL in case of error 152</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeTextReader"></a>xmlFreeTextReader ()</h3><pre class="programlisting">void xmlFreeTextReader (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 153Deallocate all the resources associated to the reader</p><p> 154 155</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr 156</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderRead"></a>xmlTextReaderRead ()</h3><pre class="programlisting">int xmlTextReaderRead (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 157Moves the position of the current instance to the next node in 158 the stream, exposing its properties.</p><p> 159 160</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 161</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if the node was read successfully, 0 if there is no more 162 nodes to read, or -1 in case of error 163</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderReadInnerXml"></a>xmlTextReaderReadInnerXml ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderReadInnerXml (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 164Reads the contents of the current node, including child nodes and markup.</p><p> 165 166</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 167</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the XML content, or NULL if the current node 168 is neither an element nor attribute, or has no child nodes. The 169 string must be deallocated by the caller. 170</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderReadOuterXml"></a>xmlTextReaderReadOuterXml ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderReadOuterXml (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 171Reads the contents of the current node, including child nodes and markup.</p><p> 172 173</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 174</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the XML content, or NULL if the current node 175 is neither an element nor attribute, or has no child nodes. The 176 string must be deallocated by the caller. 177</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderReadString"></a>xmlTextReaderReadString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderReadString (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 178Reads the contents of an element or a text node as a string.</p><p> 179 180</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 181</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the contents of the Element or Text node, 182 or NULL if the reader is positioned on any other type of node. 183 The string must be deallocated by the caller. 184</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderReadAttributeValue"></a>xmlTextReaderReadAttributeValue ()</h3><pre class="programlisting">int xmlTextReaderReadAttributeValue (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 185Parses an attribute value into one or more Text and EntityReference nodes.</p><p> 186 187</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 188</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, 0 if the reader was not positionned on an 189 ttribute node or all the attribute values have been read, or -1 190 in case of error. 191</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderAttributeCount"></a>xmlTextReaderAttributeCount ()</h3><pre class="programlisting">int xmlTextReaderAttributeCount (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 192Provides the number of attributes of the current node</p><p> 193 194</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 195</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 i no attributes, -1 in case of error or the attribute count 196</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderBaseUri"></a>xmlTextReaderBaseUri ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderBaseUri (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 197The base URI of the node.</p><p> 198 199</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 200</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the base URI or NULL if not available 201</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderDepth"></a>xmlTextReaderDepth ()</h3><pre class="programlisting">int xmlTextReaderDepth (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 202The depth of the node in the tree.</p><p> 203 204</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 205</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the depth or -1 in case of error 206</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderHasAttributes"></a>xmlTextReaderHasAttributes ()</h3><pre class="programlisting">int xmlTextReaderHasAttributes (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 207Whether the node has attributes.</p><p> 208 209</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 210</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if true, 0 if false, and -1 in case or error 211</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderHasValue"></a>xmlTextReaderHasValue ()</h3><pre class="programlisting">int xmlTextReaderHasValue (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 212Whether the node can have a text value.</p><p> 213 214</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 215</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if true, 0 if false, and -1 in case or error 216</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderIsDefault"></a>xmlTextReaderIsDefault ()</h3><pre class="programlisting">int xmlTextReaderIsDefault (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 217Whether an Attribute node was generated from the default value 218defined in the DTD or schema.</p><p> 219 220</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 221</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if not defaulted, 1 if defaulted, and -1 in case of error 222</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderIsEmptyElement"></a>xmlTextReaderIsEmptyElement ()</h3><pre class="programlisting">int xmlTextReaderIsEmptyElement (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 223Check if the current node is empty</p><p> 224 225</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 226</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if empty, 0 if not and -1 in case of error 227</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderLocalName"></a>xmlTextReaderLocalName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderLocalName (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 228The local name of the node.</p><p> 229 230</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 231</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the local name or NULL if not available 232</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderName"></a>xmlTextReaderName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderName (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 233The qualified name of the node, equal to Prefix :LocalName.</p><p> 234 235</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 236</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the local name or NULL if not available 237</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderNamespaceUri"></a>xmlTextReaderNamespaceUri ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderNamespaceUri (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 238The URI defining the namespace associated with the node.</p><p> 239 240</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 241</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the namespace URI or NULL if not available 242</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderNodeType"></a>xmlTextReaderNodeType ()</h3><pre class="programlisting">int xmlTextReaderNodeType (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 243Get the node type of the current node 244Reference: 245http://dotgnu.org/pnetlib-doc/System/Xml/XmlNodeType.html</p><p> 246 247</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 248</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlNodeType of the current node or -1 in case of error 249</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderPrefix"></a>xmlTextReaderPrefix ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderPrefix (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 250A shorthand reference to the namespace associated with the node.</p><p> 251 252</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 253</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the prefix or NULL if not available 254</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderQuoteChar"></a>xmlTextReaderQuoteChar ()</h3><pre class="programlisting">int xmlTextReaderQuoteChar (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 255The quotation mark character used to enclose the value of an attribute.</p><p> 256 257</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 258</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>" or ' and -1 in case of error 259</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderValue"></a>xmlTextReaderValue ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderValue (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 260Provides the text value of the node if present</p><p> 261 262</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 263</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the string or NULL if not available. The retsult must be deallocated 264 with <a href="libxml-globals.html#xmlFree">xmlFree</a>() 265</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderXmlLang"></a>xmlTextReaderXmlLang ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderXmlLang (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 266The xml:lang scope within which the node resides.</p><p> 267 268</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 269</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xml:lang value or NULL if none exists. 270</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderReadState"></a>xmlTextReaderReadState ()</h3><pre class="programlisting">int xmlTextReaderReadState (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 271Gets the read state of the reader.</p><p> 272 273</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 274</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the state value, or -1 in case of error 275</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderClose"></a>xmlTextReaderClose ()</h3><pre class="programlisting">int xmlTextReaderClose (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 276This method releases any resources allocated by the current instance 277changes the state to Closed and close any underlying input.</p><p> 278 279</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 280</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 or -1 in case of error 281</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetAttributeNo"></a>xmlTextReaderGetAttributeNo ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderGetAttributeNo (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 282 int no);</pre><p> 283Provides the value of the attribute with the specified index relative 284to the containing element.</p><p> 285 286</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 287</td></tr><tr><td><span class="term"><i><tt>no</tt></i>�:</span></td><td> the zero-based index of the attribute relative to the containing element 288</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the value of the specified attribute, or NULL 289 in case of error. The string must be deallocated by the caller. 290</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetAttribute"></a>xmlTextReaderGetAttribute ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderGetAttribute (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 291 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p> 292Provides the value of the attribute with the specified qualified name.</p><p> 293 294</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 295</td></tr><tr><td><span class="term"><i><tt>name</tt></i>�:</span></td><td> the qualified name of the attribute. 296</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the value of the specified attribute, or NULL 297 in case of error. The string must be deallocated by the caller. 298</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetAttributeNs"></a>xmlTextReaderGetAttributeNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderGetAttributeNs (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 299 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *localName, 300 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *namespaceURI);</pre><p> 301Provides the value of the specified attribute</p><p> 302 303</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 304</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>�:</span></td><td> the local name of the attribute. 305</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>�:</span></td><td> the namespace URI of the attribute. 306</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the value of the specified attribute, or NULL 307 in case of error. The string must be deallocated by the caller. 308</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetRemainder"></a>xmlTextReaderGetRemainder ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> xmlTextReaderGetRemainder 309 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 310Method to get the remainder of the buffered XML. this method stops the 311parser, set its state to End Of File and return the input stream with 312what is left that the parser did not use.</p><p> 313 314</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 315</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlParserInputBufferPtr attached to the XML or NULL 316 in case of error. 317</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderLookupNamespace"></a>xmlTextReaderLookupNamespace ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderLookupNamespace (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 318 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);</pre><p> 319Resolves a namespace prefix in the scope of the current element.</p><p> 320 321</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 322</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>�:</span></td><td> the prefix whose namespace URI is to be resolved. To return 323 the default namespace, specify NULL 324</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a string containing the namespace URI to which the prefix maps 325 or NULL in case of error. The string must be deallocated by the caller. 326</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToAttributeNo"></a>xmlTextReaderMoveToAttributeNo ()</h3><pre class="programlisting">int xmlTextReaderMoveToAttributeNo (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 327 int no);</pre><p> 328Moves the position of the current instance to the attribute with 329the specified index relative to the containing element.</p><p> 330 331</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 332</td></tr><tr><td><span class="term"><i><tt>no</tt></i>�:</span></td><td> the zero-based index of the attribute relative to the containing 333 element. 334</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not found 335</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToAttribute"></a>xmlTextReaderMoveToAttribute ()</h3><pre class="programlisting">int xmlTextReaderMoveToAttribute (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 336 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p> 337Moves the position of the current instance to the attribute with 338the specified qualified name.</p><p> 339 340</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 341</td></tr><tr><td><span class="term"><i><tt>name</tt></i>�:</span></td><td> the qualified name of the attribute. 342</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not found 343</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToAttributeNs"></a>xmlTextReaderMoveToAttributeNs ()</h3><pre class="programlisting">int xmlTextReaderMoveToAttributeNs (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 344 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *localName, 345 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *namespaceURI);</pre><p> 346Moves the position of the current instance to the attribute with the 347specified local name and namespace URI.</p><p> 348 349</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 350</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>�:</span></td><td> the local name of the attribute. 351</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>�:</span></td><td> the namespace URI of the attribute. 352</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not found 353</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToFirstAttribute"></a>xmlTextReaderMoveToFirstAttribute ()</h3><pre class="programlisting">int xmlTextReaderMoveToFirstAttribute 354 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 355Moves the position of the current instance to the first attribute 356associated with the current node.</p><p> 357 358</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 359</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not found 360</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToNextAttribute"></a>xmlTextReaderMoveToNextAttribute ()</h3><pre class="programlisting">int xmlTextReaderMoveToNextAttribute 361 (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 362Moves the position of the current instance to the next attribute 363associated with the current node.</p><p> 364 365</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 366</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not found 367</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderMoveToElement"></a>xmlTextReaderMoveToElement ()</h3><pre class="programlisting">int xmlTextReaderMoveToElement (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 368Moves the position of the current instance to the node that 369contains the current Attribute node.</p><p> 370 371</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 372</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 in case of success, -1 in case of error, 0 if not moved 373</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderNormalization"></a>xmlTextReaderNormalization ()</h3><pre class="programlisting">int xmlTextReaderNormalization (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 374The value indicating whether to normalize white space and attribute values. 375Since attribute value and end of line normalizations are a MUST in the XML 376specification only the value true is accepted. The broken bahaviour of 377accepting out of range character entities like &<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="0-CAPS">0</GTKDOCLINK>; is of course not 378supported either.</p><p> 379 380</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 381</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 or -1 in case of error. 382</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderSetParserProp"></a>xmlTextReaderSetParserProp ()</h3><pre class="programlisting">int xmlTextReaderSetParserProp (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 383 int prop, 384 int value);</pre><p> 385Change the parser processing behaviour by changing some of its internal 386properties. Note that some properties can only be changed before any 387read has been done.</p><p> 388 389</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 390</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>�:</span></td><td> the xmlParserProperties to set 391</td></tr><tr><td><span class="term"><i><tt>value</tt></i>�:</span></td><td> usually 0 or 1 to (de)activate it 392</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if the call was successful, or -1 in case of error 393</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetParserProp"></a>xmlTextReaderGetParserProp ()</h3><pre class="programlisting">int xmlTextReaderGetParserProp (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 394 int prop);</pre><p> 395Read the parser internal property.</p><p> 396 397</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 398</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>�:</span></td><td> the xmlParserProperties to get 399</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the value, usually 0 or 1, or -1 in case of error. 400</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderCurrentNode"></a>xmlTextReaderCurrentNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlTextReaderCurrentNode (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 401Hacking interface allowing to get the xmlNodePtr correponding to the 402current node being accessed by the xmlTextReader. This is dangerous 403because the underlying node may be destroyed on the next Reads.</p><p> 404 405</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 406</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlNodePtr or NULL in case of error. 407</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderCurrentDoc"></a>xmlTextReaderCurrentDoc ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> xmlTextReaderCurrentDoc (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 408Hacking interface allowing to get the xmlDocPtr correponding to the 409current document being accessed by the xmlTextReader. This is dangerous 410because the associated node may be destroyed on the next Reads.</p><p> 411 412</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 413</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the xmlDocPtr or NULL in case of error. 414</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderExpand"></a>xmlTextReaderExpand ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlTextReaderExpand (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 415Reads the contents of the current node and the full subtree. It then makes 416the subtree availsble until the next <a href="libxml-xmlreader.html#xmlTextReaderRead">xmlTextReaderRead</a>() call</p><p> 417 418</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 419</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a node pointer valid until the next <a href="libxml-xmlreader.html#xmlTextReaderRead">xmlTextReaderRead</a>() call 420 or NULL in case of error. 421</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderNext"></a>xmlTextReaderNext ()</h3><pre class="programlisting">int xmlTextReaderNext (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 422Skip to the node following the current one in document order while 423avoiding the subtree if any.</p><p> 424 425</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 426</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if the node was read successfully, 0 if there is no more 427 nodes to read, or -1 in case of error 428</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderIsValid"></a>xmlTextReaderIsValid ()</h3><pre class="programlisting">int xmlTextReaderIsValid (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader);</pre><p> 429Retrieve the validity status from the parser context</p><p> 430 431</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 432</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the flag value 1 if valid, 0 if no, and -1 in case of error 433</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderRelaxNGValidate"></a>xmlTextReaderRelaxNGValidate ()</h3><pre class="programlisting">int xmlTextReaderRelaxNGValidate (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 434 const char *rng);</pre><p> 435Use RelaxNG to validate the document as it is processed. 436Activation is only possible before the first <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="Read">Read</GTKDOCLINK>(). 437if <i><tt>rng</tt></i> is NULL, then RelaxNG validation is desactivated.</p><p> 438 439</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 440</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>�:</span></td><td> the path to a RelaxNG schema or NULL 441</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case the RelaxNG validation could be (des)activated and 442 -1 in case of error. 443</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderRelaxNGSetSchema"></a>xmlTextReaderRelaxNGSetSchema ()</h3><pre class="programlisting">int xmlTextReaderRelaxNGSetSchema (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 444 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema);</pre><p> 445Use RelaxNG to validate the document as it is processed. 446Activation is only possible before the first <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="Read">Read</GTKDOCLINK>(). 447if <i><tt>schema</tt></i> is NULL, then RelaxNG validation is desactivated. 448 @ The <i><tt>schema</tt></i> should not be freed until the reader is deallocated 449or its use has been deactivated.</p><p> 450 451</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 452</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>�:</span></td><td> a precompiled RelaxNG schema 453</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case the RelaxNG validation could be (des)activated and 454 -1 in case of error. 455</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderLocatorPtr"></a>xmlTextReaderLocatorPtr</h3><pre class="programlisting">typedef void * xmlTextReaderLocatorPtr; 456</pre><p> 457 458</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderErrorFunc"></a>xmlTextReaderErrorFunc ()</h3><pre class="programlisting">void (*xmlTextReaderErrorFunc) (void *arg, 459 const char *msg, 460 <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, 461 <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator);</pre><p> 462 463</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>arg</tt></i>�:</span></td><td> 464</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>�:</span></td><td> 465</td></tr><tr><td><span class="term"><i><tt>severity</tt></i>�:</span></td><td> 466</td></tr><tr><td><span class="term"><i><tt>locator</tt></i>�:</span></td><td> 467 468 469</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderLocatorLineNumber"></a>xmlTextReaderLocatorLineNumber ()</h3><pre class="programlisting">int xmlTextReaderLocatorLineNumber (<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator);</pre><p> 470Obtain the line number for the given locator.</p><p> 471 472</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>locator</tt></i>�:</span></td><td> the xmlTextReaderLocatorPtr used 473</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the line number or -1 in case of error. 474</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderLocatorBaseURI"></a>xmlTextReaderLocatorBaseURI ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlTextReaderLocatorBaseURI (<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator);</pre><p> 475Obtain the base URI for the given locator.</p><p> 476 477</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>locator</tt></i>�:</span></td><td> the xmlTextReaderLocatorPtr used 478</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the base URI or NULL in case of error. 479</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderSetErrorHandler"></a>xmlTextReaderSetErrorHandler ()</h3><pre class="programlisting">void xmlTextReaderSetErrorHandler (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 480 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, 481 void *arg);</pre><p> 482Register a callback function that will be called on error and warnings. 483</p><p> 484If <i><tt>f</tt></i> is NULL, the default error and warning handlers are restored.</p><p> 485 486</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 487</td></tr><tr><td><span class="term"><i><tt>f</tt></i>�:</span></td><td> the callback function to call on error and warnings 488</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>�:</span></td><td> a user argument to pass to the callback function 489</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextReaderGetErrorHandler"></a>xmlTextReaderGetErrorHandler ()</h3><pre class="programlisting">void xmlTextReaderGetErrorHandler (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, 490 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> *f, 491 void **arg);</pre><p> 492Retrieve the error callback function and user argument.</p><p> 493 494</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>reader</tt></i>�:</span></td><td> the xmlTextReaderPtr used 495</td></tr><tr><td><span class="term"><i><tt>f</tt></i>�:</span></td><td> the callback function or NULL is no callback has been registered 496</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>�:</span></td><td> a user argument 497</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-parser.html"><b><<�parser</b></a></td><td align="right"><a accesskey="n" href="libxml-SAX.html"><b>SAX�>></b></a></td></tr></table></body></html> 498