{
  "registry": "opjd/schema/versions",
  "registry_format": 1,
  "note": "Maschinenlesbares Versionsregister der oPJD-Spezifikation. Manuell gepflegt; Konsistenz wird in CI geprüft (scripts/check-versions.mjs). Schlüssel und Statuswerte englisch, Beschreibungen deutsch (oPJD-Konvention).",
  "latest": "0.2.0",
  "latest_released": null,
  "spec_semver_policy": "SemVer mit Domänensemantik: MAJOR = Bedeutungsänderung oder Strukturbruch (Migration erforderlich), MINOR = additive Erweiterung oder Präzisierung ohne Bruch, PATCH = redaktionell (Beschreibungen, Beispiele, Tippfehler). Sonderregel 0.x (Entwurfsphase): auch Minor darf brechen, wird dann im Changelog als BREAKING markiert.",
  "alias_policy": "Die unversionierten Pfade /schema/opjd-package.schema.json und /schema/examples/ folgen immer 'latest' und sind Bequemlichkeits-Einstiege. Verbindlich für den Austausch ist ausschließlich die versionierte URL.",
  "lifecycle": {
    "draft": "In Arbeit. Der Inhalt kann sich unter derselben Versionsnummer noch ändern. Nicht für den produktiven Austausch — Pilotierung nur nach bilateraler Absprache.",
    "review": "Inhaltlich eingefroren als Freigabekandidat; öffentliche Kommentierungsfrist bzw. Gremienabstimmung läuft. Nur noch redaktionelle Korrekturen.",
    "released": "Unveränderlich. Jede inhaltliche Änderung erzeugt eine neue Version. Zulässig für neue Pakete.",
    "deprecated": "Für neue Pakete nicht mehr verwenden. Empfänger müssen Pakete dieser Version bis zum Stichtag sunset_at weiter annehmen.",
    "retired": "Nach dem Stichtag. Keine Annahmepflicht mehr. Artefakte bleiben dauerhaft abrufbar — nichts wird gelöscht."
  },
  "versions": [
    {
      "version": "0.2.0",
      "status": "draft",
      "released_at": null,
      "valid_from": null,
      "sunset_at": null,
      "schema_id": "opjd/schema/opjd-package/0.2.0",
      "schema_url": "/schema/0.2.0/opjd-package.schema.json",
      "sha256": "1ad008f40c198223ce3a90e30b3802e579724437df068da6beccd5b8903639eb",
      "examples": [
        "/schema/0.2.0/examples/opjd-example-nsclc.json",
        "/schema/0.2.0/examples/opjd-example-prostate-as.json"
      ],
      "dictionary_url": "/schema/0.2.0/dictionary.json",
      "changelog_url": "/changelog",
      "release_notes_url": "/docs/releases/0.2.0.md",
      "breaking_changes": null,
      "migration_url": null,
      "note": "Entwurfsstand für die Konsensphase (OncoFlow AP1) und die technische Machbarkeit (AP2). Additiv gegenüber 0.1.0."
    },
    {
      "version": "0.1.0",
      "status": "retired",
      "released_at": null,
      "valid_from": null,
      "sunset_at": null,
      "schema_id": null,
      "schema_url": null,
      "sha256": null,
      "examples": [],
      "dictionary_url": null,
      "changelog_url": "/changelog",
      "release_notes_url": null,
      "breaking_changes": null,
      "migration_url": null,
      "note": "Initialer Paketkontrakt als interner Arbeitsstand; nie als Datei publiziert. Inhalt im Changelog dokumentiert."
    }
  ]
}
