User Tools

Site Tools

Site » About 


This shows you the differences between two versions of the page.

Link to this comparison view

en:about [2017/02/13 22:05]
hajdam created
en:about [2017/07/08 12:43] (current)
Line 1: Line 1:
 ====== Project Introduction ====== ====== Project Introduction ======
-TODO+XBUP is binary data protocol and file format for communication,​ data storage and application interfaces.
-  * **Advanced Data Structures** - Unified structure should allow to combine various types of data together +===== Key Features =====
-  * **Flexibility** - General framework should provide data transformations/​processing and compatibility issues solving capability +
-  * **Comprehensibility** - Catalog of data types, metadata, relations and abstraction should allow better understanding of data +
-  * **Efficiency** - Optional compression and encryption on multiple levels should allow effective representation of binary data+
 +  * **Unified block-tree structure** - Allows to combine different data together into single unit
 +  * **Build-in and custom data types** - Catalog of types and support for external definitions
 +  * **Transformations framework** - Data processing for compression,​ encryption, compatibility and data handling
-==== Next Sections ​====+===== Motivation =====
-You can learn more about this project by reading ​next sections ​about the project.+Project should provide universal protocol as a more feature-rich alternative to currently used binary protocols. It should provide general methods for handling various types of data including:​ 
 +  * **Multimedia files** - Audio, Video, Animation 
 +  * **Filesystem structure** - Allow to represent data in the form 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 
 +  * **ASN.1** - Abstract Syntax Notation One 
 +  * **Matroska/​EBML** - Extensible Binary Meta Language 
 +  * **Protocol Buffers** - Serialization protocol for binary data exchange 
 +===== 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:​ 
 +  * **Small steps** - Project should be build and evolve by adding small and independent functionality 
 +  * **Universaility first** - Focus should be on support of wide range of use-cases and provide extensibility instead of fixed and compact structure 
 +  * **Abstraction** - Data should be defined using abstraction instead of vague description only 
 +===== More ===== 
 +You can learn more about this project by reading ​following ​sections:
-  * [[en:​about:​motivation|Motivation]] 
   * [[en:​about:​use_cases|Use Cases]]   * [[en:​about:​use_cases|Use Cases]]
   * [[en:​about:​goals|Goals]]   * [[en:​about:​goals|Goals]]
   * [[en:​about:​project_scope|Scope]]   * [[en:​about:​project_scope|Scope]]
 +  * [[en:​about:​logo|Project Logo]]
en/about.1487019932.txt.gz · Last modified: 2017/02/13 22:05 by hajdam