#include <xml.h>
Protected Member Functions | |
virtual void | characters (caddr_t text, size_t size) |
Virtual to receive character text extracted from the document. | |
virtual void | comment (caddr_t text, size_t size) |
Virtual to receive embedded comments in XML document being parsed. | |
bool | end (void) |
End of document check. | |
virtual void | endDocument (void) |
Notify end of document event. | |
virtual void | endElement (caddr_t name)=0 |
Notify end of an element in the document. | |
bool | parse (FILE *file) |
Parse a file buffer and return parser document completion flag. | |
bool | parse (CharacterProtocol &stream) |
Parse a stream buffer and return parser document completion flag. | |
bool | partial (char *address, size_t size) |
Parse a chunk of data and return parser completion flag. | |
virtual void | startDocument (void) |
Notify start of document event. | |
virtual void | startElement (caddr_t name, caddr_t *attr)=0 |
Notify start of an element in the document. | |
XMLParser (unsigned size=8192) | |
Create xml parser. | |
virtual | ~XMLParser () |
Destroy xml parser. |
This class implements a basic XML stream parser that can be used to examine an XML resource thru virtual I/O methods. This class must be derived into one that can implement the physical I/O required to parse actual data. A mixer class using XMLParser and tcpstream would be one example of this. This can also be used to parse xml content in memory buffers easily. This parser is only concerned with well-formedness, and does not perform validation.
Definition at line 47 of file xml.h.
ucc::XMLParser::XMLParser | ( | unsigned | size = 8192 |
) | [protected] |
Create xml parser.
size | of XML data buffer. |
virtual void ucc::XMLParser::characters | ( | caddr_t | text, | |
size_t | size | |||
) | [protected, virtual] |
Virtual to receive character text extracted from the document.
text | received. | |
size | of text received. |
virtual void ucc::XMLParser::comment | ( | caddr_t | text, | |
size_t | size | |||
) | [protected, virtual] |
Virtual to receive embedded comments in XML document being parsed.
text | received. | |
size | of text received. |
bool ucc::XMLParser::end | ( | void | ) | [inline, protected] |
virtual void ucc::XMLParser::endElement | ( | caddr_t | name | ) | [protected, pure virtual] |
Notify end of an element in the document.
name | of element ending. |
bool ucc::XMLParser::parse | ( | FILE * | file | ) | [protected] |
Parse a file buffer and return parser document completion flag.
This is used to scan a file buffer for a complete XML document. The file is scanned until the document is complete or EOF. Multiple XML document instances can be scanned from a continues XML streaming source.
file | buffer to parse. |
bool ucc::XMLParser::parse | ( | CharacterProtocol & | stream | ) | [protected] |
Parse a stream buffer and return parser document completion flag.
This is used to scan a stream buffer for a complete XML document. The stream is scanned until the document is complete or EOF. Multiple XML document instances can be scanned from a continues XML streaming source.
stream | buffer to parse. |
bool ucc::XMLParser::partial | ( | char * | address, | |
size_t | size | |||
) | [protected] |
Parse a chunk of data and return parser completion flag.
This is used to externally drive data into the XML parser. The return status can be used to determine when a document has been fully parsed. This can be called multiple times to push stream data into the parser.
address | of data to parse. | |
size | of data to parse. |
virtual void ucc::XMLParser::startElement | ( | caddr_t | name, | |
caddr_t * | attr | |||
) | [protected, pure virtual] |
Notify start of an element in the document.
name | of element found. | |
attr | list of attributes extracted. |