The FHIR resource Communication is a record of a communication. A communication is a conveyance of information from one entity, a sender, to another entity, a receiver.
This profile, the ehealth-communication, is intended for use of the FHIR Communication for capturing an annotation about a measurement. Such an annotation could for example describe circumstances about a particular Observation, QuestionnaireResponse or Media submitted by a Patient.
In the eHealth infrastructure, the annotation is defined using the following elements:
sender
refers to the creator and owner of the annotationehealth-communication-senderCareTeam
has same function as sender
but is used where the creator and owner is one or more CareTeamsrecipient
refers to the entities allowed to read the annotationehealth-communication-recipientCareTeam
has same function as recipient
but is used where the allowed reading entity is one or more CareTeamsehealth-restriction-category
indicates, when ehealth-communication-senderCareTeam
and/or ehealth-communication-recipientCareTeam
refer to one
or more CareTeams, what workflow areas/responsibilities of members of those CareTeams that the annotation is relevant for.topic
refers to the measurement which the annotation is about. This can be zero or more Observation, zero or more QuestionnaireResponse and zero or more Media.
At least one of Observation, QuestionnaireResponse or Media should be referred for the annotation to make sense.payload
contains the annotation text itselfIn scope of the eHealth infrastructure, FHIR Communication is also used in the profile ehealth-message where a FHIR Communication captures written communication in the form of messages, notifications and advises. The ehealth-message profile is also used for personal notes.
A personal note differ from an annotation in that the latter is specific for measurements where the former has broader scope.
The official URL for this profile is:
http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication
This profile builds on Communication.
This profile was published on Tue Mar 31 08:26:16 UTC 2020 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: 5 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
This structure is derived from Communication
This structure is derived from Communication
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | I | 0..* | Communication | A communication is a conveyance of information 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) Max Binding: All Languages | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
ehealth-communication-recipientCareTeam | I | 0..* | Reference() | CareTeam message recipient URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication-recipientCareTeam |
ehealth-communication-senderCareTeam | I | 0..* | Reference() | CareTeam message sender URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication-senderCareTeam |
ehealth-restriction-category | I | 1..* | CodeableConcept | Restriction category URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-restriction-category |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
definition | Σ | 0..* | Reference(eHealth PlanDefinition | eHealth ActivityDefinition) {r} | Instantiates protocol or definition |
basedOn | Σ | 0..* | Reference(Resource) {r} | Request fulfilled by this communication |
partOf | Σ | 0..* | Reference(Resource) {r} | Part of this action |
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 | 1..* | CodeableConcept | Message category Binding: Communication Category (required) | |
medium | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example) | |
subject | Σ | 1..1 | Reference(eHealth Patient) {r} | Focus of message |
recipient | 0..* | Reference(eHealth Device | eHealth Patient | eHealth Practitioner | eHealth RelatedPerson | Group) {r} | Message recipient | |
topic | 1..* | Reference(Resource) {r} | Focal resources | |
context | Σ | 1..1 | Reference(Encounter | eHealth EpisodeOfCare) {r} | Encounter or episode leading to message |
sent | 0..1 | dateTime | When sent | |
received | 0..1 | dateTime | When received | |
sender | 0..1 | Reference(eHealth Device | eHealth Patient | eHealth Practitioner | eHealth RelatedPerson) {r} | Message sender | |
reasonCode | Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMED CT Clinical Findings (example) |
reasonReference | Σ | 0..* | Reference(eHealth Condition | eHealth Observation) {r} | Why was communication done? |
payload | I | 0..* | 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 |
content[x] | 1..1 | (Slice Definition) | Message part content Slice: Unordered, Closed by type:$this | |
content[x]:contentString | 1..1 | string | Message part content | |
note | 0..* | Annotation | Comments made about the communication | |
Documentation for this format |
This structure is derived from Communication
Summary
Mandatory: 5 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Differential View
This structure is derived from Communication
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Communication | I | 0..* | Communication | A communication is a conveyance of information 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) Max Binding: All Languages | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
ehealth-communication-recipientCareTeam | I | 0..* | Reference() | CareTeam message recipient URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication-recipientCareTeam |
ehealth-communication-senderCareTeam | I | 0..* | Reference() | CareTeam message sender URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-communication-senderCareTeam |
ehealth-restriction-category | I | 1..* | CodeableConcept | Restriction category URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-restriction-category |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Unique identifier |
definition | Σ | 0..* | Reference(eHealth PlanDefinition | eHealth ActivityDefinition) {r} | Instantiates protocol or definition |
basedOn | Σ | 0..* | Reference(Resource) {r} | Request fulfilled by this communication |
partOf | Σ | 0..* | Reference(Resource) {r} | Part of this action |
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 | 1..* | CodeableConcept | Message category Binding: Communication Category (required) | |
medium | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (example) | |
subject | Σ | 1..1 | Reference(eHealth Patient) {r} | Focus of message |
recipient | 0..* | Reference(eHealth Device | eHealth Patient | eHealth Practitioner | eHealth RelatedPerson | Group) {r} | Message recipient | |
topic | 1..* | Reference(Resource) {r} | Focal resources | |
context | Σ | 1..1 | Reference(Encounter | eHealth EpisodeOfCare) {r} | Encounter or episode leading to message |
sent | 0..1 | dateTime | When sent | |
received | 0..1 | dateTime | When received | |
sender | 0..1 | Reference(eHealth Device | eHealth Patient | eHealth Practitioner | eHealth RelatedPerson) {r} | Message sender | |
reasonCode | Σ | 0..* | CodeableConcept | Indication for message Binding: SNOMED CT Clinical Findings (example) |
reasonReference | Σ | 0..* | Reference(eHealth Condition | eHealth Observation) {r} | Why was communication done? |
payload | I | 0..* | 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 |
content[x] | 1..1 | (Slice Definition) | Message part content Slice: Unordered, Closed by type:$this | |
content[x]:contentString | 1..1 | string | Message part content | |
note | 0..* | Annotation | Comments made about the communication | |
Documentation for this format |
Path | Conformance | ValueSet |
Communication.language | extensible | Common Languages Max Binding: All Languages |
Communication.status | required | EventStatus |
Communication.notDoneReason | example | CommunicationNotDoneReason |
Communication.category | required | CommunicationCategory |
Communication.medium | example | v3 Code System ParticipationMode |
Communication.reasonCode | 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.extension:recipientCareTeam | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Communication.extension:recipientCareTeam | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Communication.extension:senderCareTeam | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Communication.extension:senderCareTeam | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Communication.extension:restrictionCategory | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) | |
ext-1 | Communication.extension:restrictionCategory | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Communication.payload | All FHIR elements must have a @value or children : hasValue() | (children().count() > id.count()) |