Guidance for populating and consuming the MedicationStatement profile

Introduction

The headings below list the elements of the MedicationStatement profile 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 profile.

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

The date when the latest prescription under this plan was issued. This will not be populated where the Medication/Medical Device is Repeat Dispensed or Prescribed Elsewhere as these do not have issue information recorded in the GP system.

extension[prescribingAgency]

Data type: CodeableConcept Optionality: Mandatory Cardinality: 1..1

This details the care setting in which the medication or medical device was prescribed.

Currently this field will only support two coded entries, indicating whether the medication/medical device was prescribed by the GP practice or by another organisation. If the providing organisation has more details about the type of prescribing organisation (for example, that it was a dental practice or hospital), this MUST be included in the CodeableConcept.Text field.

In the future, the coded valueset will be built on to be more specific about where a medication/medical device 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 coded as well as in the text.

For repeat and repeat dispensed medications/medical devices, 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 MUST be populated with a globally unique and persistent identifier (that is, it doesn’t change between requests and therefore stored with the source data). This MUST be scoped by a provider specific namespace for the identifier.

Where consuming systems are integrating data from this resource to their local system, they MUST also persist this identifier 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/medical device was authorised.

As per base profile guidance.

status

Data type: code Optionality: Mandatory Cardinality: 1..1

The status of the authorisation. This MUST be the same as the related medicationRequest.status where intent is set to plan.

Use one of active, completed or stopped:

  • active represents an authorisation where all allowed orders have not been issued, e.g. an unissued acute or a repeat with outstanding issues.
  • stopped represents an authorisation which has been discontinued, cancelled or stopped.
  • completed represents an authorisation where all orders have been issued.

medicationReference

Data type: Reference(Medication) Optionality: Mandatory Cardinality: 1..1

The medication/medical device the authorisation is for.

The Medication profile provides the coded representation of the medication/medical device.

effective

Data type: Period Optionality: Mandatory Cardinality: 1..1

The period the medication or medical device is authorised under this medication/medical device plan. For items that are repeats and repeat dispensed this refers to the entire cycle of prescriptions made under the authorisation. For acutes, this refers to the period of the prescription issue.

Period.start is MANDATORY.

The date from which the medication or medical device is authorised under this plan.

Use one of the following dates in order of descending preference:

  • the authorised date as recorded in the patient record
    • for authorisation that were performed during a consultation this will be the date when the consultation took place
  • the date of the first issue under the medication/medical device plan
  • the date the medication/medical device plan was recorded onto the system (the audit date)

Period.end is REQUIRED.

The date when the authorisation under this plan ends.

Where the medication/medical device plan status is active, set to null. Otherwise, use one of the following dates in order of descending preference:

  • the end date recorded in the patient record
  • the end date of the final issue under the medication/medical device plan. This is the start date of the final issue plus the expected supply duration.
  • the date the plan was updated to ended
  • the Period.start date
    • this option should only occur where data has been lost (for example, during the record transfer between two systems) and is used to ensure that an ended plan will always have an end date

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.

informationSource

Data type: Reference(Patient, Practitioner, RelatedPerson, Organization) Optionality: Optional Cardinality: 0..1

Person or organization that provided the information about the taking of this medication

subject

Data type: Reference(Patient) Optionality: Mandatory Cardinality: 1..1

Who the medication/medical device 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/medical device 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.

note

Data type: Annotation Optionality: Required Cardinality: 0..*

All notes that are associated with this medication/medical device 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.

Any other relevant medication notes, such as notes relating to medications which were not prescribed by the practice (over the counter, hospital prescribed or similar), MUST be indicated by prefixing the note with ‘Additional Information: ‘.

dosage.text

Data type: String Optionality: Mandatory Cardinality: 1..1

Complete dosage instructions as text.

Where the dosage instructions have been changed during the lifetime of the Medication/Medical Device plan append the following warning text to end of the dosage instructions:

  • “WARNING – Dosage has changed during the effective period. The latest change was made on DD-Mmm-YYYY”, where DD-Mmm-YYYY is the date the dosage was last changed.

In exceptional cases where for legacy data, over-the-counter treatments or hospital treatments there is no dosage recorded in the system then this MUST be populated with the text ‘No information available’ or ‘Not recorded’ as most appropriate to the circumstance.

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

extension[ChangeSummary]

Data type: Complex Extension

This is not in scope for this version of GP Connect.

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.

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.

reasonNotTaken

Data type: CodeableConcept

This is not in scope for this version of Care Connect and therefore not available for use in GP Connect.

reasonCode

Data type: CodeableConcept

This information is available via linking to a Problem record.

reasonReference

Data type: Reference(Condition), Reference(Observation)

This information is available via linking to a Problem record.