draft-smith-uber
The Universal Basic Element Representation (UBER) Format
This document defines the Universal Basic Element Representation
(ÜBER), a language-independent, lightweight, text-based serialization
format designed for the portable representation, transmission, and
storage of structured data.
ÜBER employs a unified node architecture in which each node serves
simultaneously as a value-carrier and a structural container. This
recursive model allows any element to encapsulate a discrete data
payload while concurrently functioning as a parent to nested members.
The same structure also provides the granularity needed by
implementations that target high-concurrency access patterns with
localized, low-contention updates.
A top-level ÜBER profile consists of either an explicit root object
or a sequence of members and directives. To prioritize human-centric
design and authoring ergonomics, the grammar supports comments,
flexible arbitrary-length key-value separators, optional commas, and
dotted member names.
The ÜBER type system is defined by recursive containers and scalar
forms. Associative arrays ({}) and collections ([]) support
arbitrary nesting, while concrete ordering behavior remains
implementation-dependent. Scalar forms include deterministic numbers
with arbitrary-precision integer syntax and Java-aligned unsuffixed
floating-point lexical forms, automatic magnitude-based fitting and
promotion, versatile string representations including text blocks,
flexible boolean literals, and both explicit and omitted null states.
This specification defines the lexical and syntactic grammar of ÜBER.
It does not define implementation-specific runtime facilities except
where a grammar element, such as directives, requires a brief
statement of purpose.