HL7 FHIR Implementation Guide: DK Core
3.5.0 - release Denmark flag

This page is part of the HL7 FHIR Implementation Guide: DK Core (v3.5.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Data Type Profile: Danish Central Person Register (CPR) Identifier

Official URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-cpr-identifier Version: 3.5.0
Active as of 2025-12-19 Computable Name: DkCoreCprIdentifier

This structure holds the danish CPR identifier

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Fixed Value: official
... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value ΣC 1..1 string The value that is unique
Constraints: cpr
Example General: 123456
Max Length:10

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())

This structure is derived from Identifier

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use 0..1 code usual | official | temp | secondary | old (If known)
Fixed Value: official
... system 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value C 1..1 string The value that is unique
Constraints: cpr
Max Length:10

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Fixed Value: official
... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value ΣC 1..1 string The value that is unique
Constraints: cpr
Example General: 123456
Max Length:10
... period Σ 0..1 Period Time period when id is/was valid for use
... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Identifier

Summary

Mandatory: 2 elements
Fixed: 2 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Fixed Value: official
... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value ΣC 1..1 string The value that is unique
Constraints: cpr
Example General: 123456
Max Length:10

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())

Differential View

This structure is derived from Identifier

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use 0..1 code usual | official | temp | secondary | old (If known)
Fixed Value: official
... system 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value C 1..1 string The value that is unique
Constraints: cpr
Max Length:10

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Fixed Value: official
... system Σ 1..1 uri The namespace for the identifier value
Fixed Value: urn:oid:1.2.208.176.1.2
... value ΣC 1..1 string The value that is unique
Constraints: cpr
Example General: 123456
Max Length:10
... period Σ 0..1 Period Time period when id is/was valid for use
... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpr error Identifier.value Requirement of danish civil registration numbers. See https://cpr.dk/cpr-systemet/opbygning-af-cpr-nummeret/#:~:text=5%20%2D%206%20position%20angiver%20personens,i%20personnummeret%20angiver%20personens%20k%C3%B8n.
Requirements:

Requirement of danish civil registration numbers

matches('^((((0[1-9]|1[0-9]|2[0-9]|3[0-1])(01|03|05|07|08|10|12))|((0[1-9]|1[0-9]|2[0-9]|30)(04|06|09|11))|((0[1-9]|1[0-9]|2[0-9])(02)))[0-9]{6})$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Identifier

Summary

Mandatory: 2 elements
Fixed: 2 elements

 

Other representations of profile: CSV, Excel, Schematron