eHealth Infrastructure
​11.0.1 - Denmark flag

This page is part of the FUT Infrastructure (v11.0.1: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: ehealth-carecommunication

Official URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication Version: 11.0.1
Active as of 2026-10-23 Computable Name: ehealth-carecommunication

Introduction

An Ehealth-CareCommunication is an FUT abstraction of a MedCom CareCommunication. This is needed to support communication through the VANS network with parties outside the FUT infrastructure, as well as inside FUT. The Ehealth-CareCommunication's primary feature is to enable communication in relation to several images of different file types.

Remarks about status and administrative-status

  • status:
    • A message is considered "not yet sent" when it has one of the following status and can freely transition from one to another: 'preparation', 'on-hold', 'not-done', 'entered-in-error'
    • A message is considered "being sent" when created or patched into status 'in-progress' and cannot be patched further or deleted by the sender
    • The server will automatically transition a message from 'in-progress' to 'completed' when it has been sent successfully (happens when the Vans-Relay has received a positive acknowledgement on the send message)
    • The server will automatically transition a message from 'in-progress' to 'stopped' if it could not be sent (happens when the Vans-Relay has received a negative acknowledgement on the send message, or at 3 failed attempts at sending)
    • The client can never create or patch a message into status 'completed' or 'stopped'
    • The sender cannot patch, only delete messages with status 'stopped'
    • The sender cannot patch or delete messages with status 'completed'
    • The recipient can patch /received and administrative-status on messages with status 'completed'
  • administrative-status (extension): Makes it possible for the message recipient to indicate the state of a message. A message may hold an administrative status that defines the last action the recipient took on the message in question. At first, the message has administrative-status "activate". The recipient may mark the message as read by setting administrative-status "read". If the recipient considers the message a sort of "task", the message may also be updated with administrative-status "complete" when the task is done, or "reactivate" if the task was not complete anyway.

Search parameters

The following custom search parameters may be used when searching for ehealth-CareCommunication instances:

  • administrativeStatus: Specify the desired administrative status using system and code (eg. "http://ehealth.sundhed.dk/cs/administrative-status" and "read")
  • careCommunicationSenderPractitioner: Specify an absolute reference to the Practitioner that must be the sender of the message (the Practitioner linked in the sender extension)
  • careCommunicationSenderCareTeam: Specify an absolute reference to the CareTeam that is the sender of the message (the CareTeam linked in the sender extension)
  • communicationCategory: Specify the desired category using system and code (eg. "http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category" and "nursing")
  • topic: Specify the desired topic. For CareCommunication the topic is provided as free text (topic.text), so use a text search

Scope and Usage

In the eHealth Infrastructure the ehealth-CareCommunication resource is used in conjunction with the following resources:

  • Patient
    • As a subject of a message
  • PractitionerRole
    • As specific sender/recipient of a message
  • Practitioner
    • the Practitioner of the PractitionerRole
  • CareTeam
    • as specific sender/recipient of a message
  • Organization
    • as sender/recipient of a message

note on sender: The sender of a message is structured as a complex extension, holding a reference to the sending PractitionerRole, the linked Practitioner and optional CareTeam. If a CareTeam is present, that CareTeam is considered the specific sender, not the PractitionerRole. PractitionerRole is still required, since every message has to have a PractitionerRole representing that message.

General rules

  • The sender/receiver Organizations have to have both a SOR and GLN (EAN) identifier to be eligible for VANS communication.
  • If the message type is Forward, you as a sender have to pick which payloads should be included in the message.
  • If the message type is Reply, the message will be populated automatically with all prior payloads of the given conversation.
  • The Communication identifier is the same for all Ehealth-CareCommunications of the same conversation. A new Communication Id is needed for a Forward message type, even though bundles from a prior conversation are included.
  • The MessageHeader identifier is set for received messages, as client-side assignment of id's is not possible. For messages sent from the FUT infrastructure, it is not needed. The reasoning for the use of this identifier is that the correlating MedCom model for Ehealth-CareCommunications identifies specific messages based on the MessageHeader identifier.
  • inResponseTo has to be included for Reply messages. It points to the previous MessageHeader identifier in the conversation if present, otherwise Ehealth-CareCommunication.id.
  • If category is other, the topic.text element has to be populated.
  • recipient can be excluded, which means the message is considered sent to the destination organization.

Usages:

  • CapabilityStatements using this Profile: patient
  • This Profile is not used by any profiles in this Specification

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots, and their representations.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Communication.Slices for identifier This element must be supported. This element is included in summaries. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. This element is included in summaries. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. This element is included in summaries. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Example General: 123456
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. This element is included in summaries. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Communication.category.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Communication.priority This element must be supported. This element is included in summaries. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.subject This element must be supported. This element is included in summaries. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Communication.topic.text This element must be supported. This element is included in summaries. 1..1 string Plain text representation of the concept.
Communication.encounter This element must be supported. This element is included in summaries. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:All Slices Content/Rules for all slices
Communication.Slices for payload.payload:All Slices.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:All Slices.content[x] 1..1 Message part content
Communication.Slices for payload.payload:All Slices.content[x].contentString string
Communication.Slices for payload.payload:All Slices.content[x].contentAttachment Attachment
Communication.Slices for payload.payload:All Slices.content[x].contentReference Reference(Resource)
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Closed by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. This element is included in summaries. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Example General: text/plain; charset=UTF-8, image/png
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. This element is included in summaries. 0..1 url Shall be present if the attachment is a link to a web page.
Example General: http://www.acme.com/logo-small.png
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. This element is included in summaries. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Example General: Official Corporate Logo
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. This element is included in summaries. 0..1 dateTime The time the attachment was created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​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 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.topic Base example CommunicationTopic 📍4.0.1 FHIR Std.
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.Slices for identifier This element must be supported. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.use 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. 1..1 string The value that is unique
Communication.basedOn 0..0 Request fulfilled by this communication
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element must be supported. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.coding This element must be supported. 1..1 Coding Code defined by a terminology system
Communication.category.coding.system This element must be supported. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.code This element must be supported. 1..1 code Symbol in syntax defined by the system
Communication.priority This element must be supported. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.subject This element must be supported. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Communication.topic.text This element must be supported. 1..1 string Plain text representation of the concept.
Communication.encounter This element must be supported. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.sender 0..0 Message sender
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Open by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. 0..1 url Shall be present if the attachment is a link to a web page.
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. 0..1 dateTime The time the attachment was created

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.category Base required eHealth CareCommunication Categories 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.id This element is included in summaries. 0..1 id Logical id of this artifact
Communication.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Communication.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Communication.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Communication.text 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
Communication.contained 0..* Resource Contained, inline Resources
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Communication.Slices for identifier This element must be supported. This element is included in summaries. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. This element is included in summaries. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.id 0..1 string Unique id for inter-element referencing
Communication.Slices for identifier.identifier:communicationId.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for identifier.identifier:communicationId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.type This element is included in summaries. 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.
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. This element is included in summaries. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Example General: 123456
Communication.Slices for identifier.identifier:communicationId.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Communication.Slices for identifier.identifier:communicationId.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. This element is included in summaries. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.id 0..1 string Unique id for inter-element referencing
Communication.Slices for identifier.identifier:messageHeaderId.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for identifier.identifier:messageHeaderId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Communication.Slices for identifier.identifier:messageHeaderId.type This element is included in summaries. 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.
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Communication.Slices for identifier.identifier:messageHeaderId.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Communication.Slices for identifier.identifier:messageHeaderId.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Communication.instantiatesCanonical This element is included in summaries. 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
Communication.instantiatesUri This element is included in summaries. 0..* uri Instantiates external protocol or definition
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
Communication.statusReason This element is included in summaries. 0..1 CodeableConcept Reason for current status
Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.id 0..1 string Unique id for inter-element referencing
Communication.category.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.category.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Communication.category.coding.id 0..1 string Unique id for inter-element referencing
Communication.category.coding.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.category.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.version This element is included in summaries. 0..1 string Version of the system - if relevant
Communication.category.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Communication.category.coding.display This element is included in summaries. 0..1 string Representation defined by the system
Communication.category.coding.userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Communication.category.text This element is included in summaries. 0..1 string Plain text representation of the concept
Communication.priority This element must be supported. This element is included in summaries. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.medium 0..* CodeableConcept A channel of communication
Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc.
Communication.subject This element must be supported. This element is included in summaries. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Communication.topic.id 0..1 string Unique id for inter-element referencing
Communication.topic.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.topic.coding This element is included in summaries. 0..* Coding Code defined by a terminology system
Communication.topic.text This element must be supported. This element is included in summaries. 1..1 string Plain text representation of the concept.
Communication.about 0..* Reference(Resource) Resources that pertain to this communication
Communication.encounter This element must be supported. This element is included in summaries. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.sent 0..1 dateTime When sent
Communication.received 0..1 dateTime When received
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.reasonCode This element is included in summaries. 0..* CodeableConcept Indication for message
Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication.
Communication.reasonReference This element is included in summaries. 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) Why was communication done?
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:All Slices Content/Rules for all slices
Communication.Slices for payload.payload:All Slices.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:All Slices.extension 0..* Extension Additional content defined by implementations
Communication.Slices for payload.payload:All Slices.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:All Slices.content[x] 1..1 Message part content
Communication.Slices for payload.payload:All Slices.content[x].contentString string
Communication.Slices for payload.payload:All Slices.content[x].contentAttachment Attachment
Communication.Slices for payload.payload:All Slices.content[x].contentReference Reference(Resource)
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Closed by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:attachment.content[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. This element is included in summaries. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Example General: text/plain; charset=UTF-8, image/png
Communication.Slices for payload.payload:attachment.content[x].language This element is included in summaries. 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. This element is included in summaries. 0..1 url Shall be present if the attachment is a link to a web page.
Example General: http://www.acme.com/logo-small.png
Communication.Slices for payload.payload:attachment.content[x].size This element is included in summaries. 0..1 unsignedInt Number of bytes of content (if url provided)
Communication.Slices for payload.payload:attachment.content[x].hash This element is included in summaries. 0..1 base64Binary Hash of the data (sha-1, base64ed)
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. This element is included in summaries. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Example General: Official Corporate Logo
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. This element is included in summaries. 0..1 dateTime The time the attachment was created
Communication.note 0..* Annotation Comments made about the communication

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.identifier:communicationId.​type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​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 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.medium Base example ParticipationMode 📦3.0.0 THO v7.4
Communication.topic Base example CommunicationTopic 📍4.0.1 FHIR Std.
Communication.reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG
Communication.payload:attachment.​content[x].language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')

Summary

Mandatory: 18 elements(6 nested mandatory elements)
Must-Support: 34 elements
Prohibited: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Communication.identifier
  • The element 1 is sliced based on the value of Communication.payload
  • The element 1 is sliced based on the value of Communication.payload.content[x]

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Communication.Slices for identifier This element must be supported. This element is included in summaries. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. This element is included in summaries. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. This element is included in summaries. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Example General: 123456
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. This element is included in summaries. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Communication.category.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Communication.priority This element must be supported. This element is included in summaries. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.subject This element must be supported. This element is included in summaries. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Communication.topic.text This element must be supported. This element is included in summaries. 1..1 string Plain text representation of the concept.
Communication.encounter This element must be supported. This element is included in summaries. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:All Slices Content/Rules for all slices
Communication.Slices for payload.payload:All Slices.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:All Slices.content[x] 1..1 Message part content
Communication.Slices for payload.payload:All Slices.content[x].contentString string
Communication.Slices for payload.payload:All Slices.content[x].contentAttachment Attachment
Communication.Slices for payload.payload:All Slices.content[x].contentReference Reference(Resource)
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Closed by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. This element is included in summaries. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Example General: text/plain; charset=UTF-8, image/png
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. This element is included in summaries. 0..1 url Shall be present if the attachment is a link to a web page.
Example General: http://www.acme.com/logo-small.png
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. This element is included in summaries. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Example General: Official Corporate Logo
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. This element is included in summaries. 0..1 dateTime The time the attachment was created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​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 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.topic Base example CommunicationTopic 📍4.0.1 FHIR Std.
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.Slices for identifier This element must be supported. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.use 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. 1..1 string The value that is unique
Communication.basedOn 0..0 Request fulfilled by this communication
Communication.partOf 0..0 Part of this action
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element must be supported. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.coding This element must be supported. 1..1 Coding Code defined by a terminology system
Communication.category.coding.system This element must be supported. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.code This element must be supported. 1..1 code Symbol in syntax defined by the system
Communication.priority This element must be supported. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.subject This element must be supported. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Communication.topic.text This element must be supported. 1..1 string Plain text representation of the concept.
Communication.encounter This element must be supported. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.sender 0..0 Message sender
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Open by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. 0..1 url Shall be present if the attachment is a link to a web page.
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. 0..1 dateTime The time the attachment was created

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.category Base required eHealth CareCommunication Categories 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Communication 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, priority-category-invariant, atLeastOnePayloadString, payloadAttachment-contentType-required, no-standard-sender, sender-required-based-on-messagetype, sender-contactPoint-required-based-on-messagetype, reply-requires-inResponseTo, forward-prohibits-inResponseTo
Communication.id This element is included in summaries. 0..1 id Logical id of this artifact
Communication.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Communication.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Communication.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Communication.text 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
Communication.contained 0..* Resource Contained, inline Resources
Communication.Slices for extension 4..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for extension.extension:sender This element must be supported. 0..1 (Complex) Sender Extension, contains the sending PractitionerRole, Practitioner and CareTeam.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender
Communication.Slices for extension.extension:destination This element must be supported. 1..1 Reference(Organization) Organization receiving the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-destination
Communication.Slices for extension.extension:origin This element must be supported. 1..1 Reference(Organization) Reference to the sending organization of the message
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-origin
Communication.Slices for extension.extension:messageType This element must be supported. 1..1 Coding Message type
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type
Binding: Message Type ValueSet (required)
Communication.Slices for extension.extension:administrativeStatus 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)
Communication.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Communication.Slices for identifier This element must be supported. This element is included in summaries. 1..2 Identifier Unique identifier
Slice: Unordered, Open by value:system

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for identifier.identifier:communicationId This element must be supported. This element is included in summaries. C 1..1 Identifier The communication identifier
Constraints: uuidv4
Communication.Slices for identifier.identifier:communicationId.id 0..1 string Unique id for inter-element referencing
Communication.Slices for identifier.identifier:communicationId.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for identifier.identifier:communicationId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Communication.Slices for identifier.identifier:communicationId.type This element is included in summaries. 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.
Communication.Slices for identifier.identifier:communicationId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/id/ehealth-carecommunication-identifier (extensions allowed)
Communication.Slices for identifier.identifier:communicationId.value This element must be supported. This element is included in summaries. 1..1 string UUID v4 in URN form (urn:uuid:<uuid>)
Example General: 123456
Communication.Slices for identifier.identifier:communicationId.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Communication.Slices for identifier.identifier:communicationId.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Communication.Slices for identifier.identifier:messageHeaderId This element must be supported. This element is included in summaries. 0..1 Identifier The ID of the originating MessageHeader resource
Communication.Slices for identifier.identifier:messageHeaderId.id 0..1 string Unique id for inter-element referencing
Communication.Slices for identifier.identifier:messageHeaderId.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for identifier.identifier:messageHeaderId.use This element is a modifier element. This element is included in summaries. 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
Communication.Slices for identifier.identifier:messageHeaderId.type This element is included in summaries. 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.
Communication.Slices for identifier.identifier:messageHeaderId.system This element must be supported. This element is included in summaries. 1..1 uri The namespace for the identifier value
Required Pattern: http://ehealth.sundhed.dk/fhir/system/medcom-message-header-id (extensions allowed)
Communication.Slices for identifier.identifier:messageHeaderId.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Communication.Slices for identifier.identifier:messageHeaderId.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Communication.Slices for identifier.identifier:messageHeaderId.assigner This element is included in summaries. 0..1 Reference(Organization) Organization that issued id (may be just text)
Communication.instantiatesCanonical This element is included in summaries. 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
Communication.instantiatesUri This element is included in summaries. 0..* uri Instantiates external protocol or definition
Communication.inResponseTo This element must be supported. 0..1 Reference(Communication) references the Ehealth-CareCommunication Communication.id, which this message is a response to.
Communication.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
Communication.statusReason This element is included in summaries. 0..1 CodeableConcept Reason for current status
Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
Communication.category This element must be supported. 1..1 CodeableConcept Message category
Binding: eHealth CareCommunication Categories (required)
Communication.category.id 0..1 string Unique id for inter-element referencing
Communication.category.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.category.coding This element must be supported. This element is included in summaries. 1..1 Coding Code defined by a terminology system
Communication.category.coding.id 0..1 string Unique id for inter-element referencing
Communication.category.coding.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.category.coding.system This element must be supported. This element is included in summaries. 1..1 uri Identity of the terminology system
Required Pattern: http://ehealth.sundhed.dk/cs/ehealth-carecommunication-category (extensions allowed)
Communication.category.coding.version This element is included in summaries. 0..1 string Version of the system - if relevant
Communication.category.coding.code This element must be supported. This element is included in summaries. 1..1 code Symbol in syntax defined by the system
Communication.category.coding.display This element is included in summaries. 0..1 string Representation defined by the system
Communication.category.coding.userSelected This element is included in summaries. 0..1 boolean If this coding was chosen directly by the user
Communication.category.text This element is included in summaries. 0..1 string Plain text representation of the concept
Communication.priority This element must be supported. This element is included in summaries. 0..1 code Only used when the category is 'regarding referral', see priority-category-invariant.
Binding: eHealth CareCommunication Priorities (required)
Communication.medium 0..* CodeableConcept A channel of communication
Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc.
Communication.subject This element must be supported. This element is included in summaries. 1..1 Reference(Patient) Focus of message
Communication.topic This element must be supported. 0..1 CodeableConcept Must be added when category is "other". Topic must be added in the text-element.
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Communication.topic.id 0..1 string Unique id for inter-element referencing
Communication.topic.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.topic.coding This element is included in summaries. 0..* Coding Code defined by a terminology system
Communication.topic.text This element must be supported. This element is included in summaries. 1..1 string Plain text representation of the concept.
Communication.about 0..* Reference(Resource) Resources that pertain to this communication
Communication.encounter This element must be supported. This element is included in summaries. 0..1 Reference(Encounter) Shall contain a reference to an Encounter resource with a episodeOfCare-identifier, if the identifier is included in a previous message.
Communication.sent 0..1 dateTime When sent
Communication.received 0..1 dateTime When received
Communication.recipient This element must be supported. 0..1 Reference(CareTeam | PractitionerRole) The recieving actor of the message
Communication.reasonCode This element is included in summaries. 0..* CodeableConcept Indication for message
Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication.
Communication.reasonReference This element is included in summaries. 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) Why was communication done?
Communication.Slices for payload 1..* BackboneElement Message payload
Slice: Unordered, Open by type:$this.content

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:All Slices Content/Rules for all slices
Communication.Slices for payload.payload:All Slices.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:All Slices.extension 0..* Extension Additional content defined by implementations
Communication.Slices for payload.payload:All Slices.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:All Slices.content[x] 1..1 Message part content
Communication.Slices for payload.payload:All Slices.content[x].contentString string
Communication.Slices for payload.payload:All Slices.content[x].contentAttachment Attachment
Communication.Slices for payload.payload:All Slices.content[x].contentReference Reference(Resource)
Communication.Slices for payload.payload:string 1..* BackboneElement Message payload
Communication.Slices for payload.payload:string.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:string.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:string.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:string.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:string.Slices for content[x] 1..1 string Message part content
Slice: Unordered, Closed by type:$this
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:string.Slices for content[x] Content/Rules for all slices
Communication.Slices for payload.payload:string.Slices for content[x].content[x]:contentString This element must be supported. 1..1 string Message part content
Communication.Slices for payload.payload:attachment 0..* BackboneElement Message payload
Communication.Slices for payload.payload:attachment.id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:attachment.Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Communication.Slices for payload.payload:attachment.Slices for extension Content/Rules for all slices
Communication.Slices for payload.payload:attachment.Slices for extension.extension:date This element must be supported. 1..1 dateTime Payload dateTime
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-datetime
Communication.Slices for payload.payload:attachment.Slices for extension.extension:identifier This element must be supported. 1..1 Identifier Identifier Extension
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-payload-identifier
Communication.Slices for payload.payload:attachment.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Communication.Slices for payload.payload:attachment.content[x] This element must be supported. 1..1 Attachment Message part content
Communication.Slices for payload.payload:attachment.content[x].id 0..1 string Unique id for inter-element referencing
Communication.Slices for payload.payload:attachment.content[x].extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Communication.Slices for payload.payload:attachment.content[x].contentType This element must be supported. This element is included in summaries. 0..1 code The content type shall be present when the content is an attachment included in the data element.
Binding: eHealth CareCommunication Attachment MIME Types (required)
Example General: text/plain; charset=UTF-8, image/png
Communication.Slices for payload.payload:attachment.content[x].language This element is included in summaries. 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
Communication.Slices for payload.payload:attachment.content[x].data This element must be supported. 0..1 base64Binary Shall be present and contain the base64 encoded content of the attachment.
Communication.Slices for payload.payload:attachment.content[x].url This element must be supported. This element is included in summaries. 0..1 url Shall be present if the attachment is a link to a web page.
Example General: http://www.acme.com/logo-small.png
Communication.Slices for payload.payload:attachment.content[x].size This element is included in summaries. 0..1 unsignedInt Number of bytes of content (if url provided)
Communication.Slices for payload.payload:attachment.content[x].hash This element is included in summaries. 0..1 base64Binary Hash of the data (sha-1, base64ed)
Communication.Slices for payload.payload:attachment.content[x].title This element must be supported. This element is included in summaries. 1..1 string Note: it is not allowed for the system to automatically include '.filetype' in the title.
Example General: Official Corporate Logo
Communication.Slices for payload.payload:attachment.content[x].creation This element must be supported. This element is included in summaries. 0..1 dateTime The time the attachment was created
Communication.note 0..* Annotation Comments made about the communication

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Communication.identifier:communicationId.​use Base required IdentifierUse 📦4.0.1 FHIR Std.
Communication.identifier:communicationId.​type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​use Base required IdentifierUse 📍4.0.1 FHIR Std.
Communication.identifier:messageHeaderId.​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 📦11.0.1 This IG
Communication.priority Base required eHealth CareCommunication Priorities 📦11.0.1 This IG
Communication.medium Base example ParticipationMode 📦3.0.0 THO v7.4
Communication.topic Base example CommunicationTopic 📍4.0.1 FHIR Std.
Communication.reasonCode Base example SNOMED CT Clinical Findings 📍4.0.1 FHIR Std.
Communication.payload:attachment.​content[x].contentType Base required eHealth CareCommunication Attachment MIME Types 📦11.0.1 This IG
Communication.payload:attachment.​content[x].language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
atLeastOnePayloadString error Communication At least one payload segment shall have a message text (payload.contentString) payload.contentString.exists()
forward-prohibits-inResponseTo error Communication If messageType is 'forward-message', inResponseTo SHALL be empty. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'forward-message').exists() implies inResponseTo.empty()
no-standard-sender error Communication The standard Communication.sender element SHALL NOT be used. Use the ehealth-carecommunication-sender extension instead. sender.empty()
only-asap-or-routine error Communication priority must be either 'asap' or 'routine' priority.empty() or priority = 'asap' or priority = 'routine'
payloadAttachment-contentType-required error Communication contentType SHALL be present when the attachment content is in the data element. It is not required for url-only attachments. payload.contentAttachment.data.exists() implies payload.contentAttachment.contentType.exists()
priority-category-invariant error Communication Priority must not be present when category is not 'regarding-referral'. category.coding.code = 'regarding-referral' or priority.empty()
reply-requires-inResponseTo error Communication If messageType is 'reply-message', inResponseTo SHALL be populated. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'reply-message').exists() implies inResponseTo.exists()
sender-contactPoint-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must carry a contactPoint. If 'forward', it may be absent. Mirrors MedCom's required authorContact on the outbound message. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').extension('contactPoint').exists()
sender-required-based-on-messagetype error Communication If messagetype is 'new' or 'reply', the sender extension must be present. If 'forward', sender may be absent. extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-message-Type').value.where(code = 'new-message' or code = 'reply-message').exists() implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-carecommunication-sender').exists()
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.identifier:communicationId identifier.value SHALL be a valid UUID v4 in URN form (urn:uuid:<uuid>) value.matches('^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$')

Summary

Mandatory: 18 elements(6 nested mandatory elements)
Must-Support: 34 elements
Prohibited: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Communication.identifier
  • The element 1 is sliced based on the value of Communication.payload
  • The element 1 is sliced based on the value of Communication.payload.content[x]

 

Other representations of profile: CSV, Excel, Schematron