User Tools

Site Tools

Site » About 

This is an old revision of the document!

Project Introduction

XBUP is binary data protocol and file format for communication, data storage and application interfaces.

Key features

  • Unified block-tree structure - Combine different types of data together
  • Build-in and custom data types - Catalog of types and external type definitions
  • Transformations framework - For compression, encryption and compatibility handling


Project should provide universal protocol which should allow general methods for handling various types of data including:

  • Multimedia Files - Audio, Video, Animation
  • Filesystem Structure - Allow to represent data of filesystem or as compressed archive
  • Application API - Remote or local methods execution supporting parameters and result passing
  • Serialization Protocol - Provide ability to serialize structured data
  • Long-term data storage - Provide way to define data with separate or integrated specification
  • Huge data - Use dynamic numeric values to allow support for data in terabytes range or more
  • Representation of segmented, fragmented or indexed data

The protocol is also intended to bring advantages of modern markup languages like XML into binary world. It's a ground-up designed alternative focused on binary data, yet providing similar techniques like XML Schema, XML Namespaces, XSLT and so on.

Where applicable, project should also include concepts from other similar protocols, like for example:

  • RIFF - Resource Interchange File Format
  • HDF5/CDF - Hierarchical Data Format / Common Data Format
  • ASN1 - Abstract Syntax Notation One
  • Matroska/EBML - Extensible Binary Meta Language
  • Protocol Buffers

Design Principles

Project is using bottom-up approach with layers building on top of each other adding gradually new functionality.

Some of the design principles:

  • Flexibility over efficiency
  • Abstraction over compactness
  • Evolving over simplified


You can learn more about this project by reading next sections about the project.

en/about.1487962532.txt.gz · Last modified: 2017/02/24 19:55 by hajdam