On this page· 3
Specification
| Document | PLXI file format, version 6: specification |
| Revision | 6.0 (2026-10-01; amended 2026-10-06) |
| Applies to | file format 6 |
Contents
- 1. Scope and conventions
- 2. File layout
- 3. Header line
- 3.1 Grammar
- 3.2 Semantics
- 3.3 Final and placeholder headers
- 4. Body: JSONL records
- 4.1 Lines
- 4.2 The record envelope
- 4.3 Typed records
- 4.4 Opaque records (forward compatibility)
- 5. Kind registry
- 5.1 Typed kinds (19)
- 5.2 Reserved kinds
- 5.3 Identity, sort order and dedup key
- 5.4 Payload binding targets
- 6. Integrity: SHA-256 coverage
- 7. Appendix: embedded CSDT container
- 7.1 What it is
- 7.2 Version bytes (not published)
- 7.3 Container checks (not published)
- 7.4 Section descriptor fields PLXI uses (not published)
- 8. Operations
- 8.1 Merge
- 8.2 Diff
- 8.3 Shard
- 9. Verify algorithm
- 10. Footer byte table and canonical JSON
- 10.0 Footer byte table (96 bytes)
- 10.1 Emitted bytes: one member order for every build
- 10.2 Value spelling
- 10.3 Identity form
- 10.4 Relation to RFC 8785 (JCS)
- 11. Transport encoding: .plxi.gz
- 12. Versioning
- 12.1 File format version
- 12.2 Record versions
- 12.3 Spec revisions
- 13. Differences from the reference implementation (not published)
- 14. Conformance levels
- 15. Reserved (not published)
- 16. References
Conventions in brief
Section 1 is normative; this list only points to it. Section 1, Scope and conventions
- The key words MUST, SHOULD, MAY and the rest are used as BCP 14 defines them, and only when written in capitals.
- Byte offsets count from zero, from the first byte of the file. L is the length of the file in bytes.
- Binary integers are little-endian and unsigned unless a rule says otherwise.
- Grammar is ABNF. Every case-sensitive literal is written as byte values.
- SHA-256 is as in FIPS 180-4. CRC32C is the Castagnoli checksum.
- A section labelled “This section is informative” states no requirement. Every other numbered section is normative.
Scope of this publication
This publication covers the format, its records, verification and operations. Section numbers and ids match the full text. This publication leaves out:
- sections 7.2 to 7.4, the inner layout of the embedded container;
- the member lists of the eleven application kinds, ranks 8 to 18 in section 5.1;
- ten of the eleven reserved kind names in section 5.2;
- section 13, on differences from the reference implementation;
- section 15, which is reserved.
A reader that meets a record whose kind it does not know keeps that record whole, as an opaque record. That includes the ten further reserved names.
Kinds 8 to 18 are typed. Section 5.1 gives each rank and primary id, which sorting, merging and comparing use.
© 2020-2026 Cintile Inc. All Rights Reserved.
Anyone may implement this format. Copying or republishing the text of this specification requires permission from Cintile Inc.