PIL / Positional Interchange Layout
Positional Interchange Layout
A binary layout for complete objects and partial changes.
Independent of the datastore that carries it.
Inside a PIL Record.
Conceptual layout. Actual widths depend
on the Definition and present fields.
Absent is different from null. Adaptive integer encoding is selected by the Definition. REF16 remains an optional shared-value reference.
PIL Definitions
Field positions, types, and dictionaries live in a shared Definition. A record can carry complete state or a single changed field.
Definitions are encoded as CBOR. CDDL describes their structure; the codec enforces the remaining semantic rules.
Download the Definition Schema{
"definition": "payment/transactions",
"pil": 0,
"version": 0,
"fields": [
{ "name": "id", "type": "UUID" },
{ "name": "revision_id", "type": "U16" },
{ "name": "state", "type": "STRING",
"values": ["pending", "authorized", "captured"] }
]
}state: authorizedOmitted fields remain omitted.Records and Containers.
PIL describes a record. A PAC groups records under a Definition and can factor common values. Trie-Trunk supplies the storage binding, segment placement, and replication behavior.
The CDDL download describes the existing CBOR Definition structure, including its optional resource binding. It does not replace semantic validation or introduce a new wire format.
Explore the Codec