Known Dosage Structure Limitations
The following edge cases have been identified which are not sufficiently supported as coded structures within the R4 Dosage
structure. Until such a time when the R4 FHIR UK Core profiles are updated with either an extension or an internationally agreed change to the HL7 FHIR standard, a work-around is required.
1. Combination pack instructions
It is common practice to provide a dosage instruction for the combination pack “Migraleve tablets” with instructions for when to take the pink tablets and when to take the yellow tablets. With the current R4 Dosage structure, these instructions would have to be conveyed in free-text using the Dosage.patientInstructions.
In secondary care the individual components of the pack should be prescribed as separate items.
In primary care the combination pack is prescribed and therefore the medication request must reference the medication resource for the dm+d code of the combination product. The medication request then links to 2 dosing instructions which describe how each tablet should be taken.
See an example for Migraleve tablets.
2. Maximum dose per course
A maximum dose for three scenarios is supported within the R4 Dosage structure;
maxDosePerPeriod
- define a maximum dose over a given period of timemaxDosePerAdministration
- defines a maximum dose per administrationmaxDosePerLifetime
- defines the maximum dose during the lifetime of the patient
Not currently supported is how to define a maximum dose per course.
With the current R4 Dosage structure, a maximum dose per course would have to be conveyed in free-text using the Dosage.additionalInstruction
.
See an example for Colchicine tablets.
3. Periods of no medicine administration
As part of a MedicationRequest
There is no clear way in the R4 Dosage structure to define a period of no medicine administration within a MedicationRequest
resource.
The example given above for Colchicine tablets also includes an instruction for a period of time where medication should not be taken;
Do not repeat course for 3 days
Another clinical example would be for a Lidocaine medicated plaster. A typical written dosage instruction would be;
Apply 2 patches once daily to the affected area for up to 12 hours, followed by a 12-hour plaster-free period; to be applied to intact, dry, non-hairy, non-irritated skin.
The R4 Dosage structure cannot describe, in a machine readable way, the clauses "Do not repeat course for 3 days" and “followed by a 12-hour plaster-free period”.
MedicationRequest
use a free-text Dosage.additionalInstruction
Note: This problem is not applicable to the
MedicationDispense
resource.
As part of a MedicationAdministration or MedicationStatement
Within medicine administration records it is important, for certain medication, to clearly state periods where no medication was administered.
Two approaches are possible within the FHIR standard.
The first is to infer periods of no administration where there are no MedicationAdministration
or MedicationStatement
records that cover a given period of time. This approach is not recommended as not all records will be defined using an effectivePeriod.start
and effectivePeriod.end
date/time range. Some records will just be recorded with an effectiveDateTime
. Depending on how specific the dosage instruction has been defined, the expected administration period could be calculated. However this approach is based on assumptions, not facts.
The second, and preferred solution, is to record a zero quantity and a status of "on-hold" within a MedicationAdministration
or MedicationStatement
record for a medicine for a specific effectivePeriod
. This example is an administration record of a 1-hour pause during a Heperain infusion. The rateQuantity
is "0" (zero). The status
is "on-hold".
<MedicationAdministration xmlns="http://hl7.org/fhir"> <id value="f8fced11-53c3-47c3-92a8-ff49dc1b0e0b" /> <meta> <profile value="https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationAdministration" /> </meta> <status value="on-hold" /> <medicationCodeableConcept> <coding> <system value="https://dmd.nhs.uk" /> <code value="36054511000001107" /> <display value="Heparin sodium 20,000units/20ml solution for injection ampoules" /> </coding> </medicationCodeableConcept> <subject> <reference value="Patient/UKCore-Patient-RachelSmith-Example" /> </subject> <effectivePeriod> <start value="2021-03-26T16:30:00+00:00" /> <end value="2021-03-26T17:30:00+00:00" /> </effectivePeriod> <request> <reference value="MedicationRequest/203c8dce-aaec-4349-9335-a572ad48c553" /> </request> <dosage> <route> <coding> <system value="https://dmd.nhs.uk" /> <code value="47625008" /> <display value="Intravenous" /> </coding> </route> <method> <coding> <system value="http://snomed.info/sct" /> <code value="261754007" /> <display value="Continuous infusion" /> </coding> </method> <rateQuantity> <value value="0" /> <unit value="millilitre per hour" /> <system value="http://unitsofmeasure.org" /> <code value="mL/h" /> </rateQuantity> </dosage> </MedicationAdministration>
{ "resourceType": "MedicationAdministration", "id": "f8fced11-53c3-47c3-92a8-ff49dc1b0e0b", "meta": { "profile": [ "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationAdministration" ] }, "status": "on-hold", "medicationCodeableConcept": { "coding": [ { "system": "https://dmd.nhs.uk", "code": "36054511000001107", "display": "Heparin sodium 20,000units/20ml solution for injection ampoules" } ] }, "subject": { "reference": "Patient/UKCore-Patient-RachelSmith-Example" }, "effectivePeriod": { "start": "2021-03-26T16:30:00+00:00", "end": "2021-03-26T17:30:00+00:00" }, "request": { "reference": "MedicationRequest/203c8dce-aaec-4349-9335-a572ad48c553" }, "dosage": { "method": { "coding": [ { "system": "http://snomed.info/sct", "code": "261754007", "display": "Continuous infusion" } ] }, "route": { "coding": [ { "system": "https://dmd.nhs.uk", "code": "47625008", "display": "Intravenous" } ] }, "rateQuantity": { "value": 0, "unit": "millilitre per hour", "system": "http://unitsofmeasure.org", "code": "mL/h" } } }
MedicationAdministration.id[0] | f8fced11-53c3-47c3-92a8-ff49dc1b0e0b |
MedicationAdministration.meta[0].profile[0] | https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationAdministration |
MedicationAdministration.status[0] | on-hold |
MedicationAdministration.medicationCodeableConcept[0].coding[0].system[0] | https://dmd.nhs.uk |
MedicationAdministration.medicationCodeableConcept[0].coding[0].code[0] | 36054511000001107 |
MedicationAdministration.medicationCodeableConcept[0].coding[0].display[0] | Heparin sodium 20,000units/20ml solution for injection ampoules |
MedicationAdministration.subject[0].reference[0] | Patient/UKCore-Patient-RachelSmith-Example |
MedicationAdministration.effectivePeriod[0].start[0] | 2021-03-26T16:30:00+00:00 |
MedicationAdministration.effectivePeriod[0].end[0] | 2021-03-26T17:30:00+00:00 |
MedicationAdministration.request[0].reference[0] | MedicationRequest/203c8dce-aaec-4349-9335-a572ad48c553 |
MedicationAdministration.dosage[0].method[0].coding[0].system[0] | http://snomed.info/sct |
MedicationAdministration.dosage[0].method[0].coding[0].code[0] | 261754007 |
MedicationAdministration.dosage[0].method[0].coding[0].display[0] | Continuous infusion |
MedicationAdministration.dosage[0].route[0].coding[0].system[0] | https://dmd.nhs.uk |
MedicationAdministration.dosage[0].route[0].coding[0].code[0] | 47625008 |
MedicationAdministration.dosage[0].route[0].coding[0].display[0] | Intravenous |
MedicationAdministration.dosage[0].rateQuantity[0].value[0] | 0 |
MedicationAdministration.dosage[0].rateQuantity[0].unit[0] | millilitre per hour |
MedicationAdministration.dosage[0].rateQuantity[0].system[0] | http://unitsofmeasure.org |
MedicationAdministration.dosage[0].rateQuantity[0].code[0] | mL/h |
MedicationAdministration |
id : f8fced11-53c3-47c3-92a8-ff49dc1b0e0b |
meta |
profile : https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationAdministration |
status : on-hold |
medication |
coding |
system : https://dmd.nhs.uk |
code : 36054511000001107 |
display : Heparin sodium 20,000units/20ml solution for injection ampoules |
subject |
reference : Patient/UKCore-Patient-RachelSmith-Example |
effective |
start : 2021-03-26T16:30:00+00:00 |
end : 2021-03-26T17:30:00+00:00 |
request |
reference : MedicationRequest/203c8dce-aaec-4349-9335-a572ad48c553 |
dosage |
route |
coding |
system : https://dmd.nhs.uk |
code : 47625008 |
display : Intravenous |
method |
coding |
system : http://snomed.info/sct |
code : 261754007 |
display : Continuous infusion |
rate |
value : 0 |
unit : millilitre per hour |
system : http://unitsofmeasure.org |
code : mL/h |
4. Instructions for a specific device
In some cases, with a dose-based instruction, the type of device to use for the administration of the medication needs to be specified.
For example, Salbutamol medication may be inhaled using one of four types of device;
- Nebuliser
- Metered dose inhaler
- Breath actuated inhaler
- Dry powder inhaler
Whilst each of these devices is a coded term within SNOMED-CT, it would be potentially confusing to add a coded device as an additional instruction. None of the R4 profiled resources referenced within this guidance contain a structure where a coded device can be specified as part of the medication request.
Until supported via another means, where a specific type of device needs to be specified, either prescribe using a product-based dm+d concept (e.g. VMP or AMP) or specify the request for any type of device to be used as free-text within Dosage.additionalInstruction
.
5. RESOLVED: Specifying a Trade Family / Brand
Medication
resource includes the extension Extension-UKCore-MedicationTradeFamily
to convey a Trade Family concept.
This is now only a limitation when using a FHIR implementation not derived from UKCore.