Explore the RiC model - every entity, attribute and relation, plain and navigable. Open the model navigator ↗

Part of specification v0.46.0. Earlier versions are preserved as tagged releases.

Change control

This page is the policy for changing the OpenRiC contract: the specification, its profiles, the API contract, the JSON Schemas, the SHACL shapes and the fixtures. It took effect on 2026-10-15 and applies to every release after v0.43.14. The process for proposing a change, and who may object, is in Governance.

What carries a version

Artefact Version Where it is recorded
The specification MAJOR.MINOR.PATCH, currently v0.46.0 version.json, a git tag, and the release manifest
Each profile Its own MAJOR.MINOR.PATCH, moving independently The profile page header and _data/profiles.json
The API contract The specification’s version info.version in contract/openapi.json; CI fails if it differs
JSON Schemas, SHACL shapes, fixtures The specification’s version The git tag; a server claiming a spec version validates against that tag’s files
The openricx: extension namespace The major version in its IRI (/ns/ext/v1#) Terms are never removed from v1, only deprecated

What each change bumps

Before 1.0, a breaking change bumps the minor version. From 1.0 it bumps the major version. A profile follows the same rule against its own version, and the specification’s version moves too whenever any profile does.

Change Specification before 1.0 Specification from 1.0
Typo, clarification, example, or a fix that does not change any MUST Patch Patch
New optional endpoint, field or parameter; a relaxed constraint; a new draft profile Minor Minor
A draft profile becomes normative Minor Minor
New required endpoint or field; a removed or renamed field; a tightened constraint; a changed status code; a term moved to another namespace Minor, with a migration note Major, with a migration note

When it is unclear whether a change breaks anything, it is treated as breaking.

Deprecation

Nothing in the contract is deleted without first being deprecated.

Migration notes

Every breaking change ships with a migration note in its changelog entry. The note says what changed, whether servers, clients or both are affected, what each must do, and which fixture shows the new behaviour. A breaking change without a note is not released.

Approval and the signed change log

Support