Menu

Tree [99471b] default tip /
 History

Read Only access


File Date Author Commit
 .hgtags 2014-11-14 egoflux0 egoflux0 [99471b] Added tag v1.1.2 for changeset 772cf01b3691
 CHANGELOG.txt 2014-11-14 egoflux0 egoflux0 [772cf0] v1.1.2 changes
 README 2014-06-21 egoflux0@gmail.com egoflux0@gmail.com [8ff6ea] Fixed a bug with tag name extraction in nodes
 btrxml.c 2014-11-14 egoflux0 egoflux0 [49bc40] fix for attribute counting, crash, and null poi...
 btrxml.h 2014-11-14 egoflux0 egoflux0 [722a93] v1.1.2 comments

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/