Universal Binary Format

UBF 2.2 Home Page

UBF is a framework that permits Erlang and the outside world to talk with each other. The documentation and the corresponding open-source code repositories are based on Joe Armstrong’s original UBF site and code with an MIT license file added to the distribution. Since then, a large number of enhancements and improvements have been added.

UBF is a language for transporting and describing complex data structures across a network. It has three components:

  • UBF(a) is a "language neutral" data transport format, roughly equivalent to well-formed XML.
  • UBF(b) is a programming langauge for describing types in UBF(a) and protocols between clients and servers. This layer is typically called the "protocol contract". UBF(b) is roughly equivalent to Verified XML, XML-schemas, SOAP and WDSL.
  • UBF(c) is a meta-level protocol used between a UBF client and a UBF server.

UBF is intended for production deployment and is deployed in "24x7x365" carrier-grade systems.

The UBF GitHub README is a good first step to get started quickly. Check the download, build, and install instructions.

Reading the UBF 2.2 User’s Guide is STRONGLY recommended.