Read Me
What is btrxml?
Perhaps it is best to start off with what btrxml ISN'T!
btrxml is not, does not, or will not:
* A fully compliant XML parser
* An XML validator
* Adhere to any DTD, XSLT or other Schema
* Use Unicode or wide chars
* Write, save, or output XML in any form
* Use namespaces
* handle CDATA
* handle entities
* "mixed" text elements with children nodes
* do well with non-well-formed XML data
* handle streaming XML data
* probably a lot of other stuff
With that said, what DOES btrxml do?
btrxml is, does, or handles:
* written in a C file, with an accompanying H file
* basic XML
* wholly consumable XML data
* create a DOM-like data structure
* provide some functions to access the DOM
* duplicate tags
* comments, by ignoring them
* attributes
* nested elements
* text elements
* self-closing tags
* gracefully stop processing when an error is encountered
* ideal for memory constrained environments
* going to be released open source with a zlib license
Ok, now that the quick list of the "is" and "is not" is out there, this
software is designed to be very fast with minimal impact on memory. There
are a lot of XML applications out there on the Internet, but none that
really fit this niche, so it was time to make a C library ideal for phones,
mobile devices, and things of this nature. This is not intended to replace
more feature-rich XML software, but rather give a programmer the ability
to "just read in XML".
Ideally, only well-formed XML data is sent through this software, but there
is some basic sanity testing done during processing and if/when an error
condition is found an error count is added to your document structure for
your further consideration. All error scenarios are not tested for, but
when possible, btrxml should cease processing the given data if a
recognized error occurs.
If you need help with using this library, the wiki on our sourceforge page
is likely the best place to find the information you will need.
The wiki can be found here:
https://sourceforge.net/p/btrxml/wiki/Home/