xmlreader

xmlreader - the XMLReader implementation

API of the XML streaming API based on C# interfaces.

Author(s): Daniel Veillard

Synopsis

typedef enum xmlParserProperties;
typedef enum xmlParserSeverities;
typedef enum xmlReaderTypes;
typedef struct _xmlTextReader xmlTextReader;
typedef void * xmlTextReaderLocatorPtr;
typedef enum xmlTextReaderMode;
typedef xmlTextReader * xmlTextReaderPtr;
void	xmlFreeTextReader		(xmlTextReaderPtr reader);
xmlTextReaderPtr	xmlNewTextReader	(xmlParserInputBufferPtr input, 
const char * URI); xmlTextReaderPtr xmlNewTextReaderFilename (const char * URI); xmlTextReaderPtr xmlReaderForDoc (const xmlChar * cur,
const char * URL,
const char * encoding,
int options); xmlTextReaderPtr xmlReaderForFd (int fd,
const char * URL,
const char * encoding,
int options); xmlTextReaderPtr xmlReaderForFile (const char * filename,
const char * encoding,
int options); xmlTextReaderPtr xmlReaderForIO (xmlInputReadCallback ioread,
xmlInputCloseCallback ioclose,
void * ioctx,
const char * URL,
const char * encoding,
int options); xmlTextReaderPtr xmlReaderForMemory (const char * buffer,
int size,
const char * URL,
const char * encoding,
int options); int xmlReaderNewDoc (xmlTextReaderPtr reader,
const xmlChar * cur,
const char * URL,
const char * encoding,
int options); int xmlReaderNewFd (xmlTextReaderPtr reader,
int fd,
const char * URL,
const char * encoding,
int options); int xmlReaderNewFile (xmlTextReaderPtr reader,
const char * filename,
const char * encoding,
int options); int xmlReaderNewIO (xmlTextReaderPtr reader,
xmlInputReadCallback ioread,
xmlInputCloseCallback ioclose,
void * ioctx,
const char * URL,
const char * encoding,
int options); int xmlReaderNewMemory (xmlTextReaderPtr reader,
const char * buffer,
int size,
const char * URL,
const char * encoding,
int options); int xmlReaderNewWalker (xmlTextReaderPtr reader,
xmlDocPtr doc); xmlTextReaderPtr xmlReaderWalker (xmlDocPtr doc); int xmlTextReaderAttributeCount (xmlTextReaderPtr reader); xmlChar * xmlTextReaderBaseUri (xmlTextReaderPtr reader); long xmlTextReaderByteConsumed (xmlTextReaderPtr reader); int xmlTextReaderClose (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstBaseUri (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstEncoding (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstLocalName (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstName (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstNamespaceUri (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstPrefix (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstString (xmlTextReaderPtr reader,
const xmlChar * str); const xmlChar * xmlTextReaderConstValue (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstXmlLang (xmlTextReaderPtr reader); const xmlChar * xmlTextReaderConstXmlVersion (xmlTextReaderPtr reader); xmlDocPtr xmlTextReaderCurrentDoc (xmlTextReaderPtr reader); xmlNodePtr xmlTextReaderCurrentNode (xmlTextReaderPtr reader); int xmlTextReaderDepth (xmlTextReaderPtr reader); typedef void xmlTextReaderErrorFunc (void * arg,
const char * msg,
xmlParserSeverities severity,
xmlTextReaderLocatorPtr locator); xmlNodePtr xmlTextReaderExpand (xmlTextReaderPtr reader); xmlChar * xmlTextReaderGetAttribute (xmlTextReaderPtr reader,
const xmlChar * name); xmlChar * xmlTextReaderGetAttributeNo (xmlTextReaderPtr reader,
int no); xmlChar * xmlTextReaderGetAttributeNs (xmlTextReaderPtr reader,
const xmlChar * localName,
const xmlChar * namespaceURI); void xmlTextReaderGetErrorHandler (xmlTextReaderPtr reader,
xmlTextReaderErrorFunc * f,
void ** arg); int xmlTextReaderGetParserColumnNumber (xmlTextReaderPtr reader); int xmlTextReaderGetParserLineNumber (xmlTextReaderPtr reader); int xmlTextReaderGetParserProp (xmlTextReaderPtr reader,
int prop); xmlParserInputBufferPtr xmlTextReaderGetRemainder (xmlTextReaderPtr reader); int xmlTextReaderHasAttributes (xmlTextReaderPtr reader); int xmlTextReaderHasValue (xmlTextReaderPtr reader); int xmlTextReaderIsDefault (xmlTextReaderPtr reader); int xmlTextReaderIsEmptyElement (xmlTextReaderPtr reader); int xmlTextReaderIsNamespaceDecl (xmlTextReaderPtr reader); int xmlTextReaderIsValid (xmlTextReaderPtr reader); xmlChar * xmlTextReaderLocalName (xmlTextReaderPtr reader); xmlChar * xmlTextReaderLocatorBaseURI (xmlTextReaderLocatorPtr locator); int xmlTextReaderLocatorLineNumber (xmlTextReaderLocatorPtr locator); xmlChar * xmlTextReaderLookupNamespace (xmlTextReaderPtr reader,
const xmlChar * prefix); int xmlTextReaderMoveToAttribute (xmlTextReaderPtr reader,
const xmlChar * name); int xmlTextReaderMoveToAttributeNo (xmlTextReaderPtr reader,
int no); int xmlTextReaderMoveToAttributeNs (xmlTextReaderPtr reader,
const xmlChar * localName,
const xmlChar * namespaceURI); int xmlTextReaderMoveToElement (xmlTextReaderPtr reader); int xmlTextReaderMoveToFirstAttribute (xmlTextReaderPtr reader); int xmlTextReaderMoveToNextAttribute (xmlTextReaderPtr reader); xmlChar * xmlTextReaderName (xmlTextReaderPtr reader); xmlChar * xmlTextReaderNamespaceUri (xmlTextReaderPtr reader); int xmlTextReaderNext (xmlTextReaderPtr reader); int xmlTextReaderNextSibling (xmlTextReaderPtr reader); int xmlTextReaderNodeType (xmlTextReaderPtr reader); int xmlTextReaderNormalization (xmlTextReaderPtr reader); xmlChar * xmlTextReaderPrefix (xmlTextReaderPtr reader); xmlNodePtr xmlTextReaderPreserve (xmlTextReaderPtr reader); int xmlTextReaderPreservePattern (xmlTextReaderPtr reader,
const xmlChar * pattern,
const xmlChar ** namespaces); int xmlTextReaderQuoteChar (xmlTextReaderPtr reader); int xmlTextReaderRead (xmlTextReaderPtr reader); int xmlTextReaderReadAttributeValue (xmlTextReaderPtr reader); xmlChar * xmlTextReaderReadInnerXml (xmlTextReaderPtr reader); xmlChar * xmlTextReaderReadOuterXml (xmlTextReaderPtr reader); int xmlTextReaderReadState (xmlTextReaderPtr reader); xmlChar * xmlTextReaderReadString (xmlTextReaderPtr reader); int xmlTextReaderRelaxNGSetSchema (xmlTextReaderPtr reader,
xmlRelaxNGPtr schema); int xmlTextReaderRelaxNGValidate (xmlTextReaderPtr reader,
const char * rng); int xmlTextReaderRelaxNGValidateCtxt (xmlTextReaderPtr reader,
xmlRelaxNGValidCtxtPtr ctxt,
int options); int xmlTextReaderSchemaValidate (xmlTextReaderPtr reader,
const char * xsd); int xmlTextReaderSchemaValidateCtxt (xmlTextReaderPtr reader,
xmlSchemaValidCtxtPtr ctxt,
int options); void xmlTextReaderSetErrorHandler (xmlTextReaderPtr reader,
xmlTextReaderErrorFunc f,
void * arg); void xmlTextReaderSetMaxAmplification (xmlTextReaderPtr reader,
unsigned maxAmpl); int xmlTextReaderSetParserProp (xmlTextReaderPtr reader,
int prop,
int value); int xmlTextReaderSetSchema (xmlTextReaderPtr reader,
xmlSchemaPtr schema); void xmlTextReaderSetStructuredErrorHandler (xmlTextReaderPtr reader,
xmlStructuredErrorFunc f,
void * arg); int xmlTextReaderSetup (xmlTextReaderPtr reader,
xmlParserInputBufferPtr input,
const char * URL,
const char * encoding,
int options); int xmlTextReaderStandalone (xmlTextReaderPtr reader); xmlChar * xmlTextReaderValue (xmlTextReaderPtr reader); xmlChar * xmlTextReaderXmlLang (xmlTextReaderPtr reader);

Description

Details




Structure xmlTextReader

struct _xmlTextReader {
The content of this structure is not made public by the API.
} xmlTextReader;


Typedef xmlTextReaderLocatorPtr

void * xmlTextReaderLocatorPtr;



Typedef xmlTextReaderPtr

xmlTextReader * xmlTextReaderPtr;

Pointer to an xmlReader context.


Function type xmlTextReaderErrorFunc

void	xmlTextReaderErrorFunc		(void * arg, 
const char * msg,
xmlParserSeverities severity,
xmlTextReaderLocatorPtr locator)

Signature of an error callback from a reader parser

arg: the user argument
msg: the message
severity: the severity of the error
locator: a locator indicating where the error occurred

xmlFreeTextReader ()

void	xmlFreeTextReader		(xmlTextReaderPtr reader)

Deallocate all the resources associated to the reader

reader: the xmlTextReaderPtr

xmlNewTextReader ()

xmlTextReaderPtr	xmlNewTextReader	(xmlParserInputBufferPtr input, 
const char * URI)

Create an xmlTextReader structure fed with @input

input: the xmlParserInputBufferPtr used to read data
URI: the URI information for the source if available
Returns: the new xmlTextReaderPtr or NULL in case of error

xmlNewTextReaderFilename ()

xmlTextReaderPtr	xmlNewTextReaderFilename	(const char * URI)

Create an xmlTextReader structure fed with the resource at @URI

URI: the URI of the resource to process
Returns: the new xmlTextReaderPtr or NULL in case of error

xmlReaderForDoc ()

xmlTextReaderPtr	xmlReaderForDoc	(const xmlChar * cur, 
const char * URL,
const char * encoding,
int options)

Create an xmltextReader for an XML in-memory document. The parsing flags @options are a combination of xmlParserOption.

cur: a pointer to a zero terminated string
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: the new reader or NULL in case of error.

xmlReaderForFd ()

xmlTextReaderPtr	xmlReaderForFd	(int fd, 
const char * URL,
const char * encoding,
int options)

Create an xmltextReader for an XML from a file descriptor. The parsing flags @options are a combination of xmlParserOption. NOTE that the file descriptor will not be closed when the reader is closed or reset.

fd: an open file descriptor
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: the new reader or NULL in case of error.

xmlReaderForFile ()

xmlTextReaderPtr	xmlReaderForFile	(const char * filename, 
const char * encoding,
int options)

parse an XML file from the filesystem or the network. The parsing flags @options are a combination of xmlParserOption.

filename: a file or URL
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: the new reader or NULL in case of error.

xmlReaderForIO ()

xmlTextReaderPtr	xmlReaderForIO	(xmlInputReadCallback ioread, 
xmlInputCloseCallback ioclose,
void * ioctx,
const char * URL,
const char * encoding,
int options)

Create an xmltextReader for an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption.

ioread: an I/O read function
ioclose: an I/O close function
ioctx: an I/O handler
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: the new reader or NULL in case of error.

xmlReaderForMemory ()

xmlTextReaderPtr	xmlReaderForMemory	(const char * buffer, 
int size,
const char * URL,
const char * encoding,
int options)

Create an xmltextReader for an XML in-memory document. The parsing flags @options are a combination of xmlParserOption.

buffer: a pointer to a char array
size: the size of the array
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: the new reader or NULL in case of error.

xmlReaderNewDoc ()

int	xmlReaderNewDoc			(xmlTextReaderPtr reader, 
const xmlChar * cur,
const char * URL,
const char * encoding,
int options)

Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption. This reuses the existing @reader xmlTextReader.

reader: an XML reader
cur: a pointer to a zero terminated string
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error

xmlReaderNewFd ()

int	xmlReaderNewFd			(xmlTextReaderPtr reader, 
int fd,
const char * URL,
const char * encoding,
int options)

Setup an xmltextReader to parse an XML from a file descriptor. NOTE that the file descriptor will not be closed when the reader is closed or reset. The parsing flags @options are a combination of xmlParserOption. This reuses the existing @reader xmlTextReader.

reader: an XML reader
fd: an open file descriptor
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error

xmlReaderNewFile ()

int	xmlReaderNewFile		(xmlTextReaderPtr reader, 
const char * filename,
const char * encoding,
int options)

parse an XML file from the filesystem or the network. The parsing flags @options are a combination of xmlParserOption. This reuses the existing @reader xmlTextReader.

reader: an XML reader
filename: a file or URL
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error

xmlReaderNewIO ()

int	xmlReaderNewIO			(xmlTextReaderPtr reader, 
xmlInputReadCallback ioread,
xmlInputCloseCallback ioclose,
void * ioctx,
const char * URL,
const char * encoding,
int options)

Setup an xmltextReader to parse an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption. This reuses the existing @reader xmlTextReader.

reader: an XML reader
ioread: an I/O read function
ioclose: an I/O close function
ioctx: an I/O handler
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error

xmlReaderNewMemory ()

int	xmlReaderNewMemory		(xmlTextReaderPtr reader, 
const char * buffer,
int size,
const char * URL,
const char * encoding,
int options)

Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption. This reuses the existing @reader xmlTextReader.

reader: an XML reader
buffer: a pointer to a char array
size: the size of the array
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error

xmlReaderNewWalker ()

int	xmlReaderNewWalker		(xmlTextReaderPtr reader, 
xmlDocPtr doc)

Setup an xmltextReader to parse a preparsed XML document. This reuses the existing @reader xmlTextReader.

reader: an XML reader
doc: a preparsed document
Returns: 0 in case of success and -1 in case of error

xmlReaderWalker ()

xmlTextReaderPtr	xmlReaderWalker	(xmlDocPtr doc)

Create an xmltextReader for a preparsed document.

doc: a preparsed document
Returns: the new reader or NULL in case of error.

xmlTextReaderAttributeCount ()

int	xmlTextReaderAttributeCount	(xmlTextReaderPtr reader)

Provides the number of attributes of the current node

reader: the xmlTextReaderPtr used
Returns: 0 i no attributes, -1 in case of error or the attribute count

xmlTextReaderBaseUri ()

xmlChar *	xmlTextReaderBaseUri	(xmlTextReaderPtr reader)

The base URI of the node.

reader: the xmlTextReaderPtr used
Returns: the base URI or NULL if not available, if non NULL it need to be freed by the caller.

xmlTextReaderByteConsumed ()

long	xmlTextReaderByteConsumed	(xmlTextReaderPtr reader)

This function provides the current index of the parser used by the reader, relative to the start of the current entity. This function actually just wraps a call to xmlBytesConsumed() for the parser context associated with the reader. See xmlBytesConsumed() for more information.

reader: an XML reader
Returns: the index in bytes from the beginning of the entity or -1 in case the index could not be computed.

xmlTextReaderClose ()

int	xmlTextReaderClose		(xmlTextReaderPtr reader)

This method releases any resources allocated by the current instance changes the state to Closed and close any underlying input.

reader: the xmlTextReaderPtr used
Returns: 0 or -1 in case of error

xmlTextReaderConstBaseUri ()

const xmlChar *	xmlTextReaderConstBaseUri	(xmlTextReaderPtr reader)

The base URI of the node.

reader: the xmlTextReaderPtr used
Returns: the base URI or NULL if not available, the string will be deallocated with the reader

xmlTextReaderConstEncoding ()

const xmlChar *	xmlTextReaderConstEncoding	(xmlTextReaderPtr reader)

Determine the encoding of the document being read.

reader: the xmlTextReaderPtr used
Returns: a string containing the encoding of the document or NULL in case of error. The string is deallocated with the reader.

xmlTextReaderConstLocalName ()

const xmlChar *	xmlTextReaderConstLocalName	(xmlTextReaderPtr reader)

The local name of the node.

reader: the xmlTextReaderPtr used
Returns: the local name or NULL if not available, the string will be deallocated with the reader.

xmlTextReaderConstName ()

const xmlChar *	xmlTextReaderConstName	(xmlTextReaderPtr reader)

The qualified name of the node, equal to Prefix :LocalName.

reader: the xmlTextReaderPtr used
Returns: the local name or NULL if not available, the string is deallocated with the reader.

xmlTextReaderConstNamespaceUri ()

const xmlChar *	xmlTextReaderConstNamespaceUri	(xmlTextReaderPtr reader)

The URI defining the namespace associated with the node.

reader: the xmlTextReaderPtr used
Returns: the namespace URI or NULL if not available, the string will be deallocated with the reader

xmlTextReaderConstPrefix ()

const xmlChar *	xmlTextReaderConstPrefix	(xmlTextReaderPtr reader)

A shorthand reference to the namespace associated with the node.

reader: the xmlTextReaderPtr used
Returns: the prefix or NULL if not available, the string is deallocated with the reader.

xmlTextReaderConstString ()

const xmlChar *	xmlTextReaderConstString	(xmlTextReaderPtr reader, 
const xmlChar * str)

Get an interned string from the reader, allows for example to speedup string name comparisons

reader: the xmlTextReaderPtr used
str: the string to intern.
Returns: an interned copy of the string or NULL in case of error. The string will be deallocated with the reader.

xmlTextReaderConstValue ()

const xmlChar *	xmlTextReaderConstValue	(xmlTextReaderPtr reader)

Provides the text value of the node if present

reader: the xmlTextReaderPtr used
Returns: the string or NULL if not available. The result will be deallocated on the next Read() operation.

xmlTextReaderConstXmlLang ()

const xmlChar *	xmlTextReaderConstXmlLang	(xmlTextReaderPtr reader)

The xml:lang scope within which the node resides.

reader: the xmlTextReaderPtr used
Returns: the xml:lang value or NULL if none exists.

xmlTextReaderConstXmlVersion ()

const xmlChar *	xmlTextReaderConstXmlVersion	(xmlTextReaderPtr reader)

Determine the XML version of the document being read.

reader: the xmlTextReaderPtr used
Returns: a string containing the XML version of the document or NULL in case of error. The string is deallocated with the reader.

xmlTextReaderCurrentDoc ()

xmlDocPtr	xmlTextReaderCurrentDoc	(xmlTextReaderPtr reader)

Hacking interface allowing to get the xmlDocPtr corresponding to the current document being accessed by the xmlTextReader. NOTE: as a result of this call, the reader will not destroy the associated XML document and calling xmlFreeDoc() on the result is needed once the reader parsing has finished.

reader: the xmlTextReaderPtr used
Returns: the xmlDocPtr or NULL in case of error.

xmlTextReaderCurrentNode ()

xmlNodePtr	xmlTextReaderCurrentNode	(xmlTextReaderPtr reader)

Hacking interface allowing to get the xmlNodePtr corresponding to the current node being accessed by the xmlTextReader. This is dangerous because the underlying node may be destroyed on the next Reads.

reader: the xmlTextReaderPtr used
Returns: the xmlNodePtr or NULL in case of error.

xmlTextReaderDepth ()

int	xmlTextReaderDepth		(xmlTextReaderPtr reader)

The depth of the node in the tree.

reader: the xmlTextReaderPtr used
Returns: the depth or -1 in case of error

xmlTextReaderExpand ()

xmlNodePtr	xmlTextReaderExpand	(xmlTextReaderPtr reader)

Reads the contents of the current node and the full subtree. It then makes the subtree available until the next xmlTextReaderRead() call

reader: the xmlTextReaderPtr used
Returns: a node pointer valid until the next xmlTextReaderRead() call or NULL in case of error.

xmlTextReaderGetAttribute ()

xmlChar *	xmlTextReaderGetAttribute	(xmlTextReaderPtr reader, 
const xmlChar * name)

Provides the value of the attribute with the specified qualified name.

reader: the xmlTextReaderPtr used
name: the qualified name of the attribute.
Returns: a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.

xmlTextReaderGetAttributeNo ()

xmlChar *	xmlTextReaderGetAttributeNo	(xmlTextReaderPtr reader, 
int no)

Provides the value of the attribute with the specified index relative to the containing element.

reader: the xmlTextReaderPtr used
no: the zero-based index of the attribute relative to the containing element
Returns: a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.

xmlTextReaderGetAttributeNs ()

xmlChar *	xmlTextReaderGetAttributeNs	(xmlTextReaderPtr reader, 
const xmlChar * localName,
const xmlChar * namespaceURI)

Provides the value of the specified attribute

reader: the xmlTextReaderPtr used
localName: the local name of the attribute.
namespaceURI: the namespace URI of the attribute.
Returns: a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.

xmlTextReaderGetErrorHandler ()

void	xmlTextReaderGetErrorHandler	(xmlTextReaderPtr reader, 
xmlTextReaderErrorFunc * f,
void ** arg)

Retrieve the error callback function and user argument.

reader: the xmlTextReaderPtr used
f: the callback function or NULL is no callback has been registered
arg: a user argument

xmlTextReaderGetParserColumnNumber ()

int	xmlTextReaderGetParserColumnNumber	(xmlTextReaderPtr reader)

Provide the column number of the current parsing point.

reader: the user data (XML reader context)
Returns: an int or 0 if not available

xmlTextReaderGetParserLineNumber ()

int	xmlTextReaderGetParserLineNumber	(xmlTextReaderPtr reader)

Provide the line number of the current parsing point.

reader: the user data (XML reader context)
Returns: an int or 0 if not available

xmlTextReaderGetParserProp ()

int	xmlTextReaderGetParserProp	(xmlTextReaderPtr reader, 
int prop)

Read the parser internal property.

reader: the xmlTextReaderPtr used
prop: the xmlParserProperties to get
Returns: the value, usually 0 or 1, or -1 in case of error.

xmlTextReaderGetRemainder ()

xmlParserInputBufferPtr	xmlTextReaderGetRemainder	(xmlTextReaderPtr reader)

Method to get the remainder of the buffered XML. this method stops the parser, set its state to End Of File and return the input stream with what is left that the parser did not use. The implementation is not good, the parser certainly progressed past what's left in reader->input, and there is an allocation problem. Best would be to rewrite it differently.

reader: the xmlTextReaderPtr used
Returns: the xmlParserInputBufferPtr attached to the XML or NULL in case of error.

xmlTextReaderHasAttributes ()

int	xmlTextReaderHasAttributes	(xmlTextReaderPtr reader)

Whether the node has attributes.

reader: the xmlTextReaderPtr used
Returns: 1 if true, 0 if false, and -1 in case or error

xmlTextReaderHasValue ()

int	xmlTextReaderHasValue		(xmlTextReaderPtr reader)

Whether the node can have a text value.

reader: the xmlTextReaderPtr used
Returns: 1 if true, 0 if false, and -1 in case or error

xmlTextReaderIsDefault ()

int	xmlTextReaderIsDefault		(xmlTextReaderPtr reader)

Whether an Attribute node was generated from the default value defined in the DTD or schema.

reader: the xmlTextReaderPtr used
Returns: 0 if not defaulted, 1 if defaulted, and -1 in case of error

xmlTextReaderIsEmptyElement ()

int	xmlTextReaderIsEmptyElement	(xmlTextReaderPtr reader)

Check if the current node is empty

reader: the xmlTextReaderPtr used
Returns: 1 if empty, 0 if not and -1 in case of error

xmlTextReaderIsNamespaceDecl ()

int	xmlTextReaderIsNamespaceDecl	(xmlTextReaderPtr reader)

Determine whether the current node is a namespace declaration rather than a regular attribute.

reader: the xmlTextReaderPtr used
Returns: 1 if the current node is a namespace declaration, 0 if it is a regular attribute or other type of node, or -1 in case of error.

xmlTextReaderIsValid ()

int	xmlTextReaderIsValid		(xmlTextReaderPtr reader)

Retrieve the validity status from the parser context

reader: the xmlTextReaderPtr used
Returns: the flag value 1 if valid, 0 if no, and -1 in case of error

xmlTextReaderLocalName ()

xmlChar *	xmlTextReaderLocalName	(xmlTextReaderPtr reader)

The local name of the node.

reader: the xmlTextReaderPtr used
Returns: the local name or NULL if not available, if non NULL it need to be freed by the caller.

xmlTextReaderLocatorBaseURI ()

xmlChar *	xmlTextReaderLocatorBaseURI	(xmlTextReaderLocatorPtr locator)

Obtain the base URI for the given locator.

locator: the xmlTextReaderLocatorPtr used
Returns: the base URI or NULL in case of error, if non NULL it need to be freed by the caller.

xmlTextReaderLocatorLineNumber ()

int	xmlTextReaderLocatorLineNumber	(xmlTextReaderLocatorPtr locator)

Obtain the line number for the given locator.

locator: the xmlTextReaderLocatorPtr used
Returns: the line number or -1 in case of error.

xmlTextReaderLookupNamespace ()

xmlChar *	xmlTextReaderLookupNamespace	(xmlTextReaderPtr reader, 
const xmlChar * prefix)

Resolves a namespace prefix in the scope of the current element.

reader: the xmlTextReaderPtr used
prefix: the prefix whose namespace URI is to be resolved. To return the default namespace, specify NULL
Returns: a string containing the namespace URI to which the prefix maps or NULL in case of error. The string must be deallocated by the caller.

xmlTextReaderMoveToAttribute ()

int	xmlTextReaderMoveToAttribute	(xmlTextReaderPtr reader, 
const xmlChar * name)

Moves the position of the current instance to the attribute with the specified qualified name.

reader: the xmlTextReaderPtr used
name: the qualified name of the attribute.
Returns: 1 in case of success, -1 in case of error, 0 if not found

xmlTextReaderMoveToAttributeNo ()

int	xmlTextReaderMoveToAttributeNo	(xmlTextReaderPtr reader, 
int no)

Moves the position of the current instance to the attribute with the specified index relative to the containing element.

reader: the xmlTextReaderPtr used
no: the zero-based index of the attribute relative to the containing element.
Returns: 1 in case of success, -1 in case of error, 0 if not found

xmlTextReaderMoveToAttributeNs ()

int	xmlTextReaderMoveToAttributeNs	(xmlTextReaderPtr reader, 
const xmlChar * localName,
const xmlChar * namespaceURI)

Moves the position of the current instance to the attribute with the specified local name and namespace URI.

reader: the xmlTextReaderPtr used
localName: the local name of the attribute.
namespaceURI: the namespace URI of the attribute.
Returns: 1 in case of success, -1 in case of error, 0 if not found

xmlTextReaderMoveToElement ()

int	xmlTextReaderMoveToElement	(xmlTextReaderPtr reader)

Moves the position of the current instance to the node that contains the current Attribute node.

reader: the xmlTextReaderPtr used
Returns: 1 in case of success, -1 in case of error, 0 if not moved

xmlTextReaderMoveToFirstAttribute ()

int	xmlTextReaderMoveToFirstAttribute	(xmlTextReaderPtr reader)

Moves the position of the current instance to the first attribute associated with the current node.

reader: the xmlTextReaderPtr used
Returns: 1 in case of success, -1 in case of error, 0 if not found

xmlTextReaderMoveToNextAttribute ()

int	xmlTextReaderMoveToNextAttribute	(xmlTextReaderPtr reader)

Moves the position of the current instance to the next attribute associated with the current node.

reader: the xmlTextReaderPtr used
Returns: 1 in case of success, -1 in case of error, 0 if not found

xmlTextReaderName ()

xmlChar *	xmlTextReaderName	(xmlTextReaderPtr reader)

The qualified name of the node, equal to Prefix :LocalName.

reader: the xmlTextReaderPtr used
Returns: the local name or NULL if not available, if non NULL it need to be freed by the caller.

xmlTextReaderNamespaceUri ()

xmlChar *	xmlTextReaderNamespaceUri	(xmlTextReaderPtr reader)

The URI defining the namespace associated with the node.

reader: the xmlTextReaderPtr used
Returns: the namespace URI or NULL if not available, if non NULL it need to be freed by the caller.

xmlTextReaderNext ()

int	xmlTextReaderNext		(xmlTextReaderPtr reader)

Skip to the node following the current one in document order while avoiding the subtree if any.

reader: the xmlTextReaderPtr used
Returns: 1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error

xmlTextReaderNextSibling ()

int	xmlTextReaderNextSibling	(xmlTextReaderPtr reader)

Skip to the node following the current one in document order while avoiding the subtree if any. Currently implemented only for Readers built on a document

reader: the xmlTextReaderPtr used
Returns: 1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error

xmlTextReaderNodeType ()

int	xmlTextReaderNodeType		(xmlTextReaderPtr reader)

Get the node type of the current node Reference: http://www.gnu.org/software/dotgnu/pnetlib-doc/System/Xml/XmlNodeType.html

reader: the xmlTextReaderPtr used
Returns: the xmlReaderTypes of the current node or -1 in case of error

xmlTextReaderNormalization ()

int	xmlTextReaderNormalization	(xmlTextReaderPtr reader)

The value indicating whether to normalize white space and attribute values. Since attribute value and end of line normalizations are a MUST in the XML specification only the value true is accepted. The broken behaviour of accepting out of range character entities like � is of course not supported either.

reader: the xmlTextReaderPtr used
Returns: 1 or -1 in case of error.

xmlTextReaderPrefix ()

xmlChar *	xmlTextReaderPrefix	(xmlTextReaderPtr reader)

A shorthand reference to the namespace associated with the node.

reader: the xmlTextReaderPtr used
Returns: the prefix or NULL if not available, if non NULL it need to be freed by the caller.

xmlTextReaderPreserve ()

xmlNodePtr	xmlTextReaderPreserve	(xmlTextReaderPtr reader)

This tells the XML Reader to preserve the current node. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished

reader: the xmlTextReaderPtr used
Returns: the xmlNodePtr or NULL in case of error.

xmlTextReaderPreservePattern ()

int	xmlTextReaderPreservePattern	(xmlTextReaderPtr reader, 
const xmlChar * pattern,
const xmlChar ** namespaces)

This tells the XML Reader to preserve all nodes matched by the pattern. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished

reader: the xmlTextReaderPtr used
pattern: an XPath subset pattern
namespaces: the prefix definitions, array of [URI, prefix] or NULL
Returns: a non-negative number in case of success and -1 in case of error

xmlTextReaderQuoteChar ()

int	xmlTextReaderQuoteChar		(xmlTextReaderPtr reader)

The quotation mark character used to enclose the value of an attribute.

reader: the xmlTextReaderPtr used
Returns: " or ' and -1 in case of error

xmlTextReaderRead ()

int	xmlTextReaderRead		(xmlTextReaderPtr reader)

Moves the position of the current instance to the next node in the stream, exposing its properties.

reader: the xmlTextReaderPtr used
Returns: 1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error

xmlTextReaderReadAttributeValue ()

int	xmlTextReaderReadAttributeValue	(xmlTextReaderPtr reader)

Parses an attribute value into one or more Text and EntityReference nodes.

reader: the xmlTextReaderPtr used
Returns: 1 in case of success, 0 if the reader was not positioned on an attribute node or all the attribute values have been read, or -1 in case of error.

xmlTextReaderReadInnerXml ()

xmlChar *	xmlTextReaderReadInnerXml	(xmlTextReaderPtr reader)

Reads the contents of the current node, including child nodes and markup.

reader: the xmlTextReaderPtr used
Returns: a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.

xmlTextReaderReadOuterXml ()

xmlChar *	xmlTextReaderReadOuterXml	(xmlTextReaderPtr reader)

Reads the contents of the current node, including child nodes and markup.

reader: the xmlTextReaderPtr used
Returns: a string containing the node and any XML content, or NULL if the current node cannot be serialized. The string must be deallocated by the caller.

xmlTextReaderReadState ()

int	xmlTextReaderReadState		(xmlTextReaderPtr reader)

Gets the read state of the reader.

reader: the xmlTextReaderPtr used
Returns: the state value, or -1 in case of error

xmlTextReaderReadString ()

xmlChar *	xmlTextReaderReadString	(xmlTextReaderPtr reader)

Reads the contents of an element or a text node as a string.

reader: the xmlTextReaderPtr used
Returns: a string containing the contents of the Element or Text node, or NULL if the reader is positioned on any other type of node. The string must be deallocated by the caller.

xmlTextReaderRelaxNGSetSchema ()

int	xmlTextReaderRelaxNGSetSchema	(xmlTextReaderPtr reader, 
xmlRelaxNGPtr schema)

Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @schema is NULL, then RelaxNG validation is deactivated. @ The @schema should not be freed until the reader is deallocated or its use has been deactivated.

reader: the xmlTextReaderPtr used
schema: a precompiled RelaxNG schema
Returns: 0 in case the RelaxNG validation could be (de)activated and -1 in case of error.

xmlTextReaderRelaxNGValidate ()

int	xmlTextReaderRelaxNGValidate	(xmlTextReaderPtr reader, 
const char * rng)

Use RelaxNG schema to validate the document as it is processed. Activation is only possible before the first Read(). If @rng is NULL, then RelaxNG schema validation is deactivated.

reader: the xmlTextReaderPtr used
rng: the path to a RelaxNG schema or NULL
Returns: 0 in case the schemas validation could be (de)activated and -1 in case of error.

xmlTextReaderRelaxNGValidateCtxt ()

int	xmlTextReaderRelaxNGValidateCtxt	(xmlTextReaderPtr reader, 
xmlRelaxNGValidCtxtPtr ctxt,
int options)

Use RelaxNG schema context to validate the document as it is processed. Activation is only possible before the first Read(). If @ctxt is NULL, then RelaxNG schema validation is deactivated.

reader: the xmlTextReaderPtr used
ctxt: the RelaxNG schema validation context or NULL
options: options (not used yet)
Returns: 0 in case the schemas validation could be (de)activated and -1 in case of error.

xmlTextReaderSchemaValidate ()

int	xmlTextReaderSchemaValidate	(xmlTextReaderPtr reader, 
const char * xsd)

Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read(). If @xsd is NULL, then XML Schema validation is deactivated.

reader: the xmlTextReaderPtr used
xsd: the path to a W3C XSD schema or NULL
Returns: 0 in case the schemas validation could be (de)activated and -1 in case of error.

xmlTextReaderSchemaValidateCtxt ()

int	xmlTextReaderSchemaValidateCtxt	(xmlTextReaderPtr reader, 
xmlSchemaValidCtxtPtr ctxt,
int options)

Use W3C XSD schema context to validate the document as it is processed. Activation is only possible before the first Read(). If @ctxt is NULL, then XML Schema validation is deactivated.

reader: the xmlTextReaderPtr used
ctxt: the XML Schema validation context or NULL
options: options (not used yet)
Returns: 0 in case the schemas validation could be (de)activated and -1 in case of error.

xmlTextReaderSetErrorHandler ()

void	xmlTextReaderSetErrorHandler	(xmlTextReaderPtr reader, 
xmlTextReaderErrorFunc f,
void * arg)

Register a callback function that will be called on error and warnings. If @f is NULL, the default error and warning handlers are restored.

reader: the xmlTextReaderPtr used
f: the callback function to call on error and warnings
arg: a user argument to pass to the callback function

xmlTextReaderSetMaxAmplification ()

void	xmlTextReaderSetMaxAmplification	(xmlTextReaderPtr reader, 
unsigned maxAmpl)

Set the maximum amplification factor. See xmlCtxtSetMaxAmplification.

reader: an XML reader
maxAmpl: maximum amplification factor

xmlTextReaderSetParserProp ()

int	xmlTextReaderSetParserProp	(xmlTextReaderPtr reader, 
int prop,
int value)

Change the parser processing behaviour by changing some of its internal properties. Note that some properties can only be changed before any read has been done.

reader: the xmlTextReaderPtr used
prop: the xmlParserProperties to set
value: usually 0 or 1 to (de)activate it
Returns: 0 if the call was successful, or -1 in case of error

xmlTextReaderSetSchema ()

int	xmlTextReaderSetSchema		(xmlTextReaderPtr reader, 
xmlSchemaPtr schema)

Use XSD Schema to validate the document as it is processed. Activation is only possible before the first Read(). if @schema is NULL, then Schema validation is deactivated. The @schema should not be freed until the reader is deallocated or its use has been deactivated.

reader: the xmlTextReaderPtr used
schema: a precompiled Schema schema
Returns: 0 in case the Schema validation could be (de)activated and -1 in case of error.

xmlTextReaderSetStructuredErrorHandler ()

void	xmlTextReaderSetStructuredErrorHandler	(xmlTextReaderPtr reader, 
xmlStructuredErrorFunc f,
void * arg)

Register a callback function that will be called on error and warnings. If @f is NULL, the default error and warning handlers are restored.

reader: the xmlTextReaderPtr used
f: the callback function to call on error and warnings
arg: a user argument to pass to the callback function

xmlTextReaderSetup ()

int	xmlTextReaderSetup		(xmlTextReaderPtr reader, 
xmlParserInputBufferPtr input,
const char * URL,
const char * encoding,
int options)

Setup an XML reader with new options

reader: an XML reader
input: xmlParserInputBufferPtr used to feed the reader, will be destroyed with it.
URL: the base URL to use for the document
encoding: the document encoding, or NULL
options: a combination of xmlParserOption
Returns: 0 in case of success and -1 in case of error.

xmlTextReaderStandalone ()

int	xmlTextReaderStandalone		(xmlTextReaderPtr reader)

Determine the standalone status of the document being read.

reader: the xmlTextReaderPtr used
Returns: 1 if the document was declared to be standalone, 0 if it was declared to be not standalone, or -1 if the document did not specify its standalone status or in case of error.

xmlTextReaderValue ()

xmlChar *	xmlTextReaderValue	(xmlTextReaderPtr reader)

Provides the text value of the node if present

reader: the xmlTextReaderPtr used
Returns: the string or NULL if not available. The result must be deallocated with xmlFree()

xmlTextReaderXmlLang ()

xmlChar *	xmlTextReaderXmlLang	(xmlTextReaderPtr reader)

The xml:lang scope within which the node resides.

reader: the xmlTextReaderPtr used
Returns: the xml:lang value or NULL if none exists., if non NULL it need to be freed by the caller.