Templat ID og versjonering

Templat ID og versjonering

Templat-IDer er fra ADL 2 fastlagt til å være en “Human-Readable Identifier” (HRID; https://specifications.openehr.org/releases/AM/development/AOM2.html#_archetype_hrid_class) på denne formen:

[namespace]::[rm_publisher]-[rm_package]-[rm_class].[concept_name].[release_version]

For eksempel: no.helsevest::openEHR-EHR-COMPOSITION.hbo_behandlingsnotat.v1.0.0

MERK! Per Oct 8, 2025 fungerer ikke AQL med WHERE template_id = i DIPS Arena med templater som har :: i ID’en. Det arbeides med å finne ut av hvorfor og få rettet det. I mellomtiden anbefaler vi som en workaround å bruke __ som erstatning for ::. Da blir eksempelet over no.helsevest__openEHR-EHR-COMPOSITION.hbo_behandlingsnotat.v1.0.0.

Namespace

Bruk namespace for organisasjonen som tilsvarer omfanget til løsningen, f.eks. no.helsevest. Dersom templatet fra starten er ment å være felles mellom organisasjoner/regioner, bruk no.openehr.

RM

RM publisher skal være openEHR og RM package skal være EHR. RM class er arketype-klassen til toppnoden i templatet. Som regel er dette COMPOSITION, men ved småtemplater kan det være hvilken som helst annen arketypeklasse.

Concept name

Concept name beskriver innholdet i templatet. Det skal være en alfanumerisk streng med underscore som separatortegn.

Release version

Release version skal være en SemVer 2.0-versjon (https://semver.org/).

For eksempel: v1.2.3

Førsteutkast

For templater i første utkast før man begynner å lage løsninger basert på den, kan bruke versjonering på formen v0.Y.Z-alpha, men det er sterkt anbefalt å ta i bruk prerelease-versjonering som beskrevet under før man begynner å lage funksjonalitet basert på templatet.

Prerelase-versjoner

For prerelease-versjoner kan man bruke SemVer 2.0 punkt 9: https://semver.org/#spec-item-9

For eksempel: v1.0.0-alpha.0.0.1, v1.0.0-alpha.0.2.0, v1.0.0-alpha.0.5.4

Revurdering etter første release

For revurdering etter første release kan man bruke SemVer 2.0 punkt 10: https://semver.org/#spec-item-10

For eksempel: v1.0.1-alpha+0.0.1

Regex

Følgende regex kan brukes for å matche en gyldig templat-id:

/^ (?<namespace>[a-zA-Z][a-zA-Z0-9_.:\/&?=+-]*.):: (?<rm_publisher>[a-zA-Z][a-zA-Z0-9_]+)- (?<rm_package>[a-zA-Z][a-zA-Z0-9_]+)- (?<rm_class>[a-zA-Z][a-zA-Z0-9_]+)\. (?<concept_name>[a-zA-Z][a-zA-Z0-9_-]+)\. v(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*) (?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))? (?:\+(?<buildmetadata>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))? $/xmg