10 #ifndef __XML_XMLREADER_H__
11 #define __XML_XMLREADER_H__
13 #include <libxml/xmlversion.h>
14 #include <libxml/tree.h>
15 #include <libxml/xmlIO.h>
16 #ifdef LIBXML_SCHEMAS_ENABLED
17 #include <libxml/relaxng.h>
18 #include <libxml/xmlschemas.h>
32 XML_PARSER_SEVERITY_VALIDITY_WARNING = 1,
33 XML_PARSER_SEVERITY_VALIDITY_ERROR = 2,
34 XML_PARSER_SEVERITY_WARNING = 3,
35 XML_PARSER_SEVERITY_ERROR = 4
36 } xmlParserSeverities;
38 #ifdef LIBXML_READER_ENABLED
46 XML_TEXTREADER_MODE_INITIAL = 0,
47 XML_TEXTREADER_MODE_INTERACTIVE = 1,
48 XML_TEXTREADER_MODE_ERROR = 2,
49 XML_TEXTREADER_MODE_EOF =3,
50 XML_TEXTREADER_MODE_CLOSED = 4,
51 XML_TEXTREADER_MODE_READING = 5
62 XML_PARSER_LOADDTD = 1,
63 XML_PARSER_DEFAULTATTRS = 2,
64 XML_PARSER_VALIDATE = 3,
65 XML_PARSER_SUBST_ENTITIES = 4
66 } xmlParserProperties;
74 XML_READER_TYPE_NONE = 0,
75 XML_READER_TYPE_ELEMENT = 1,
76 XML_READER_TYPE_ATTRIBUTE = 2,
77 XML_READER_TYPE_TEXT = 3,
78 XML_READER_TYPE_CDATA = 4,
79 XML_READER_TYPE_ENTITY_REFERENCE = 5,
80 XML_READER_TYPE_ENTITY = 6,
81 XML_READER_TYPE_PROCESSING_INSTRUCTION = 7,
82 XML_READER_TYPE_COMMENT = 8,
83 XML_READER_TYPE_DOCUMENT = 9,
84 XML_READER_TYPE_DOCUMENT_TYPE = 10,
85 XML_READER_TYPE_DOCUMENT_FRAGMENT = 11,
86 XML_READER_TYPE_NOTATION = 12,
87 XML_READER_TYPE_WHITESPACE = 13,
88 XML_READER_TYPE_SIGNIFICANT_WHITESPACE = 14,
89 XML_READER_TYPE_END_ELEMENT = 15,
90 XML_READER_TYPE_END_ENTITY = 16,
91 XML_READER_TYPE_XML_DECLARATION = 17
99 typedef struct _xmlTextReader xmlTextReader;
106 typedef xmlTextReader *xmlTextReaderPtr;
111 XMLPUBFUN xmlTextReaderPtr XMLCALL
112 xmlNewTextReader (xmlParserInputBufferPtr input,
114 XMLPUBFUN xmlTextReaderPtr XMLCALL
115 xmlNewTextReaderFilename(
const char *URI);
117 XMLPUBFUN
void XMLCALL
118 xmlFreeTextReader (xmlTextReaderPtr reader);
120 XMLPUBFUN
int XMLCALL
121 xmlTextReaderSetup(xmlTextReaderPtr reader,
122 xmlParserInputBufferPtr input,
const char *URL,
123 const char *encoding,
int options);
128 XMLPUBFUN
int XMLCALL
129 xmlTextReaderRead (xmlTextReaderPtr reader);
131 #ifdef LIBXML_WRITER_ENABLED
132 XMLPUBFUN xmlChar * XMLCALL
133 xmlTextReaderReadInnerXml (xmlTextReaderPtr reader);
135 XMLPUBFUN xmlChar * XMLCALL
136 xmlTextReaderReadOuterXml (xmlTextReaderPtr reader);
139 XMLPUBFUN xmlChar * XMLCALL
140 xmlTextReaderReadString (xmlTextReaderPtr reader);
141 XMLPUBFUN
int XMLCALL
142 xmlTextReaderReadAttributeValue (xmlTextReaderPtr reader);
147 XMLPUBFUN
int XMLCALL
148 xmlTextReaderAttributeCount(xmlTextReaderPtr reader);
149 XMLPUBFUN
int XMLCALL
150 xmlTextReaderDepth (xmlTextReaderPtr reader);
151 XMLPUBFUN
int XMLCALL
152 xmlTextReaderHasAttributes(xmlTextReaderPtr reader);
153 XMLPUBFUN
int XMLCALL
154 xmlTextReaderHasValue(xmlTextReaderPtr reader);
155 XMLPUBFUN
int XMLCALL
156 xmlTextReaderIsDefault (xmlTextReaderPtr reader);
157 XMLPUBFUN
int XMLCALL
158 xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader);
159 XMLPUBFUN
int XMLCALL
160 xmlTextReaderNodeType (xmlTextReaderPtr reader);
161 XMLPUBFUN
int XMLCALL
162 xmlTextReaderQuoteChar (xmlTextReaderPtr reader);
163 XMLPUBFUN
int XMLCALL
164 xmlTextReaderReadState (xmlTextReaderPtr reader);
165 XMLPUBFUN
int XMLCALL
166 xmlTextReaderIsNamespaceDecl(xmlTextReaderPtr reader);
168 XMLPUBFUN
const xmlChar * XMLCALL
169 xmlTextReaderConstBaseUri (xmlTextReaderPtr reader);
170 XMLPUBFUN
const xmlChar * XMLCALL
171 xmlTextReaderConstLocalName (xmlTextReaderPtr reader);
172 XMLPUBFUN
const xmlChar * XMLCALL
173 xmlTextReaderConstName (xmlTextReaderPtr reader);
174 XMLPUBFUN
const xmlChar * XMLCALL
175 xmlTextReaderConstNamespaceUri(xmlTextReaderPtr reader);
176 XMLPUBFUN
const xmlChar * XMLCALL
177 xmlTextReaderConstPrefix (xmlTextReaderPtr reader);
178 XMLPUBFUN
const xmlChar * XMLCALL
179 xmlTextReaderConstXmlLang (xmlTextReaderPtr reader);
180 XMLPUBFUN
const xmlChar * XMLCALL
181 xmlTextReaderConstString (xmlTextReaderPtr reader,
183 XMLPUBFUN
const xmlChar * XMLCALL
184 xmlTextReaderConstValue (xmlTextReaderPtr reader);
190 XMLPUBFUN xmlChar * XMLCALL
191 xmlTextReaderBaseUri (xmlTextReaderPtr reader);
192 XMLPUBFUN xmlChar * XMLCALL
193 xmlTextReaderLocalName (xmlTextReaderPtr reader);
194 XMLPUBFUN xmlChar * XMLCALL
195 xmlTextReaderName (xmlTextReaderPtr reader);
196 XMLPUBFUN xmlChar * XMLCALL
197 xmlTextReaderNamespaceUri(xmlTextReaderPtr reader);
198 XMLPUBFUN xmlChar * XMLCALL
199 xmlTextReaderPrefix (xmlTextReaderPtr reader);
200 XMLPUBFUN xmlChar * XMLCALL
201 xmlTextReaderXmlLang (xmlTextReaderPtr reader);
202 XMLPUBFUN xmlChar * XMLCALL
203 xmlTextReaderValue (xmlTextReaderPtr reader);
208 XMLPUBFUN
int XMLCALL
209 xmlTextReaderClose (xmlTextReaderPtr reader);
210 XMLPUBFUN xmlChar * XMLCALL
211 xmlTextReaderGetAttributeNo (xmlTextReaderPtr reader,
213 XMLPUBFUN xmlChar * XMLCALL
214 xmlTextReaderGetAttribute (xmlTextReaderPtr reader,
215 const xmlChar *name);
216 XMLPUBFUN xmlChar * XMLCALL
217 xmlTextReaderGetAttributeNs (xmlTextReaderPtr reader,
218 const xmlChar *localName,
219 const xmlChar *namespaceURI);
220 XMLPUBFUN xmlParserInputBufferPtr XMLCALL
221 xmlTextReaderGetRemainder (xmlTextReaderPtr reader);
222 XMLPUBFUN xmlChar * XMLCALL
223 xmlTextReaderLookupNamespace(xmlTextReaderPtr reader,
224 const xmlChar *prefix);
225 XMLPUBFUN
int XMLCALL
226 xmlTextReaderMoveToAttributeNo(xmlTextReaderPtr reader,
228 XMLPUBFUN
int XMLCALL
229 xmlTextReaderMoveToAttribute(xmlTextReaderPtr reader,
230 const xmlChar *name);
231 XMLPUBFUN
int XMLCALL
232 xmlTextReaderMoveToAttributeNs(xmlTextReaderPtr reader,
233 const xmlChar *localName,
234 const xmlChar *namespaceURI);
235 XMLPUBFUN
int XMLCALL
236 xmlTextReaderMoveToFirstAttribute(xmlTextReaderPtr reader);
237 XMLPUBFUN
int XMLCALL
238 xmlTextReaderMoveToNextAttribute(xmlTextReaderPtr reader);
239 XMLPUBFUN
int XMLCALL
240 xmlTextReaderMoveToElement (xmlTextReaderPtr reader);
241 XMLPUBFUN
int XMLCALL
242 xmlTextReaderNormalization (xmlTextReaderPtr reader);
243 XMLPUBFUN
const xmlChar * XMLCALL
244 xmlTextReaderConstEncoding (xmlTextReaderPtr reader);
249 XMLPUBFUN
int XMLCALL
250 xmlTextReaderSetParserProp (xmlTextReaderPtr reader,
253 XMLPUBFUN
int XMLCALL
254 xmlTextReaderGetParserProp (xmlTextReaderPtr reader,
256 XMLPUBFUN xmlNodePtr XMLCALL
257 xmlTextReaderCurrentNode (xmlTextReaderPtr reader);
259 XMLPUBFUN
int XMLCALL
260 xmlTextReaderGetParserLineNumber(xmlTextReaderPtr reader);
262 XMLPUBFUN
int XMLCALL
263 xmlTextReaderGetParserColumnNumber(xmlTextReaderPtr reader);
265 XMLPUBFUN xmlNodePtr XMLCALL
266 xmlTextReaderPreserve (xmlTextReaderPtr reader);
267 #ifdef LIBXML_PATTERN_ENABLED
268 XMLPUBFUN
int XMLCALL
269 xmlTextReaderPreservePattern(xmlTextReaderPtr reader,
270 const xmlChar *pattern,
271 const xmlChar **namespaces);
273 XMLPUBFUN xmlDocPtr XMLCALL
274 xmlTextReaderCurrentDoc (xmlTextReaderPtr reader);
275 XMLPUBFUN xmlNodePtr XMLCALL
276 xmlTextReaderExpand (xmlTextReaderPtr reader);
277 XMLPUBFUN
int XMLCALL
278 xmlTextReaderNext (xmlTextReaderPtr reader);
279 XMLPUBFUN
int XMLCALL
280 xmlTextReaderNextSibling (xmlTextReaderPtr reader);
281 XMLPUBFUN
int XMLCALL
282 xmlTextReaderIsValid (xmlTextReaderPtr reader);
283 #ifdef LIBXML_SCHEMAS_ENABLED
284 XMLPUBFUN
int XMLCALL
285 xmlTextReaderRelaxNGValidate(xmlTextReaderPtr reader,
287 XMLPUBFUN
int XMLCALL
288 xmlTextReaderRelaxNGSetSchema(xmlTextReaderPtr reader,
289 xmlRelaxNGPtr schema);
290 XMLPUBFUN
int XMLCALL
291 xmlTextReaderSchemaValidate (xmlTextReaderPtr reader,
293 XMLPUBFUN
int XMLCALL
294 xmlTextReaderSchemaValidateCtxt(xmlTextReaderPtr reader,
295 xmlSchemaValidCtxtPtr ctxt,
297 XMLPUBFUN
int XMLCALL
298 xmlTextReaderSetSchema (xmlTextReaderPtr reader,
299 xmlSchemaPtr schema);
301 XMLPUBFUN
const xmlChar * XMLCALL
302 xmlTextReaderConstXmlVersion(xmlTextReaderPtr reader);
303 XMLPUBFUN
int XMLCALL
304 xmlTextReaderStandalone (xmlTextReaderPtr reader);
310 XMLPUBFUN
long XMLCALL
311 xmlTextReaderByteConsumed (xmlTextReaderPtr reader);
316 XMLPUBFUN xmlTextReaderPtr XMLCALL
317 xmlReaderWalker (xmlDocPtr doc);
318 XMLPUBFUN xmlTextReaderPtr XMLCALL
319 xmlReaderForDoc (
const xmlChar * cur,
321 const char *encoding,
323 XMLPUBFUN xmlTextReaderPtr XMLCALL
324 xmlReaderForFile (
const char *filename,
325 const char *encoding,
327 XMLPUBFUN xmlTextReaderPtr XMLCALL
328 xmlReaderForMemory (
const char *buffer,
331 const char *encoding,
333 XMLPUBFUN xmlTextReaderPtr XMLCALL
334 xmlReaderForFd (
int fd,
336 const char *encoding,
338 XMLPUBFUN xmlTextReaderPtr XMLCALL
339 xmlReaderForIO (xmlInputReadCallback ioread,
340 xmlInputCloseCallback ioclose,
343 const char *encoding,
346 XMLPUBFUN
int XMLCALL
347 xmlReaderNewWalker (xmlTextReaderPtr reader,
349 XMLPUBFUN
int XMLCALL
350 xmlReaderNewDoc (xmlTextReaderPtr reader,
353 const char *encoding,
355 XMLPUBFUN
int XMLCALL
356 xmlReaderNewFile (xmlTextReaderPtr reader,
357 const char *filename,
358 const char *encoding,
360 XMLPUBFUN
int XMLCALL
361 xmlReaderNewMemory (xmlTextReaderPtr reader,
365 const char *encoding,
367 XMLPUBFUN
int XMLCALL
368 xmlReaderNewFd (xmlTextReaderPtr reader,
371 const char *encoding,
373 XMLPUBFUN
int XMLCALL
374 xmlReaderNewIO (xmlTextReaderPtr reader,
375 xmlInputReadCallback ioread,
376 xmlInputCloseCallback ioclose,
379 const char *encoding,
384 typedef void * xmlTextReaderLocatorPtr;
395 typedef void (XMLCALL *xmlTextReaderErrorFunc)(
void *arg,
397 xmlParserSeverities severity,
398 xmlTextReaderLocatorPtr locator);
399 XMLPUBFUN
int XMLCALL
400 xmlTextReaderLocatorLineNumber(xmlTextReaderLocatorPtr locator);
402 XMLPUBFUN xmlChar * XMLCALL
403 xmlTextReaderLocatorBaseURI (xmlTextReaderLocatorPtr locator);
404 XMLPUBFUN
void XMLCALL
405 xmlTextReaderSetErrorHandler(xmlTextReaderPtr reader,
406 xmlTextReaderErrorFunc f,
408 XMLPUBFUN
void XMLCALL
409 xmlTextReaderSetStructuredErrorHandler(xmlTextReaderPtr reader,
410 xmlStructuredErrorFunc f,
412 XMLPUBFUN
void XMLCALL
413 xmlTextReaderGetErrorHandler(xmlTextReaderPtr reader,
414 xmlTextReaderErrorFunc *f,