User Tools

Site Tools

Site » About 
en:about

Differences

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

Link to this comparison view

en:about [2017/02/14 22:48]
hajdam
en:about [2017/07/08 12:43] (current)
hajdam
Line 1: Line 1:
 ====== Project Introduction ====== ====== Project Introduction ======
  
-Project should provide universal ​protocol ​which should allow general methods ​for handling various types of data including:+XBUP is binary data protocol ​and file format ​for communication, ​data storage and application interfaces.
  
-  ​* **Multimedia ​Files** - Audio, Video, Animation +===== Key Features ===== 
-  * **Filesystem ​Structure** - Allow to represent data of filesystem or as compressed archive+ 
 +  * **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 
 + 
 +===== Motivation ===== 
 + 
 +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   * **Application API** - Remote or local methods execution supporting parameters and result passing
-  * **Serialization ​Protocol** - Provide ability to serialize structured data+  * **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. 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.
  
-==== Design Principles ====+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. Project is using bottom-up approach with layers building on top of each other adding gradually new functionality.
Line 16: Line 37:
 Some of the design principles: Some of the design principles:
  
-  * Flexibility over efficiency +  * **Small steps** - Project should be build and evolve by adding small and independent functionality 
-  * Abstraction over compactness +  * **Universaility first** - Focus should be on support of wide range of use-cases and provide extensibility instead of fixed and compact structure 
-  * Evolving over simplified+  * **Abstraction** - Data should be defined using abstraction instead of vague description only
  
-==== More ====+===== More =====
  
-You can learn more about this project by reading ​next sections ​about the project.+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.1487108890.txt.gz · Last modified: 2017/02/14 22:48 by hajdam