Skip to content
XBD - A hierarchical, self-describing binary format consisting of Tags, Attributes, and SubTags
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
spec
tasks
.gitignore
Gemfile
LICENSE.TXT
README.md
Rakefile
xbd.gemspec

README.md

XBD

The XBD gem allows you to create, load and save XBD files. XBD files are arbitrary, self-describing, hierarchical, binary data structures consisting of "tags", "attributes", and "sub-tags".

XBD vs XML

Feature differences:

  • Any XML file can be converted to XBD, but the referse is not true.
  • XBD allows you to store aribrary binary strings in attributes.
  • XBD does not allow any data between sub-tags
  • XBD Tag and Attribute names can be arbitrary binary string.

Additional benefits of XBD:

  • XBD uses dictionaries (hashes) to store all Tag-Name, Attribute-Name and Attribute-Values. Consequently: XBD files can be as small as 1/10th the size an equivelent XML file
  • XBD files are simple and streamlined for encoding/decoding. Consequently they can be as much as 10x faster to read and write.

(NOTE: The 10x performance improvement was tested on the original pure-C++ implementation vs a fast, pure-C++ XML parser. Tests have not been made in this Ruby version.)

Something went wrong with that request. Please try again.