eHealth Infrastructure, published by Den telemedicinske infrastruktur (eHealth Infrastructure). This guide is not an authorized publication; it is the continuous build for version 7.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/fut-infrastructure/implementation-guide/ and changes regularly. See the Directory of published versions
| Official URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication | Version: 7.0.0 | |||
| Active as of 2025-12-05 | Computable Name: ehealth-carecommunication | |||
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension |
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension |
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) |
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..1 | Identifier | The communication identifier |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
![]() ![]() ![]() |
SΣ | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to |
![]() ![]() |
?!SΣ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication. |
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) |
![]() ![]() ![]() |
SΣ | 1..1 | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
SΣ | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) |
![]() ![]() |
SΣ | 1..1 | Reference(Patient) | Focus of message |
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication. |
![]() ![]() ![]() |
SΣ | 1..1 | string | Plain text representation of the concept. |
![]() ![]() |
SΣ | 0..1 | Reference(Encounter) | Encounter created as part of |
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message |
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | Message part content | ||
![]() ![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() ![]() ![]() |
Reference(Resource) | |||
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Closed by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content |
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Closed by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Communication | If 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-4 | error | Communication | If 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-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Communication | A resource should have narrative for robust management |
text.`div`.exists()
|
| 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()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
This structure is derived from Communication
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD |
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension |
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension |
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) |
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension |
![]() ![]() |
S | 1..1 | Identifier | The communication identifier |
![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | |
![]() ![]() ![]() |
S | 1..1 | string | The value that is unique |
![]() ![]() |
0..0 | Request fulfilled by this communication | ||
![]() ![]() |
0..0 | Part of this action | ||
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to |
![]() ![]() |
S | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown |
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) |
![]() ![]() ![]() |
S | 1..1 | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
S | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() |
S | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
S | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) |
![]() ![]() |
S | 1..1 | Reference(Patient) | Focus of message |
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content |
![]() ![]() ![]() |
S | 1..1 | string | Plain text representation of the concept. |
![]() ![]() |
S | 0..1 | Reference(Encounter) | Encounter created as part of |
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message |
![]() ![]() |
0..0 | Message sender | ||
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Open by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content |
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Open by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |||||
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension | ||||
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension | ||||
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension | ||||
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension | ||||
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) | ||||
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |||||
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension | ||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..1 | Identifier | The communication identifier | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to | ||||
![]() ![]() |
?!SΣ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Reason for current status Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen. | ||||
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣ | 1..1 | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) | ||||
![]() ![]() |
0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc. | |||||
![]() ![]() |
SΣ | 1..1 | Reference(Patient) | Focus of message | ||||
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication. | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | Plain text representation of the concept. | ||||
![]() ![]() |
0..* | Reference(Resource) | Resources that pertain to this communication | |||||
![]() ![]() |
SΣ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() |
0..1 | dateTime | When sent | |||||
![]() ![]() |
0..1 | dateTime | When received | |||||
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why was communication done? | ||||
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Message part content | ||||||
![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(Resource) | |||||||
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension | ||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension | ||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Closed by type:$this | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content | ||||
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension | ||||
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension | ||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Closed by type:$this | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content | ||||
![]() ![]() |
0..* | Annotation | Comments made about the communication | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Communication.statusReason | Base | example | CommunicationNotDoneReason | 📍4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Communication.medium | Base | example | ParticipationMode | 📦3.0.0 | THO v7.0 |
| Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std. |
| Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Communication | If 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-4 | error | Communication | If 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-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Communication | A resource should have narrative for robust management |
text.`div`.exists()
|
| 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()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
This structure is derived from Communication
Summary
Mandatory: 12 elements(7 nested mandatory elements)
Must-Support: 26 elements
Prohibited: 3 elements
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension |
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension |
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) |
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 1..1 | Identifier | The communication identifier |
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
![]() ![]() ![]() |
SΣ | 1..1 | string | The value that is unique Example General: 123456 |
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to |
![]() ![]() |
?!SΣ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication. |
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) |
![]() ![]() ![]() |
SΣ | 1..1 | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
SΣ | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) |
![]() ![]() |
SΣ | 1..1 | Reference(Patient) | Focus of message |
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication. |
![]() ![]() ![]() |
SΣ | 1..1 | string | Plain text representation of the concept. |
![]() ![]() |
SΣ | 0..1 | Reference(Encounter) | Encounter created as part of |
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message |
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | Message part content | ||
![]() ![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() ![]() ![]() |
Reference(Resource) | |||
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Closed by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content |
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Closed by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Communication | If 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-4 | error | Communication | If 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-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Communication | A resource should have narrative for robust management |
text.`div`.exists()
|
| 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()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
Differential View
This structure is derived from Communication
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD |
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension |
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension |
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension |
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) |
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension |
![]() ![]() |
S | 1..1 | Identifier | The communication identifier |
![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | |
![]() ![]() ![]() |
S | 1..1 | string | The value that is unique |
![]() ![]() |
0..0 | Request fulfilled by this communication | ||
![]() ![]() |
0..0 | Part of this action | ||
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to |
![]() ![]() |
S | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown |
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) |
![]() ![]() ![]() |
S | 1..1 | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
S | 1..1 | uri | Identity of the terminology system |
![]() ![]() ![]() ![]() |
S | 1..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
S | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) |
![]() ![]() |
S | 1..1 | Reference(Patient) | Focus of message |
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content |
![]() ![]() ![]() |
S | 1..1 | string | Plain text representation of the concept. |
![]() ![]() |
S | 0..1 | Reference(Encounter) | Encounter created as part of |
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message |
![]() ![]() |
0..0 | Message sender | ||
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Open by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content |
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension |
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension |
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Open by type:$this | |
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Communication | A record of information transmitted from a sender to a receiver Constraints: stopped-status-statusReason, only-asap-or-routine, topic-required-when-category-other, practitionerrole-author-coding-xor-text, practitioner-author-must-have-name, priority-category-invariant, uuidv4, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, category-not-required-if-dest-TBD | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
4..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
0..1 | Reference(PractitionerRole) | sending practitioner role URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitionerrole-extension | |||||
![]() ![]() ![]() |
S | 0..1 | Reference(Practitioner) | sending practitioner URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner-extension | ||||
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Organization receiving the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension | ||||
![]() ![]() ![]() |
S | 1..1 | Reference(Organization) | Reference to the sending organization of the message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-origin-organization-extension | ||||
![]() ![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | Sending actor URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-sending-actor-extension | ||||
![]() ![]() ![]() |
S | 1..1 | code | Message type URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message-Type-extension Binding: Message Type ValueSet (required) | ||||
![]() ![]() ![]() |
1..1 | Coding | The administrative status of how a message recipient has handled a message URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-administrative-status Binding: Administrative Status (required) | |||||
![]() ![]() ![]() |
S | 0..1 | Reference(Bundle) | carecommunication bundle URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-Carecommunication-bundle-extension | ||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 1..1 | Identifier | The communication identifier | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | The value that is unique Example General: 123456 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
S | 0..1 | Reference(Communication) | Reply to | ||||
![]() ![]() |
?!SΣ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Reason for current status Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen. | ||||
![]() ![]() |
S | 0..1 | CodeableConcept | Message category Binding: eHealth CareCommunication Categories (required) | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣ | 1..1 | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..1 | code | Shall be present if the message priority is known to be ASAP, but is only allowed when the category is 'regarding referral', see priority-category-invariant Binding: eHealth CareCommunication Priorities (required) | ||||
![]() ![]() |
0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc. | |||||
![]() ![]() |
SΣ | 1..1 | Reference(Patient) | Focus of message | ||||
![]() ![]() |
S | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication. | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() |
SΣ | 1..1 | string | Plain text representation of the concept. | ||||
![]() ![]() |
0..* | Reference(Resource) | Resources that pertain to this communication | |||||
![]() ![]() |
SΣ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() |
0..1 | dateTime | When sent | |||||
![]() ![]() |
0..1 | dateTime | When received | |||||
![]() ![]() |
S | 0..1 | Reference(CareTeam | PractitionerRole) | The recieving actor of the message | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why was communication done? | ||||
![]() ![]() |
1..* | BackboneElement | Message payload Slice: Unordered, Open by type:content[x] | |||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Message part content | ||||||
![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(Resource) | |||||||
![]() ![]() ![]() |
1..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
2..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension | ||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension | ||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | string | Message part content Slice: Unordered, Closed by type:$this | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Message part content | ||||
![]() ![]() ![]() |
0..* | BackboneElement | Message payload | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | dateTime | Payload dateTime URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-datetime-extension | ||||
![]() ![]() ![]() ![]() ![]() |
S | 0..1 | ContactPoint | Payload author contact URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-contact-extension | ||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Attachment | Message part content Slice: Unordered, Closed by type:$this | |||||
![]() ![]() ![]() ![]() ![]() |
S | 1..1 | Attachment | Message part content | ||||
![]() ![]() |
0..* | Annotation | Comments made about the communication | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Communication.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| Communication.identifier.use | Base | required | IdentifierUse | 📦4.0.1 | FHIR Std. |
| Communication.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Communication.statusReason | Base | example | CommunicationNotDoneReason | 📍4.0.1 | FHIR Std. |
| Communication.category | Base | required | eHealth CareCommunication Categories | 📦7.0.0 | This IG |
| Communication.priority | Base | required | eHealth CareCommunication Priorities | 📦7.0.0 | This IG |
| Communication.medium | Base | example | ParticipationMode | 📦3.0.0 | THO v7.0 |
| Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std. |
| Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| atLeastOnePayloadString | error | Communication | At least one payload segment shall have a message text (payload.contentString) |
payload.contentString.exists()
|
| category-not-required-if-dest-TBD | error | Communication | category may be omitted if extension 'destination' is the reference FUTORGANIZATIONREFERENCETBD, otherwise category must be present |
extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-destination-extension').value.as(Reference).reference = 'FUTORGANIZATIONREFERENCETBD' or category.exists()
|
| dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Communication | If 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-4 | error | Communication | If 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-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Communication | A resource should have narrative for robust management |
text.`div`.exists()
|
| 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()
|
| no-standard-sender | error | Communication | The standard Communication.sender element SHALL NOT be used. Use the ehealth-sending-actor extension instead. |
sender.empty()
|
| only-asap-or-routine | error | Communication | priority must be either 'asap' or 'routine' |
priority = 'asap' or priority = 'routine'
|
| payloadAttachment-contentType-required | error | Communication | contentType SHALL be present if data or url is present in Attachment |
payload.contentAttachment.data.exists() or payload.contentAttachment.url.exists() implies payload.contentAttachment.contentType.exists()
|
| practitioner-author-must-have-name | error | Communication | If a Practitioner is used as author in a message segment, the referenced Practitioner must have a name. |
payload.where(extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').exists()).extension.value.reference.resolve().practitioner.resolve().name.exists()
|
| practitionerrole-author-coding-xor-text | error | Communication | If a PractitionerRole is used as an author (via the Practitioner extension), then either code.coding.code or code.text must exist—but not both. |
payload.extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-practitioner').value.resolve().all(code.coding.code.exists() xor code.text.exists())
|
| priority-category-invariant | error | Communication | Priority must not be present when category is not 'regarding-referral'. |
where(category.coding.code != 'regarding-referral').priority.empty()
|
| stopped-status-statusReason | error | Communication | If status is 'stopped', statusReason must be either 'system-error' or 'recipient-unavailable'. |
status != 'stopped' or statusReason.coding.where(code = 'system-error' or code = 'recipient-unavailable').exists()
|
| topic-required-when-category-other | error | Communication | topic must be present when category is 'other'. |
iif(category.coding.code != 'other', true, category.coding.code = 'other' and topic.exists())
|
| uuidv4 | error | Communication | The identifier.value SHALL be a valid UUID v4 |
identifier.value.matches('^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
|
This structure is derived from Communication
Summary
Mandatory: 12 elements(7 nested mandatory elements)
Must-Support: 26 elements
Prohibited: 3 elements
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron