Evolution policy
Extensions and versioning
Forma v1 defines a stable baseline for interoperability. This section defines how the spec evolves and how implementations may add extensions without breaking compatibility.
Versioning
- Forma uses semantic versioning.
- Patch versions fix editorial or validation issues without changing meaning.
- Minor versions may add optional fields or enums in backward-compatible ways.
- Major versions may introduce breaking changes.
Extension model
- Extensions must not redefine the meaning of base fields.
- Extensions should live under an extensions object or vendor-prefixed keys.
- Consumers must ignore unknown extensions safely.
A Forma v1 consumer must continue to accept all valid Forma 1.x documents even when optional fields are added, provided the core semantics remain unchanged.