FBL — Format Binding Language
Contents of FBL 0.1
Specification, version 0.1 (Working Draft)
| Date | 2026-09-30 |
| Document schema | fbl.schema.json (JSON Schema, draft 2020-12), $defs/Document |
| Also in the schema | $defs/Registration (the parsed .adp registration), $defs/Fixture (round-trip fixtures) |
| Serves | every kind of tool; today DISL, through persistence.binding |
| Expression language | CEL — Common Expression Language (https://cel.dev) |
| Media type (provisional) | application/vnd.fbl.document+json |
| File extension | .fbl |
This is a working draft. It is complete enough to implement a conforming validator of FBL documents and a host that reads and writes bodies through declared bindings, but individual constructs may still change before version 1.0. Sections and paragraphs marked (informative) explain intent and give guidance; everything else is normative.
FBL relies on constructs that DISL 0.2 defines: id strategies and ephemeral ids (DISL §11.5), findings and their source locations (DISL §8.6), derived elements (DISL §4.11) and the tool type's origin (language.origin, DISL §3.2). Where this document names one of them, DISL is the definition; FBL defines none of its own.
The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY and OPTIONAL are to be interpreted as described in RFC 2119 and RFC 8174 when, and only when, they appear in bold capitals.