Introduction
The headings below list the elements of the MedicationStatement resource and describe how to populate and consume them.
MedicationStatement elements
id
Data type: Id |
Optionality: Mandatory | Cardinality: 1..1 |
The logical identifier of the MedicationStatement resource.
meta.profile
Data type: uri |
Optionality: Mandatory | Cardinality: 1..1 |
The MedicationStatement profile URL.
Fixed value https://fhir.nhs.uk/STU3/StructureDefinition/CareConnect-GPC-MedicationStatement-1
extension[lastIssueDate]
Data type: dateTime |
Optionality: Required | Cardinality: 0..1 |
When the medication was last issued.
extension[prescribingAgency]
Data type: CodeableConcept |
Optionality: Mandatory | Cardinality: 1..1 |
This details the care setting in which the medication was prescribed. Currently this will only detail if the medication was prescribed by the GP practice or by another organisation, however in the future this valueset could be built on to be more specific about where a medication was prescribed. For instance, if the patient was prescribed a medication by a hospital or bought a medication over the counter then this would be indicated here.
For repeat and repeat dispensed medications the value identifies the care setting where the medication plan (rather than any specific issue in the plan) was authorised.
identifier
Data type: Identifier |
Optionality: Mandatory | Cardinality: 1..* |
This is for business identifiers.
This is sliced to include a cross care setting identifier which MUST be populated. The codeSystem for this identifier is https://fhir.nhs.uk/Id/cross-care-setting-identifier
.
This MUST be a GUID.
Providing systems MUST ensure this GUID is globally unique and a persistent identifier (that is, it doesn’t change between requests and therefore stored with the source data).
Where consuming systems are integrating data from this resource to their local system, they MUST also persist this GUID at the same time.
basedOn
Data type: Reference |
Optionality: Mandatory | Cardinality: 1..1 |
Link to the MedicationRequest that this MedicationStatement
is based on.
Every MedicationStatement MUST be based on a MedicationRequest
with intent
set to plan
.
context
Data type: Reference(Encounter) |
Optionality: Required | Cardinality: 0..1 |
The Encounter
within which the medication was authorised.
As per base profile guidance.
status
Data type: code |
Optionality: Mandatory | Cardinality: 1..1 |
The status of the authorisation.
Use one of active
, completed
or stopped
:
active
represents an active authorisation - used for active repeat medicationsstopped
represents an authorisation which has been discontinued, cancelled or stoppedcomplete
represents an authorisation which has run its course
For repeat and repeat dispensed the status refers to the status of the plan (the entire cycle of prescriptions).
For acute the status refers to the status of the prescription issue.
medicationReference
Data type: Reference(Medication) |
Optionality: Mandatory | Cardinality: 1..1 |
The medication the authorisation is for.
The Medication
resource provides the coded representation of the medication.
effective
Data type: Period |
Optionality: Required | Cardinality: 0..1 |
Period.start
is MANDATORY. Where there is no defined start date this is populated with the recorded date.
Period.end
is REQUIRED. Where there is a defined expiry or end date or where the end date can be derived (for example - from the duration) the end date MUST be supplied.
For repeats and repeat dispensed this refers to the period of the plan (the entire cycle of prescriptions).
For acutes this refers to the period of the prescription issue.
dateAsserted
Data type: dateTime |
Optionality: Mandatory | Cardinality: 1..1 |
When this medication statement was believed true.
Unless there is a distinct user-modifiable availability date/time for the authorisation, this is the audit trail date/time for when the authorisation was entered.
subject
Data type: Reference(Patient) |
Optionality: Mandatory | Cardinality: 1..1 |
Who the medication is for- that is, to whom it will be administered.
Reference to patient.
taken
Data type: code |
Optionality: Mandatory | Cardinality: 1..1 |
Whether a medication was taken.
Providers MUST use a default value of unk
– unknown.
This item is mandatory in the base FHIR profile but GP systems do not record this detail therefore we have been forced to pick a default value and this information should not be used.
This element has been included in this section as providers MUST populate it. However, as the data should not be used it has also been included in the ‘Do not use’ section below.
reasonCode
Data type: CodeableConcept |
Optionality: Optional | Cardinality: 0..* |
The coded reason for authorising the medication.
reasonReference
Data type: Reference(Condition), Reference(Observation) |
Optionality: Optional | Cardinality: 0..* |
References the condition or observation that was the reason for this authorisation.
Unless there is a specific linkage in the context of medication, indirect linkages to be handled via Problem list.
note
Data type: Annotation |
Optionality: Required | Cardinality: 0..* |
All notes that are associated with this medication record.
All patient notes and prescriber notes at authorisation(plan) and issue(order) level MUST be included in this field. They MUST be concatenated and indicate the level the notes come from (for example, 1st Issue) and be prefixed with either ‘Patient Notes:’ or ‘Prescriber Notes:’ as appropriate.
dosage.text
Data type: String |
Optionality: Mandatory | Cardinality: 1..1 |
Complete dosage instructions as text.
In exceptional cases where for legacy data there is no dosage recorded in the system then this MUST be populated with the text ‘No information available’.
dosage.patientInstruction
Data type: String |
Optionality: Required | Cardinality: 0..1 |
Additional instructions for patient - that is, RHS of prescription label.
MedicationStatement elements not in use
The following elements SHALL NOT be populated:
meta.versionId
Data type: Id |
meta.lastUpdated
Data type: Instant |
partOf
Data type: Reference(MedicationAdministration, MedicationDispense, MedicationStatement, Procedure, Observation) |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
category
Data type: CodeableConcept |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
informationSource
Data type: Reference(Patient, Practitioner, RelatedPerson, Organization) |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
derivedFrom
Data type: Reference(Any) |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
taken
Data type: code |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
reasonNotTaken
Data type: CodeableConcept |
This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.
extension[ChangeSummary]
Data type: Complex Extension |
This is not in scope for this version of GP Connect.