Implementation Guide for fælleskommunal informationsmodel
0.7.0 - CI Build Denmark flag

Implementation Guide for fælleskommunal informationsmodel - Local Development build (v0.7.0). See the Directory of published versions

Resource Profile: Citizen

Official URL: http://kl.dk/fhir/common/caresocial/StructureDefinition/KLCommonCitizen Version: 0.7.0
Draft as of 2023-07-06 Computable Name: KLCommonCitizen

Citizen demographics, as expressed by dk-core

Scope and usage

Note that this profile has been taken directly from dk-core Additional requirements or constraints may exist in Danish municipalities, but has not been explicitely stated in this IG.

Note that the example-instances, do not have CPR-identifier. For example-patients with CPR-identifiers MedComs approved list of example-patients have to be used, and the examples in this implementation guide is not matched to the MedCom list. See dk-core for example patients/citizens with CPR identifiers.

Conversions between Danish information model and FHIR-profile

Nedenstående tabel oversætter mellem de attributter, der er defineret i den fælleskommunale rammearkitektur og FHIR profilen. Alle rammearkitektur-attributter er ikke medtaget, kun de der umiddelbart er relevante for interoperabilitets use cases. Tabellen definerer kort den enkelte attribut på dansk, og specificerer hvilke af FHIR-profilens atributter, der skal bruges til specifikation af indholdet.

FKI-attribut Definition FHIR
Personnummer.Nummer Entydig Identifikation af en person i CPR. Indeholder information om fødselsdato, køn og århunderede. Patient.identifier(cpr-slice).value
identifikation Entydig Identifikation af en person (definition valgt anderledes end rammearkitektur) Patient.identifier.value
patientIDsystem(ikke i rammearkitektur) Angivelse af udstederen af personnummer eller andet patientid, for Personnummer.Nummer er systemet urn:oid:1.2.208.176.1.2 Patient.identifier(cpr-slice).system
Person.fødselsdato Personens fødselsdato. Patient.birthDate
Person.køn Personens køn. Patient.gender
Personnavn.Efternavn Personens efternavn.(definition valgt anderledes end rammearkitektur) Patient.name.family
Personnavn.Fornavne Persons fornavne. Patient.name.given
Personnavn.Mellemnavn Personens mellemnavne. Patient.name.given
Civilstand.civilstandstype Personens civilstand som specificeret af CPR. Læg mærke til at det deles ud over flere attributter i FHIR Patient.maritalStatus/Patient.deceased[x]
SimpelAdresse Simpel adresse er CPR’s definition på ustrukturerede klarskrifts adresser. Ingen felter er krævede, og der er ikke nogen krav til specifikt indhold i de forskellige felter. Patient.adress.line
CPRAdresse.CPRKommunekode Kode for en kommune. Patient.adress:extension.dk-core-municipalityCodes
CPRAdresse.Postnummer Postvæsenets landsdækkende postnummerkode. Postnummer er et obligatorisk vejdistrikt. Patient.address.postalCode

Usage:

Formal Views of Profile Content

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

This structure is derived from DkCorePatient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*DkCorePatientInformation about an individual or animal receiving health care services

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*DkCorePatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier SΣ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:cpr 0..1DkCoreCprIdentifierAn identifier intended for computation
... Slices for name SΣ0..*HumanNameA name associated with the patient
Slice: Unordered, Open by value:use
.... name:official Σ0..1HumanNameA name associated with the patient
..... use ?!Σ1..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.


Fixed Value: official
..... family Σ1..1stringFamily name (often called 'Surname')
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... Slices for generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
Slice: Unordered, Open by value:identifier.system
.... generalPractitioner:referencedSORUnit 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Patient.name:official.userequiredFixed Value: official
Patient.link.typerequiredLinkType
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*DkCorePatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier SΣ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:cpr 0..1DkCoreCprIdentifierAn identifier intended for computation
... active ?!Σ0..1booleanWhether this patient's record is in active use
... Slices for name SΣ0..*HumanNameA name associated with the patient
Slice: Unordered, Open by value:use
.... name:official Σ0..1HumanNameA name associated with the patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ1..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.


Fixed Value: official
..... text Σ0..1stringText representation of the full name
..... family Σ1..1stringFamily name (often called 'Surname')
..... given Σ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ0..1PeriodTime period when name was/is in use
... telecom Σ0..*ContactPointA contact detail for the individual
... gender Σ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address Σ0..*AddressAn address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... municipalityCode 0..*CodeableConceptDanish Core Municipality codes
URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-municipalityCodes
.... regionalSubDivisionCodes 0..*CodeableConceptDanish Core Regional Sub Division Codes Extension
URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-RegionalSubDivisionCodes
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ0..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ0..1stringName of city, town etc.
Example General: Erewhon
.... district Σ0..1stringDistrict name (aka county)
Example General: Madison
.... state Σ0..1stringSub-unit of country (abbreviations ok)
.... postalCode Σ0..1stringPostal code for area
Example General: 9132
.... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: DK MaritalStatus (extensible)
... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
.... telecom 0..*ContactPointA contact detail for the person
.... address 0..1AddressAddress for the contact person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator
... Slices for generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
Slice: Unordered, Open by value:identifier.system
.... generalPractitioner:referencedSORUnit 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC0..1stringLiteral reference, Relative, internal or absolute URL
..... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier 0..1SORIdentifierAn identifier intended for computation
..... display Σ0..1stringText alternative for the resource
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.name:official.userequiredFixed Value: official
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.maritalStatusextensibleDK Marital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.generalPractitioner:referencedSORUnit.typeextensibleResourceType
Patient.link.typerequiredLinkType

This structure is derived from DkCorePatient

Summary

Differential View

This structure is derived from DkCorePatient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*DkCorePatientInformation about an individual or animal receiving health care services

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*DkCorePatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier SΣ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:cpr 0..1DkCoreCprIdentifierAn identifier intended for computation
... Slices for name SΣ0..*HumanNameA name associated with the patient
Slice: Unordered, Open by value:use
.... name:official Σ0..1HumanNameA name associated with the patient
..... use ?!Σ1..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.


Fixed Value: official
..... family Σ1..1stringFamily name (often called 'Surname')
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... Slices for generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
Slice: Unordered, Open by value:identifier.system
.... generalPractitioner:referencedSORUnit 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Patient.name:official.userequiredFixed Value: official
Patient.link.typerequiredLinkType

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*DkCorePatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier SΣ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:cpr 0..1DkCoreCprIdentifierAn identifier intended for computation
... active ?!Σ0..1booleanWhether this patient's record is in active use
... Slices for name SΣ0..*HumanNameA name associated with the patient
Slice: Unordered, Open by value:use
.... name:official Σ0..1HumanNameA name associated with the patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ1..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.


Fixed Value: official
..... text Σ0..1stringText representation of the full name
..... family Σ1..1stringFamily name (often called 'Surname')
..... given Σ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ0..1PeriodTime period when name was/is in use
... telecom Σ0..*ContactPointA contact detail for the individual
... gender Σ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address Σ0..*AddressAn address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... municipalityCode 0..*CodeableConceptDanish Core Municipality codes
URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-municipalityCodes
.... regionalSubDivisionCodes 0..*CodeableConceptDanish Core Regional Sub Division Codes Extension
URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-RegionalSubDivisionCodes
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ0..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ0..1stringName of city, town etc.
Example General: Erewhon
.... district Σ0..1stringDistrict name (aka county)
Example General: Madison
.... state Σ0..1stringSub-unit of country (abbreviations ok)
.... postalCode Σ0..1stringPostal code for area
Example General: 9132
.... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: DK MaritalStatus (extensible)
... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
.... telecom 0..*ContactPointA contact detail for the person
.... address 0..1AddressAddress for the contact person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator
... Slices for generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
Slice: Unordered, Open by value:identifier.system
.... generalPractitioner:referencedSORUnit 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC0..1stringLiteral reference, Relative, internal or absolute URL
..... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier 0..1SORIdentifierAn identifier intended for computation
..... display Σ0..1stringText alternative for the resource
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.name:official.userequiredFixed Value: official
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.maritalStatusextensibleDK Marital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.generalPractitioner:referencedSORUnit.typeextensibleResourceType
Patient.link.typerequiredLinkType

This structure is derived from DkCorePatient

Summary

 

Other representations of profile: CSV, Excel, Schematron