Advance Care Planning (PZP)
1.0.0-rc1 - trial-use

Advance Care Planning (PZP), published by IKNL. This guide is not an authorized publication; it is the continuous build for version 1.0.0-rc1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IKNL/PZP-FHIR-R4/ and changes regularly. See the Directory of published versions

## Resource Profile: Communication

Official URL: https://api.iknl.nl/docs/pzp/r4/StructureDefinition/ACP-Communication | Version: 1.0.0-rc1
Draft as of 2025-10-31 | Computable Name: ACPCommunication
Copyright/Legal: Copyright and related rights waived via CC0, https://creativecommons.org/publicdomain/zero/1.0/. This does not apply to information from third parties, for example a medical terminology system. The implementer alone is responsible for identifying and obtaining any necessary licenses or authorizations to utilize third party IP in connection with the specification or otherwise.

Communication events that have taken place in context of Advance Care Planning. Based on Communication resource.

Usages:

- Examples for this Profile: Communication/F1-ACP-Communication-01-10-2020 and Communication/P2-ACP-Communication-07-08-2025

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | A record of information transmitted from a sender to a receiver
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
status | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication.
subject | O Σ | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O Σ | 1..1 | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std.
Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std.
Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Communication | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Communication | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | Communication.implicitRules, Communication.modifierExtension, Communication.status, Communication.subject, Communication.topic, Communication.sent, Communication.recipient, Communication.sender, Communication.reasonCode | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | Communication.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Communication

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | A record of information transmitted from a sender to a receiver
subject | O | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O | 1..1 | CodeableConcept | Indication for message Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | 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: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier | Σ | 0..* | Identifier | Unique identifier
instantiatesCanonical | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | Σ | 0..* | Reference(Resource) | Request fulfilled by this communication
partOf | Σ | 0..* | Reference(Resource) | Part of this action
inResponseTo |  | 0..* | Reference(Communication) | Reply to
status | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication.
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
category |  | 0..* | CodeableConcept | Message category Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instructions, etc.
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Codes indicating the relative importance of a communication.
medium |  | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (3.0.0) (example): Codes for communication mediums such as phone, fax, email, in person, etc.
subject | O Σ | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
about |  | 0..* | Reference(Resource) | Resources that pertain to this communication
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
received |  | 0..1 | dateTime | When received
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O Σ | 1..1 | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
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
reasonReference | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why was communication done?
payload |  | 0..* | BackboneElement | Message payload
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
content[x] |  | 1..1 |  | Message part content
contentString |  |  | string |
contentAttachment |  |  | Attachment |
contentReference |  |  | Reference(Resource) |
note |  | 0..* | Annotation | Comments made about the communication
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Communication.language | Base | preferred | Common Languages | 📍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 | example | CommunicationCategory | 📍4.0.1 | FHIR Std.
Communication.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
Communication.medium | Base | example | ParticipationMode | 📍3.0.0 | THO v6.5
Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std.
Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Communication | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Communication | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | Communication.meta, Communication.implicitRules, Communication.language, Communication.text, Communication.extension, Communication.modifierExtension, Communication.identifier, Communication.instantiatesCanonical, Communication.instantiatesUri, Communication.basedOn, Communication.partOf, Communication.inResponseTo, Communication.status, Communication.statusReason, Communication.category, Communication.priority, Communication.medium, Communication.subject, Communication.topic, Communication.about, Communication.encounter, Communication.sent, Communication.received, Communication.recipient, Communication.sender, Communication.reasonCode, Communication.reasonReference, Communication.payload, Communication.payload.extension, Communication.payload.modifierExtension, Communication.payload.content[x], Communication.note | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | Communication.extension, Communication.modifierExtension, Communication.payload.extension, Communication.payload.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Communication

Summary

Mandatory: 1 element

Structures

This structure refers to these other structures:

- Patient (https://api.iknl.nl/docs/pzp/r4/StructureDefinition/ACP-Patient|1.0.0-rc1)
- HealthProfessional PractitionerRole (https://api.iknl.nl/docs/pzp/r4/StructureDefinition/ACP-HealthProfessional-PractitionerRole|1.0.0-rc1)

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | A record of information transmitted from a sender to a receiver
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
status | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication.
subject | O Σ | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O Σ | 1..1 | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Communication.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std.
Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std.
Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Communication | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Communication | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | Communication.implicitRules, Communication.modifierExtension, Communication.status, Communication.subject, Communication.topic, Communication.sent, Communication.recipient, Communication.sender, Communication.reasonCode | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | Communication.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from Communication

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | A record of information transmitted from a sender to a receiver
subject | O | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O | 1..1 | CodeableConcept | Indication for message Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Communication |  | 0..* | Communication(4.0.1) | 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: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1
identifier | Σ | 0..* | Identifier | Unique identifier
instantiatesCanonical | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | Σ | 0..* | Reference(Resource) | Request fulfilled by this communication
partOf | Σ | 0..* | Reference(Resource) | Part of this action
inResponseTo |  | 0..* | Reference(Communication) | Reply to
status | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): The status of the communication.
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
category |  | 0..* | CodeableConcept | Message category Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instructions, etc.
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Codes indicating the relative importance of a communication.
medium |  | 0..* | CodeableConcept | A channel of communication Binding: ParticipationMode (3.0.0) (example): Codes for communication mediums such as phone, fax, email, in person, etc.
subject | O Σ | 0..1 | Reference(Patient(1.0.0-rc1)) | Focus of message
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
topic | O | 0..1 | CodeableConcept | Description of the purpose/content Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
about |  | 0..* | Reference(Resource) | Resources that pertain to this communication
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of
sent | O | 0..1 | dateTime | When sent
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
received |  | 0..1 | dateTime | When received
recipient | O | 0..* | Reference(Patient(1.0.0-rc1)) | Message recipient
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
sender | O | 0..1 | Reference(HealthProfessional PractitionerRole(1.0.0-rc1)) | Message sender
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
reasonCode | O Σ | 1..1 | CodeableConcept | Indication for message Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication. Required Pattern: At least the following
Obligations | Actor
SHALL:populate-if-known | ACP Actor Provider
SHALL:no-error | ACP Actor Consulter
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 713603004
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
reasonReference | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference) | Why was communication done?
payload |  | 0..* | BackboneElement | Message payload
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Constraints: ext-1
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1
content[x] |  | 1..1 |  | Message part content
contentString |  |  | string |
contentAttachment |  |  | Attachment |
contentReference |  |  | Reference(Resource) |
note |  | 0..* | Annotation | Comments made about the communication
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Communication.language | Base | preferred | Common Languages | 📍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 | example | CommunicationCategory | 📍4.0.1 | FHIR Std.
Communication.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
Communication.medium | Base | example | ParticipationMode | 📍3.0.0 | THO v6.5
Communication.topic | Base | example | CommunicationTopic | 📍4.0.1 | FHIR Std.
Communication.reasonCode | Base | example | SNOMED CT Clinical Findings | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Communication | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Communication | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | Communication | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Communication | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | Communication.meta, Communication.implicitRules, Communication.language, Communication.text, Communication.extension, Communication.modifierExtension, Communication.identifier, Communication.instantiatesCanonical, Communication.instantiatesUri, Communication.basedOn, Communication.partOf, Communication.inResponseTo, Communication.status, Communication.statusReason, Communication.category, Communication.priority, Communication.medium, Communication.subject, Communication.topic, Communication.about, Communication.encounter, Communication.sent, Communication.received, Communication.recipient, Communication.sender, Communication.reasonCode, Communication.reasonReference, Communication.payload, Communication.payload.extension, Communication.payload.modifierExtension, Communication.payload.content[x], Communication.note | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | Communication.extension, Communication.modifierExtension, Communication.payload.extension, Communication.payload.modifierExtension | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Communication

Summary

Mandatory: 1 element

Structures

This structure refers to these other structures:

- Patient (https://api.iknl.nl/docs/pzp/r4/StructureDefinition/ACP-Patient|1.0.0-rc1)
- HealthProfessional PractitionerRole (https://api.iknl.nl/docs/pzp/r4/StructureDefinition/ACP-HealthProfessional-PractitionerRole|1.0.0-rc1)

Other representations of profile: CSV, Excel, Schematron