Skip to content
hajdam edited this page Nov 27, 2024 · 5 revisions

Goals

The primary goal of this project is to create a communication protocol / data format with the following characteristics, ordered by priority:

  • Universal - Capable of representation of any type of data, suitable for wide use including streaming, long-term storage and parallel accessing
  • Independent - Not tightly linked to a particular spoken language, product, company, processing architecture or programming language
  • Declarative - Self sufficient for data type definition and with the ability to build data types by combining existing ones
  • Normative - Providing reference form for data representation
  • Flexible - Support for data transformations, compatibility and extensibility handling
  • Efficient - Effective data compacting / compression support for plain binary and structured data

More details about what is project trying to achieve

Protocol Design

Protocol design should cover following areas:

  • Data structure - How to store/stream data
  • Data types - Declaration of data types and build-in types
  • Data transformations - Support for data transformations, like compression, encryption and so on

More details about protocol's specification

Prototype Implementation

Free and open source prototype implementation in Java is currently underway. It should provide following outputs:

  • Basic library - Library providing support for handling data encoded in the protocol itself
  • Catalog of types - Catalog service providing access to declaration of types
  • Framework - Local service providing various functions for applications
  • Editor tool - Basic tool for viewing and edition
  • Sample applications and files - Applications and files for demonstration purposes

More details about prototype implementation

More

You can learn more about this project by reading following sections:

Use Cases
Project Scope

Clone this wiki locally