Dose syntax implementation guidance for FHIR STU3

This guidance is under active development by NHS Digital and content may be added or updated on a regular basis.

Element: sequence

Multi-sequence dosage instructions.

A multi-sequence would be required where a dosage instruction changes over a given time schedule, where a dosage instruction includes optional follow-up doses or where a concurrent dosage instruction is required for the same medication at a different dose.

Examples below include Prednisolone to treat Bell’s palsy where a dose starts at 60 mg per day for a period of time then reduces by 10 mg per day. This would be described as a sequential dosage instruction. A concurrent dosage example is provided to describe a different dose in the morning to that at midday.


Sequential Instructions

Where the value of sequence is an incremental integer it defines a sequential instruction.

Example use of the FHIR STU3 Dosage using multiple sequential sequences

<!-- Example use of the FHIR STU3 Dosage using multiple sequential sequences -->
<!-- Prednisolone, 60mg daily for 4 days, then 50mg next day, then 40mg, then 30mg, then 20mg, then 10mg, then stop -->
<MedicationRequest xmlns="http://hl7.org/fhir">
<id value="43955772-3136-49be-829e-ac04b56894d5" />
<Medication>
<id value="med1" />
<system value="http://snomed.info/sct" />
<code value="52388000" />
<display value="Prednisolone" />
</coding>
</code>
</Medication>
</contained>
<status value="active" />
<intent value="order" />
<reference value="#med1" />
</medicationReference>
<system value="https://fhir.nhs.uk/Id/nhs-number" />
<value value="9999999999" />
</identifier>
</subject>
<sequence value="1" />
<value value="4" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="60" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
<sequence value="2" />
<value value="1" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="50" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
<sequence value="3" />
<value value="1" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="40" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
<sequence value="4" />
<value value="1" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="30" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
<sequence value="5" />
<value value="1" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="20" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
<sequence value="6" />
<system value="http://snomed.info/sct" />
<code value="422327006" />
<display value="Then stop" />
</coding>
</additionalInstruction>
<value value="1" />
<unit value="day" />
<system value="http://unitsofmeasure.org" />
<code value="d" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
</repeat>
</timing>
<value value="10" />
<unit value="milligram" />
<system value="http://unitsofmeasure.org" />
<code value="mg" />
</doseQuantity>
</dosageInstruction>
</MedicationRequest>
{
"resourceType": "MedicationRequest",
"id": "43955772-3136-49be-829e-ac04b56894d5",
{
"resourceType": "Medication",
"id": "med1",
"code": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "52388000",
"display": "Prednisolone"
}
]
}
}
],
"status": "active",
"intent": "order",
"reference": "#med1"
},
"subject": {
"system": "https://fhir.nhs.uk/Id/nhs-number",
"value": "9999999999"
}
},
{
"sequence": 1,
"timing": {
"repeat": {
"value": 4,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 60,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
},
{
"sequence": 2,
"timing": {
"repeat": {
"value": 1,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 50,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
},
{
"sequence": 3,
"timing": {
"repeat": {
"value": 1,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 40,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
},
{
"sequence": 4,
"timing": {
"repeat": {
"value": 1,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 30,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
},
{
"sequence": 5,
"timing": {
"repeat": {
"value": 1,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 20,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
},
{
"sequence": 6,
{
"coding": [
{
"system": "http://snomed.info/sct",
"code": "422327006",
"display": "Then stop"
}
]
}
],
"timing": {
"repeat": {
"value": 1,
"unit": "day",
"system": "http://unitsofmeasure.org",
"code": "d"
},
"frequency": 1,
"period": 1,
"periodUnit": "d"
}
},
"value": 10,
"unit": "milligram",
"system": "http://unitsofmeasure.org",
"code": "mg"
}
}
]
}
MedicationRequest.id[0]43955772-3136-49be-829e-ac04b56894d5
MedicationRequest.contained[0].id[0]med1
MedicationRequest.contained[0].code[0].coding[0].system[0]http://snomed.info/sct
MedicationRequest.contained[0].code[0].coding[0].code[0]52388000
MedicationRequest.contained[0].code[0].coding[0].display[0]Prednisolone
MedicationRequest.status[0]active
MedicationRequest.intent[0]order
MedicationRequest.medication[0].reference[0]#med1
MedicationRequest.subject[0].identifier[0].system[0]https://fhir.nhs.uk/Id/nhs-number
MedicationRequest.subject[0].identifier[0].value[0]9999999999
MedicationRequest.dosageInstruction[0].sequence[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].value[0]4
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[0].dose[0].value[0]60
MedicationRequest.dosageInstruction[0].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[0].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[0].dose[0].code[0]mg
MedicationRequest.dosageInstruction[1].sequence[0]2
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[1].dose[0].value[0]50
MedicationRequest.dosageInstruction[1].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[1].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[1].dose[0].code[0]mg
MedicationRequest.dosageInstruction[2].sequence[0]3
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[2].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[2].dose[0].value[0]40
MedicationRequest.dosageInstruction[2].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[2].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[2].dose[0].code[0]mg
MedicationRequest.dosageInstruction[3].sequence[0]4
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[3].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[3].dose[0].value[0]30
MedicationRequest.dosageInstruction[3].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[3].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[3].dose[0].code[0]mg
MedicationRequest.dosageInstruction[4].sequence[0]5
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[4].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[4].dose[0].value[0]20
MedicationRequest.dosageInstruction[4].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[4].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[4].dose[0].code[0]mg
MedicationRequest.dosageInstruction[5].sequence[0]6
MedicationRequest.dosageInstruction[5].additionalInstruction[0].coding[0].system[0]http://snomed.info/sct
MedicationRequest.dosageInstruction[5].additionalInstruction[0].coding[0].code[0]422327006
MedicationRequest.dosageInstruction[5].additionalInstruction[0].coding[0].display[0]Then stop
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].bounds[0].unit[0]day
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].bounds[0].code[0]d
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[5].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[5].dose[0].value[0]10
MedicationRequest.dosageInstruction[5].dose[0].unit[0]milligram
MedicationRequest.dosageInstruction[5].dose[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[5].dose[0].code[0]mg
MedicationRequest

Concurrent Instructions

Where the same integer value of sequence is defines it means a concurrent instruction.

<!-- Example use of the FHIR STU3 Dosage using multiple parallel sequences -->
<!-- Furosemide 40mg tablets, take two in the morning and one at midday for one week -->
<!-- Using a contained Medication resource -->
<MedicationRequest xmlns="http://hl7.org/fhir">
<id value="79159c4f-13c4-457a-8962-67fa22432c15" />
<Medication>
<id value="med1" />
<system value="http://snomed.info/sct" />
<code value="317972000" />
<display value="Furosemide 40mg tablets" />
</coding>
</code>
</Medication>
</contained>
<status value="active" />
<intent value="order" />
<reference value="#med1" />
</medicationReference>
<system value="https://fhir.nhs.uk/Id/nhs-number" />
<value value="9999999999" />
</identifier>
</subject>
<sequence value="1" />
<value value="1" />
<unit value="week" />
<system value="http://unitsofmeasure.org" />
<code value="wk" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
<when value="MORN" />
</repeat>
</timing>
<value value="2" />
<unit value="tablet" />
<system value="http://snomed.info/sct" />
<code value="428673006" />
</doseQuantity>
</dosageInstruction>
<sequence value="1" />
<value value="1" />
<unit value="week" />
<system value="http://unitsofmeasure.org" />
<code value="wk" />
</boundsDuration>
<frequency value="1" />
<period value="1" />
<periodUnit value="d" />
<timeOfDay value="12:00:00" />
</repeat>
</timing>
<value value="1" />
<unit value="tablet" />
<system value="http://snomed.info/sct" />
<code value="428673006" />
</doseQuantity>
</dosageInstruction>
</MedicationRequest>
{
"resourceType": "MedicationRequest",
"id": "79159c4f-13c4-457a-8962-67fa22432c15",
{
"resourceType": "Medication",
"id": "med1",
"code": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "317972000",
"display": "Furosemide 40mg tablets"
}
]
}
}
],
"status": "active",
"intent": "order",
"reference": "#med1"
},
"subject": {
"system": "https://fhir.nhs.uk/Id/nhs-number",
"value": "9999999999"
}
},
{
"sequence": 1,
"timing": {
"repeat": {
"value": 1,
"unit": "week",
"system": "http://unitsofmeasure.org",
"code": "wk"
},
"frequency": 1,
"period": 1,
"periodUnit": "d",
"when": [
"MORN"
]
}
},
"value": 2,
"unit": "tablet",
"system": "http://snomed.info/sct",
"code": "428673006"
}
},
{
"sequence": 1,
"timing": {
"repeat": {
"value": 1,
"unit": "week",
"system": "http://unitsofmeasure.org",
"code": "wk"
},
"frequency": 1,
"period": 1,
"periodUnit": "d",
"12:00:00"
]
}
},
"value": 1,
"unit": "tablet",
"system": "http://snomed.info/sct",
"code": "428673006"
}
}
]
}
MedicationRequest.id[0]79159c4f-13c4-457a-8962-67fa22432c15
MedicationRequest.contained[0].id[0]med1
MedicationRequest.contained[0].code[0].coding[0].system[0]http://snomed.info/sct
MedicationRequest.contained[0].code[0].coding[0].code[0]317972000
MedicationRequest.contained[0].code[0].coding[0].display[0]Furosemide 40mg tablets
MedicationRequest.status[0]active
MedicationRequest.intent[0]order
MedicationRequest.medication[0].reference[0]#med1
MedicationRequest.subject[0].identifier[0].system[0]https://fhir.nhs.uk/Id/nhs-number
MedicationRequest.subject[0].identifier[0].value[0]9999999999
MedicationRequest.dosageInstruction[0].sequence[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].unit[0]week
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].bounds[0].code[0]wk
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[0].timing[0].repeat[0].when[0]MORN
MedicationRequest.dosageInstruction[0].dose[0].value[0]2
MedicationRequest.dosageInstruction[0].dose[0].unit[0]tablet
MedicationRequest.dosageInstruction[0].dose[0].system[0]http://snomed.info/sct
MedicationRequest.dosageInstruction[0].dose[0].code[0]428673006
MedicationRequest.dosageInstruction[1].sequence[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].value[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].unit[0]week
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].system[0]http://unitsofmeasure.org
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].bounds[0].code[0]wk
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].frequency[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].period[0]1
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].periodUnit[0]d
MedicationRequest.dosageInstruction[1].timing[0].repeat[0].timeOfDay[0]12:00:00
MedicationRequest.dosageInstruction[1].dose[0].value[0]1
MedicationRequest.dosageInstruction[1].dose[0].unit[0]tablet
MedicationRequest.dosageInstruction[1].dose[0].system[0]http://snomed.info/sct
MedicationRequest.dosageInstruction[1].dose[0].code[0]428673006
MedicationRequest
back to top