xmlreader.h revision 38ae7e4efe803ea78b6499cd05a394db32623e41
/*
* Summary: the XMLReader implementation
* Description: API of the XML streaming API based on C# interfaces.
*
* Copy: See Copyright for the status of this software.
*
* Author: Daniel Veillard
*/
#ifndef __XML_XMLREADER_H__
#define __XML_XMLREADER_H__
#include <libxml/xmlversion.h>
#ifdef LIBXML_SCHEMAS_ENABLED
#include <libxml/xmlschemas.h>
#endif
#ifdef LIBXML_READER_ENABLED
#ifdef __cplusplus
extern "C" {
#endif
/**
* xmlTextReaderMode:
*
* Internal state values for the reader.
*/
typedef enum {
/**
* xmlParserProperties:
*
* Some common options to use with xmlTextReaderSetParserProp, but it
* is better to use xmlParserOption and the xmlReaderNewxxx and
* xmlReaderForxxx APIs now.
*/
typedef enum {
XML_PARSER_LOADDTD = 1,
XML_PARSER_VALIDATE = 3,
/**
* xmlParserSeverities:
*
* How severe an error callback is when the per-reader error callback API
* is used.
*/
typedef enum {
/**
* xmlReaderTypes:
*
* Predefined constants for the different types of nodes.
*/
typedef enum {
XML_READER_TYPE_NONE = 0,
XML_READER_TYPE_TEXT = 3,
XML_READER_TYPE_NOTATION = 12,
/**
* xmlTextReader:
*
* Structure for an xmlReader context.
*/
typedef struct _xmlTextReader xmlTextReader;
/**
* xmlTextReaderPtr:
*
* Pointer to an xmlReader context.
*/
typedef xmlTextReader *xmlTextReaderPtr;
/*
* Constructors & Destructor
*/
const char *URI);
xmlNewTextReaderFilename(const char *URI);
/*
* Iterators
*/
#ifdef LIBXML_WRITER_ENABLED
#endif
/*
* Attributes of the node
*/
/*
* use the Const version of the routine for
* better performance and simpler code
*/
/*
* Methods of the XmlTextReader
*/
int no);
const xmlChar *namespaceURI);
int no);
const xmlChar *namespaceURI);
/*
* Extensions
*/
int prop,
int value);
int prop);
#ifdef LIBXML_PATTERN_ENABLED
const xmlChar **namespaces);
#endif /* LIBXML_PATTERN_ENABLED */
#ifdef LIBXML_SCHEMAS_ENABLED
const char *rng);
const char *xsd);
int options);
#endif
/*
* Index lookup
*/
/*
* New more complete APIs for simpler creation and reuse of readers
*/
const char *URL,
const char *encoding,
int options);
xmlReaderForFile (const char *filename,
const char *encoding,
int options);
xmlReaderForMemory (const char *buffer,
int size,
const char *URL,
const char *encoding,
int options);
xmlReaderForFd (int fd,
const char *URL,
const char *encoding,
int options);
void *ioctx,
const char *URL,
const char *encoding,
int options);
const char *URL,
const char *encoding,
int options);
const char *filename,
const char *encoding,
int options);
const char *buffer,
int size,
const char *URL,
const char *encoding,
int options);
int fd,
const char *URL,
const char *encoding,
int options);
void *ioctx,
const char *URL,
const char *encoding,
int options);
/*
* Error handling extensions
*/
typedef void * xmlTextReaderLocatorPtr;
const char *msg,
/*int xmlTextReaderLocatorLinePosition(xmlTextReaderLocatorPtr locator);*/
void *arg);
void *arg);
void **arg);
#ifdef __cplusplus
}
#endif
#endif /* LIBXML_READER_ENABLED */
#endif /* __XML_XMLREADER_H__ */