The official URL for this profile is:
http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-message
This is the profile for general messaging in the eHealth platform. It covers four different message types: messages, notifications, advice, and notes. This is specified using the message category (value set "Message category"). When needed, a message medium may also be specified: NemSMS or eBoks (value set "Message medium").
Message-related state, such as whether a message has been read or not, or time limited validity on notifications, is handled through the use of the Provenance resource.
This profile builds on Communication.
This profile was published on Fri Jun 07 11:10:06 UTC 2019 as a draft by ehealth.sundhed.dk.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from Communication
Summary
Mandatory: 4 elements (2 nested mandatory elements)
Fixed Value: 2 elements
Slices
This structure defines the following Slices:
This structure is derived from Communication
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | 0..* | |||
identifier | 0..* | Identifier | ||
definition | 0..* | Reference(PlanDefinition | ActivityDefinition) {r} | ||
basedOn | 0..* | Reference(Resource) {r} | ||
partOf | 0..* | Reference(CarePlan) {r} | The CarePlan that this communication relates to | |
category | CodeableConcept | Slice: Unordered, Open by value:coding.system | ||
category | 1..1 | CodeableConcept | ||
coding | 0..* | Coding | Binding: MessageCategory (required) | |
system | 1..1 | uri | Fixed Value: http://ehealth.sundhed.dk/message-category | |
code | 0..1 | code | Binding: MessageCategory (required) | |
medium | CodeableConcept | Slice: Unordered, Open by value:coding.system | ||
medium | 0..1 | CodeableConcept | Binding: MessageMedium (example) | |
coding | 0..* | Coding | ||
system | 1..1 | uri | Fixed Value: http://ehealth.sundhed.dk/message-medium | |
code | 0..1 | code | Binding: MessageMedium (required) | |
subject | 0..1 | Reference(Patient | Group) {r} | ||
recipient | 1..* | Reference(Patient | Practitioner | CareTeam) {r} | ||
topic | 0..* | Reference(Resource) {r} | ||
context | 0..1 | Reference(Encounter | EpisodeOfCare) {r} | ||
sender | 1..1 | Reference(Patient | Practitioner | CareTeam) {r} | ||
reasonReference | 0..* | Reference(Condition | Observation) {r} | ||
payload | 0..1 | BackboneElement | ||
contentString | 1..1 | string | ||
Documentation for this format |
This structure is derived from Communication
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | I | 0..* | A record of information transmitted from a sender to a receiver | |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
definition | Σ | 0..* | Reference(PlanDefinition | ActivityDefinition) {r} | Instantiates protocol or definition |
basedOn | Σ | 0..* | Reference(Resource) {r} | Request fulfilled by this communication |
partOf | Σ | 0..* | Reference(CarePlan) {r} | The CarePlan that this communication relates to |
status | ?!Σ | 1..1 | code | preparation | in-progress | suspended | aborted | completed | entered-in-error Binding: EventStatus (required) |
notDone | ?!Σ | 0..1 | boolean | Communication did not occur |
notDoneReason | ΣI | 0..1 | CodeableConcept | Why communication did not occur Binding: CommunicationNotDoneReason (example) |
category | CodeableConcept | Message category Slice: Unordered, Open by value:coding.system Binding: CommunicationCategory (example) | ||
category | 1..1 | CodeableConcept | Message category Binding: CommunicationCategory (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: MessageCategory (required) |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
system | Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://ehealth.sundhed.dk/message-category |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | Σ | 0..1 | code | Symbol in syntax defined by the system Binding: MessageCategory (required) |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
medium | CodeableConcept | A channel of communication Slice: Unordered, Open by value:coding.system Binding: ParticipationMode (example) | ||
medium | 0..1 | CodeableConcept | A channel of communication Binding: MessageMedium (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
system | Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://ehealth.sundhed.dk/message-medium |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | Σ | 0..1 | code | Symbol in syntax defined by the system Binding: MessageMedium (required) |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
subject | Σ | 0..1 | Reference(Patient | Group) {r} | Focus of message |
recipient | 1..* | Reference(Patient | Practitioner | CareTeam) {r} | Message recipient | |
topic | 0..* | Reference(Resource) {r} | Focal resources | |
context | Σ | 0..1 | Reference(Encounter | EpisodeOfCare) {r} | Encounter or episode leading to message |
sent | 0..1 | dateTime | When sent | |
received | 0..1 | dateTime | When received | |
sender | 1..1 | Reference(Patient | Practitioner | CareTeam) {r} | Message sender | |
reasonCode | Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMED CT Clinical Findings (example) |
reasonReference | Σ | 0..* | Reference(Condition | Observation) {r} | Why was communication done? |
payload | I | 0..1 | BackboneElement | Message payload |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
contentString | 1..1 | string | Message part content | |
note | 0..* | Annotation | Comments made about the communication | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
author[x] | Σ | 0..1 | Reference(Practitioner | Patient | RelatedPerson) {r}, string | Individual responsible for the annotation |
time | Σ | 0..1 | dateTime | When the annotation was made |
text | 1..1 | string | The annotation - text content | |
Documentation for this format |
This structure is derived from Communication
Summary
Mandatory: 4 elements (2 nested mandatory elements)
Fixed Value: 2 elements
Slices
This structure defines the following Slices:
Differential View
This structure is derived from Communication
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | 0..* | |||
identifier | 0..* | Identifier | ||
definition | 0..* | Reference(PlanDefinition | ActivityDefinition) {r} | ||
basedOn | 0..* | Reference(Resource) {r} | ||
partOf | 0..* | Reference(CarePlan) {r} | The CarePlan that this communication relates to | |
category | CodeableConcept | Slice: Unordered, Open by value:coding.system | ||
category | 1..1 | CodeableConcept | ||
coding | 0..* | Coding | Binding: MessageCategory (required) | |
system | 1..1 | uri | Fixed Value: http://ehealth.sundhed.dk/message-category | |
code | 0..1 | code | Binding: MessageCategory (required) | |
medium | CodeableConcept | Slice: Unordered, Open by value:coding.system | ||
medium | 0..1 | CodeableConcept | Binding: MessageMedium (example) | |
coding | 0..* | Coding | ||
system | 1..1 | uri | Fixed Value: http://ehealth.sundhed.dk/message-medium | |
code | 0..1 | code | Binding: MessageMedium (required) | |
subject | 0..1 | Reference(Patient | Group) {r} | ||
recipient | 1..* | Reference(Patient | Practitioner | CareTeam) {r} | ||
topic | 0..* | Reference(Resource) {r} | ||
context | 0..1 | Reference(Encounter | EpisodeOfCare) {r} | ||
sender | 1..1 | Reference(Patient | Practitioner | CareTeam) {r} | ||
reasonReference | 0..* | Reference(Condition | Observation) {r} | ||
payload | 0..1 | BackboneElement | ||
contentString | 1..1 | string | ||
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | I | 0..* | A record of information transmitted from a sender to a receiver | |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (extensible) | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
definition | Σ | 0..* | Reference(PlanDefinition | ActivityDefinition) {r} | Instantiates protocol or definition |
basedOn | Σ | 0..* | Reference(Resource) {r} | Request fulfilled by this communication |
partOf | Σ | 0..* | Reference(CarePlan) {r} | The CarePlan that this communication relates to |
status | ?!Σ | 1..1 | code | preparation | in-progress | suspended | aborted | completed | entered-in-error Binding: EventStatus (required) |
notDone | ?!Σ | 0..1 | boolean | Communication did not occur |
notDoneReason | ΣI | 0..1 | CodeableConcept | Why communication did not occur Binding: CommunicationNotDoneReason (example) |
category | CodeableConcept | Message category Slice: Unordered, Open by value:coding.system Binding: CommunicationCategory (example) | ||
category | 1..1 | CodeableConcept | Message category Binding: CommunicationCategory (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system Binding: MessageCategory (required) |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
system | Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://ehealth.sundhed.dk/message-category |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | Σ | 0..1 | code | Symbol in syntax defined by the system Binding: MessageCategory (required) |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
medium | CodeableConcept | A channel of communication Slice: Unordered, Open by value:coding.system Binding: ParticipationMode (example) | ||
medium | 0..1 | CodeableConcept | A channel of communication Binding: MessageMedium (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
system | Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://ehealth.sundhed.dk/message-medium |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | Σ | 0..1 | code | Symbol in syntax defined by the system Binding: MessageMedium (required) |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
subject | Σ | 0..1 | Reference(Patient | Group) {r} | Focus of message |
recipient | 1..* | Reference(Patient | Practitioner | CareTeam) {r} | Message recipient | |
topic | 0..* | Reference(Resource) {r} | Focal resources | |
context | Σ | 0..1 | Reference(Encounter | EpisodeOfCare) {r} | Encounter or episode leading to message |
sent | 0..1 | dateTime | When sent | |
received | 0..1 | dateTime | When received | |
sender | 1..1 | Reference(Patient | Practitioner | CareTeam) {r} | Message sender | |
reasonCode | Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMED CT Clinical Findings (example) |
reasonReference | Σ | 0..* | Reference(Condition | Observation) {r} | Why was communication done? |
payload | I | 0..1 | BackboneElement | Message payload |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
contentString | 1..1 | string | Message part content | |
note | 0..* | Annotation | Comments made about the communication | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url | |
author[x] | Σ | 0..1 | Reference(Practitioner | Patient | RelatedPerson) {r}, string | Individual responsible for the annotation |
time | Σ | 0..1 | dateTime | When the annotation was made |
text | 1..1 | string | The annotation - text content | |
Documentation for this format |
Path | Name | Conformance | ValueSet |
Communication.language | Common Languages | extensible | Common Languages |
Communication.status | EventStatus | required | EventStatus |
Communication.notDoneReason | CommunicationNotDoneReason | example | CommunicationNotDoneReason |
Communication.category | CommunicationCategory | example | CommunicationCategory |
Communication.category | CommunicationCategory | example | CommunicationCategory |
Communication.category.coding | MessageCategory | required | MessageCategory |
Communication.category.coding.code | MessageCategory | required | MessageCategory |
Communication.medium | MessageMedium | example | MessageMedium |
Communication.medium | MessageMedium | example | MessageMedium |
Communication.medium.coding.code | MessageMedium | required | MessageMedium |
Communication.reasonCode | SNOMED CT Clinical Findings | example | SNOMED CT Clinical Findings |
Id | Path | Details | Requirements |
dom-2 | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-1 | Communication | If the resource is contained in another resource, it SHALL NOT contain any narrative : contained.text.empty() | |
dom-4 | Communication | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-3 | Communication | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource : contained.where(('#'+id in %resource.descendants().reference).not()).empty() | |
com-1 | Communication | Not Done Reason can only be specified if NotDone is "true" : notDone or notDoneReason.exists().not() | |
ele-1 | Communication.payload | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) |