Concise Logically Organized Data
Concise Logically Organized Data (CLOD) is a human readable, machine processable data syntax set in a clear text stream.
Unlike some other common data syntaxes that have their roots in programming languages, processing or storage paradigms, CLOD attempts to only describe the data, ignoring how it might be consumed, processed or transmitted. This disconnection of the data from the software takes its roots from the ASC X12 and UN/EDIFACT syntaxes which have been in use for several decades for data exchange. Unlike those, however, CLOD does not try to define beforehand what data can be exchanged or how it is to be transmitted. CLOD leaves these decisions to the end user.
A CLOD document takes the approach that all data sets can have their members broken down into smaller data sets, forming parent-child relationships, until individual pieces of key-value information are described. These parent-child relationships and their content make up the CLOD document.
A loose real-world analogy for this concept (and to better explain how parent-child relationships work) might be:
- The United States of America is divided up into States. This makes the USA the parent of its States.
- Each State is divided up into Counties or Parishes. This makes a State the parent of its Counties or Parishes.
- Each County or Parish is divided up into Townships or Cities. This makes a County or Parish the parent of its Townships or Cities.
- Each Township or City is divided up into Properties. This makes a Township or City the parent of its Properties.
- Each Property can contain a Home. This makes a Property the parent of its Home.
In this case, the Home is the smallest piece of information and its complete and unambiguous location inside the USA can be described.
Rules and Definitions
A CLOD document follows three layers of rules and definitions in a bootstrapping manner. They are Base, Versions and Schemas.
All CLOD documents will adhere to the Base Definition which contains rules about its structure, character encoding and so forth. Not following any of these will cause the CLOD document to be considered invalid by all validity checking and parsing tools.
All CLOD documents will be of a specified Version. The Version definition decribes the more advanced structure and rules used to build and read a CLOD document for the further processing of the data it contains. A CLOD document will be considered invalid by all validity checking and parsing tools if the data in or structure of the CLOD document does not conform to all the requirements and specifications of its Version.
All data being described by a CLOD document will adhere to a Schema (explicitly or implicitly). The Schema defines the data types and rules used to read and interpret the data contained in a CLOD document. If a Schema file is identified, then a CLOD document will be considered invalid by all validity checking and parsing tools if the data in the CLOD document does not conform to all the requirements and specifications of that Schema file.