## Profile: Communication
Communication is used to convey information from one entity, a sender, to another entity, a receiver.
### Legend
* ~~strikethrough~~ indicates the the element is not included in this profile
* `red` indicates that the field is likely useful in a future iteration of the specification
| Name | Card | Type | Comments | Terminology Binding|
|---|---|---|---|
| ~~identifier~~ | ~~0..0~~ | ~~Identifier~~ | |
| ~~instantiatesCanonical~~ | ~~0..*~~ | ~~canonica()~~ |
| ~~instantiatesUri~~ | ~~0..*~~ | ~~uri~~ |
| basedOn | ~~0~~1..* | Reference(~~Any~~ServiceRequest) | Reference the related ServiceRequest
| `partOf` | `0..*` | `Reference(Any)` |
| `inResponseTo` | `0..*` | `Reference(Communication)` | `for future use` If this communication is a direct response to another communication (e.g., answer to a request-for-information), then reference the original communication.
| status | 1..1 | code | Always send equal to "completed". If a message needs to be discarded, mark as "entered-in-error". (Consider using "in-progress if waiting for a response")
| ~~statusReason~~ | ~~0..0~~ | ~~CodeableConcept~~ |
| category | 0..* | CodeableConcept | general-information \ request-for-information \ outome-report \ consult-report
| `priority` | `0..1` | `code` | `for future use`
| ~~medium~~ | ~~0..*~~ | ~~CodeableConcept~~ | A channel of communication
| ~~subject~~ | ~~0..0~~ | ~~Reference(Patient \ Group)~~ |
| ~~topic~~ | ~~0..1~~ | ~~CodeableConcept~~ |
| ~~about~~ | ~~0..0~~ | ~~Reference(Any)~~ |
| ~~context~~ | ~~0..0~~ | ~~Reference(Encounter \ EpisodeOfCare)~~ |
| sent | 0..1 | dateTime | When the sending system records submission of the communication, set by sending system.
| received | 0..1 | dateTime | When the receiving system records reception of the communication, set by receiving system.
| ~~recipient~~ | ~~0..*~~ | ~~Reference(Organization \ Patient \ Practitioner \ PractitionerRole \ RelatedPerson \ Group \ CareTeam)~~
| sender | 0..1 | Reference(Patient \ PractitionerRole \ `RelatedPerson`) | PractitionerRole for a referral. Patient for patient self-entered information. **Always use sender.display, which can be used as an alternative to a referenced resource. Include at least givenName, surname, and organization.**
| ~~reasonCode~~ | ~~0..0~~ | ~~CodeableConcept~~ |
| ~~reasonReference~~ | ~~0..0~~ | ~~Reference(Condition \ Observation \ DiagnosticReport \ DocumentReference)~~
| payload | 0..* | BackboneElement |
| payload.content[x] | 1..1 |
| payload.content[x].contentString | | string |
| `payload.content[x].contentAttachment` | | `Attachment` | `Decide if referencing a DocumentReference`
| ~~payload.content[x].contentReference~~ | | ~~Reference(Any)~~ |
| ~~note~~ | ~~0..0~~ | ~~Annotation~~ |