Product Versioning
Versioning of each technical “Product” or asset (i.e. API, Design Principle(s), Data Library) is managed using Semantic Versioning 2.0.0.
Semantic Versioning
Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- PATCH version when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.
A pre-release version MAY be denoted by appending a hyphen (refer to Semantic Versioning - Item 9)
For examples: 1.0.0-alpha.1 is a valid pre-release version.
Pre-release Labels
The following pre-release labels will be used across all products:
Pre-release Label | Lifecycle | Description |
---|---|---|
alpha |
Complete enough for internal testing. | |
beta |
early | Complete enough for external testing. |
beta |
late | Complete enough for external testing. Usually feature complete. |
rc |
Almost ready for final release. No new feature enhancements. |
rc = Release Candidate.
Maturity Levels
Taking a similar approach to the FHIR Maturity Model National Data Opt-out Programme will only freeze / master a technical specification once it has been independently implemented in at least three systems and demonstrated to interoperate.
Level | Version | Description | |
---|---|---|---|
1 | X.Y.Z-alpha.n |
Alpha; rapid iterations, fail fast, exploration, proof of concepts, approach flexible. | Draft may not have been implemented at all but has been published. |
2 | X.Y.Z-beta.n |
Early Beta; rapid iterations, community engaged, scope flexible, high-level approach agreed in principle. | Draft partially implemented in one or more prototype systems. |
3 | X.Y.Z-beta.n |
Late Beta; slower iterations, community engaged, scope largely agreed, high-level approach fixed. | Draft partially implemented two or more commercial systems. |
4 | X.Y.Z-rc.n |
Release Candidate; slower iterations, community engaged, scope fixed, detailed approach fixed, no new features, bug fixes and amendments for clinical safety & IG only. | Draft implemented in at least two commercial systems. |
5 | X.Y.Z |
Stable; release version. | Draft implemented in at least three commercial systems with full accreditation and assurance mechanisms in place. |