Implementation Guide for FFB messaging (FFB udvekslingsdatasæt)
1.0.0 - release Denmark flag

This page is part of the KLFFBMessaging (v1.0.0: Release) based on FHIR 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

Resource Profile: Citizen

Official URL: http://fhir.kl.dk/ffbmessaging/StructureDefinition/kl-messaging-ffb-citizen Version: 1.0.0
Active as of 2023-08-27 Computable Name: KLMessagingFFBCitizen

Citizen for FFB messaging

Usage:

Formal Views of Profile Content

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

This structure is derived from KLCommonCitizen

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*KLCommonCitizenInformation about an individual or animal receiving health care services
... name 0..*HumanNameA name associated with the patient
.... family S0..1stringFamily name (often called 'Surname')
.... given S0..*stringGiven names (not always 'first'). Includes middle names
... name:official 0..1HumanNameA name associated with the patient
.... family S1..1stringFamily name (often called 'Surname')
.... given S0..*stringGiven names (not always 'first'). Includes middle names
... Slices for telecom S1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system S1..1codephone | fax | email | pager | url | sms | other
..... value S1..1stringThe actual contact point details
.... telecom:phone S1..*ContactPointA contact detail for the individual
..... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: phone
.... telecom:email S0..*ContactPointA contact detail for the individual
..... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: email
.... line S1..*stringStreet name, number, direction & P.O. Box etc.
.... city S1..1stringName of city, town etc.
.... postalCode S1..1stringPostal code for area
... contact S0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... relationship S0..*CodeableConceptThe kind of relationship
.... name S0..1HumanNameA name associated with the contact person
..... family S0..1stringFamily name (often called 'Surname')
..... given S0..*stringGiven names (not always 'first'). Includes middle names
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... system S1..1codephone | fax | email | pager | url | sms | other
...... value S1..1stringThe actual contact point details
..... telecom:phone S1..*ContactPointA contact detail for the person
...... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: phone
..... telecom:email S0..*ContactPointA contact detail for the person
...... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: email

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*KLCommonCitizenInformation 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:All Slices Content/Rules for all slices
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... 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 SΣ1..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
... Slices for telecom SΣ1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value SΣ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:phone SΣ1..*ContactPointA contact detail for the individual
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:email SΣ0..*ContactPointA contact detail for the individual
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... 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
.... line SΣ1..*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 SΣ1..1stringName of city, town etc.
Example General: Erewhon
.... postalCode SΣ1..1stringPostal code for area
Example General: 9132
... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship S0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name S0..1HumanNameA name associated with the contact person
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

...... value SΣ1..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... telecom:phone S1..*ContactPointA contact detail for the person
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... telecom:email S0..*ContactPointA contact detail for the person
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

... 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.userequiredNameUse
Patient.name:official.userequiredFixed Value: official
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.telecom:phone.systemrequiredPattern: phone
Patient.telecom:phone.userequiredContactPointUse
Patient.telecom:email.systemrequiredPattern: email
Patient.telecom:email.userequiredContactPointUse
Patient.address.userequiredAddressUse
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.name.userequiredNameUse
Patient.contact.telecom.systemrequiredContactPointSystem
Patient.contact.telecom.userequiredContactPointUse
Patient.contact.telecom:phone.systemrequiredPattern: phone
Patient.contact.telecom:phone.userequiredContactPointUse
Patient.contact.telecom:email.systemrequiredPattern: email
Patient.contact.telecom:email.userequiredContactPointUse
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
marital-status-unknown-usagewarningPatientStatus in maritalStatus is unknown in a danish context. Consider mapping the value to UNK
: maritalStatus.coding.where(code = 'P' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty() or maritalStatus.coding.where(code = 'A' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty()
Marital status is legally unknown in Denmark
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*KLCommonCitizenInformation 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:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ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
.... 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 SΣ1..1stringFamily name (often called 'Surname')
..... given SΣ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
... Slices for telecom SΣ1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value SΣ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:phone SΣ1..*ContactPointA contact detail for the individual
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
..... value Σ0..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:email SΣ0..*ContactPointA contact detail for the individual
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
..... value Σ0..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
... 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 SΣ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 SΣ1..*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 SΣ1..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 SΣ1..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 SC0..*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 S0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name S0..1HumanNameA name associated with the contact person
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ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
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

...... value SΣ1..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
..... telecom:phone S1..*ContactPointA contact detail for the person
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
...... value Σ0..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
..... telecom:email S0..*ContactPointA contact detail for the person
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
...... value Σ0..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
.... 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.userequiredNameUse
Patient.name:official.userequiredFixed Value: official
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.telecom:phone.systemrequiredPattern: phone
Patient.telecom:phone.userequiredContactPointUse
Patient.telecom:email.systemrequiredPattern: email
Patient.telecom:email.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.maritalStatusextensibleDK Marital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.name.userequiredNameUse
Patient.contact.telecom.systemrequiredContactPointSystem
Patient.contact.telecom.userequiredContactPointUse
Patient.contact.telecom:phone.systemrequiredPattern: phone
Patient.contact.telecom:phone.userequiredContactPointUse
Patient.contact.telecom:email.systemrequiredPattern: email
Patient.contact.telecom:email.userequiredContactPointUse
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.generalPractitioner:referencedSORUnit.typeextensibleResourceType
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
marital-status-unknown-usagewarningPatientStatus in maritalStatus is unknown in a danish context. Consider mapping the value to UNK
: maritalStatus.coding.where(code = 'P' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty() or maritalStatus.coding.where(code = 'A' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty()
Marital status is legally unknown in Denmark
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from KLCommonCitizen

Summary

Mandatory: 4 elements (7 nested mandatory elements)
Must-Support: 23 elements

Slices

This structure defines the following Slices:

  • The element Patient.telecom is sliced based on the value of value:system
  • The element Patient.contact.telecom is sliced based on the value of value:system

Differential View

This structure is derived from KLCommonCitizen

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*KLCommonCitizenInformation about an individual or animal receiving health care services
... name 0..*HumanNameA name associated with the patient
.... family S0..1stringFamily name (often called 'Surname')
.... given S0..*stringGiven names (not always 'first'). Includes middle names
... name:official 0..1HumanNameA name associated with the patient
.... family S1..1stringFamily name (often called 'Surname')
.... given S0..*stringGiven names (not always 'first'). Includes middle names
... Slices for telecom S1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system S1..1codephone | fax | email | pager | url | sms | other
..... value S1..1stringThe actual contact point details
.... telecom:phone S1..*ContactPointA contact detail for the individual
..... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: phone
.... telecom:email S0..*ContactPointA contact detail for the individual
..... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: email
.... line S1..*stringStreet name, number, direction & P.O. Box etc.
.... city S1..1stringName of city, town etc.
.... postalCode S1..1stringPostal code for area
... contact S0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... relationship S0..*CodeableConceptThe kind of relationship
.... name S0..1HumanNameA name associated with the contact person
..... family S0..1stringFamily name (often called 'Surname')
..... given S0..*stringGiven names (not always 'first'). Includes middle names
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... system S1..1codephone | fax | email | pager | url | sms | other
...... value S1..1stringThe actual contact point details
..... telecom:phone S1..*ContactPointA contact detail for the person
...... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: phone
..... telecom:email S0..*ContactPointA contact detail for the person
...... system 0..1codephone | fax | email | pager | url | sms | other
Required Pattern: email

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*KLCommonCitizenInformation 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:All Slices Content/Rules for all slices
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... 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 SΣ1..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
... Slices for telecom SΣ1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value SΣ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:phone SΣ1..*ContactPointA contact detail for the individual
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

.... telecom:email SΣ0..*ContactPointA contact detail for the individual
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... 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
.... line SΣ1..*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 SΣ1..1stringName of city, town etc.
Example General: Erewhon
.... postalCode SΣ1..1stringPostal code for area
Example General: 9132
... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship S0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name S0..1HumanNameA name associated with the contact person
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ0..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

...... value SΣ1..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... telecom:phone S1..*ContactPointA contact detail for the person
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... telecom:email S0..*ContactPointA contact detail for the person
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

... 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.userequiredNameUse
Patient.name:official.userequiredFixed Value: official
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.telecom:phone.systemrequiredPattern: phone
Patient.telecom:phone.userequiredContactPointUse
Patient.telecom:email.systemrequiredPattern: email
Patient.telecom:email.userequiredContactPointUse
Patient.address.userequiredAddressUse
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.name.userequiredNameUse
Patient.contact.telecom.systemrequiredContactPointSystem
Patient.contact.telecom.userequiredContactPointUse
Patient.contact.telecom:phone.systemrequiredPattern: phone
Patient.contact.telecom:phone.userequiredContactPointUse
Patient.contact.telecom:email.systemrequiredPattern: email
Patient.contact.telecom:email.userequiredContactPointUse
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
marital-status-unknown-usagewarningPatientStatus in maritalStatus is unknown in a danish context. Consider mapping the value to UNK
: maritalStatus.coding.where(code = 'P' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty() or maritalStatus.coding.where(code = 'A' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty()
Marital status is legally unknown in Denmark
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*KLCommonCitizenInformation 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:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ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
.... 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 SΣ1..1stringFamily name (often called 'Surname')
..... given SΣ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
... Slices for telecom SΣ1..*ContactPointA contact detail for the individual
Slice: Unordered, Open by value:system
.... telecom:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

..... value SΣ1..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:phone SΣ1..*ContactPointA contact detail for the individual
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
..... value Σ0..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
.... telecom:email SΣ0..*ContactPointA contact detail for the individual
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
..... value Σ0..1stringThe actual contact point details
..... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

..... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
..... period Σ0..1PeriodTime period when the contact point was/is in use
... 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 SΣ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 SΣ1..*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 SΣ1..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 SΣ1..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 SC0..*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 S0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name S0..1HumanNameA name associated with the contact person
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family SΣ0..1stringFamily name (often called 'Surname')
..... given SΣ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
.... Slices for telecom S1..*ContactPointA contact detail for the person
Slice: Unordered, Open by value:system
..... telecom:All Slices Content/Rules for all slices
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣC1..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.

...... value SΣ1..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
..... telecom:phone S1..*ContactPointA contact detail for the person
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: phone
...... value Σ0..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
..... telecom:email S0..*ContactPointA contact detail for the person
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system ΣC0..1codephone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


Required Pattern: email
...... value Σ0..1stringThe actual contact point details
...... use ?!Σ0..1codehome | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.

...... rank Σ0..1positiveIntSpecify preferred order of use (1 = highest)
...... period Σ0..1PeriodTime period when the contact point was/is in use
.... 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.userequiredNameUse
Patient.name:official.userequiredFixed Value: official
Patient.telecom.systemrequiredContactPointSystem
Patient.telecom.userequiredContactPointUse
Patient.telecom:phone.systemrequiredPattern: phone
Patient.telecom:phone.userequiredContactPointUse
Patient.telecom:email.systemrequiredPattern: email
Patient.telecom:email.userequiredContactPointUse
Patient.genderrequiredAdministrativeGender
Patient.address.userequiredAddressUse
Patient.address.typerequiredAddressType
Patient.maritalStatusextensibleDK Marital Status Codes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.name.userequiredNameUse
Patient.contact.telecom.systemrequiredContactPointSystem
Patient.contact.telecom.userequiredContactPointUse
Patient.contact.telecom:phone.systemrequiredPattern: phone
Patient.contact.telecom:phone.userequiredContactPointUse
Patient.contact.telecom:email.systemrequiredPattern: email
Patient.contact.telecom:email.userequiredContactPointUse
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Patient.generalPractitioner:referencedSORUnit.typeextensibleResourceType
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
marital-status-unknown-usagewarningPatientStatus in maritalStatus is unknown in a danish context. Consider mapping the value to UNK
: maritalStatus.coding.where(code = 'P' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty() or maritalStatus.coding.where(code = 'A' and system = 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus').empty()
Marital status is legally unknown in Denmark
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from KLCommonCitizen

Summary

Mandatory: 4 elements (7 nested mandatory elements)
Must-Support: 23 elements

Slices

This structure defines the following Slices:

  • The element Patient.telecom is sliced based on the value of value:system
  • The element Patient.contact.telecom is sliced based on the value of value:system

 

Other representations of profile: CSV, Excel, Schematron