This page is part of the FHIR Specification (v1.6.0: STU 3 Ballot 4). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions
Detailed Descriptions for the elements in the MedicationOrder resource.
MedicationOrder | |
Definition | An order for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called "MedicationOrder" rather than "MedicationPrescription" to generalize the use across inpatient and outpatient settings as well as for care plans, etc. |
Control | 1..1 |
Alternate Names | Prescription |
Comments | The WG will be updating the MedicationOrder resource to adjust each affected resource to align with the workflow pattern (see workflow.html). MedicationOrder will be renamed to MedicationRequest as part of these changes. |
MedicationOrder.identifier | |
Definition | External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an entire workflow process where records have to be tracked through an entire system. |
Note | This is a business identifer, not a resource identifier (see discussion) |
Control | 0..* |
Type | Identifier |
MedicationOrder.status | |
Definition | A code specifying the state of the order. Generally this will be active or completed state. |
Control | 0..1 |
Binding | MedicationOrderStatus: A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription. (Required) |
Type | code |
Is Modifier | true |
Summary | true |
MedicationOrder.medication[x] | |
Definition | Identifies the medication being administered. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications. |
Control | 1..1 |
Binding | SNOMED CT Medication Codes: A coded concept identifying substance or product that can be ordered. (Example) |
Type | CodeableConcept|Reference(Medication) |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Summary | true |
Comments | If only a code is specified, then it needs to be a code for a specific product. If more information is required, then the use of the medication resource is recommended. Note: do not use Medication.name to describe the prescribed medication. When the only available information is a text description of the medication, Medication.code.text should be used. |
MedicationOrder.patient | |
Definition | A link to a resource representing the person to whom the medication will be given. |
Control | 0..1 |
Type | Reference(Patient) |
Summary | true |
Comments | SubstanceAdministration->subject->Patient. |
MedicationOrder.encounter | |
Definition | A link to a resource that identifies the particular occurrence of contact between patient and health care provider. |
Control | 0..1 |
Type | Reference(Encounter) |
Comments | SubstanceAdministration->component->EncounterEvent. |
MedicationOrder.dateWritten | |
Definition | The date (and perhaps time) when the prescription was initially written. |
Control | 0..1 |
Type | dateTime |
Summary | true |
MedicationOrder.prescriber | |
Definition | The healthcare professional responsible for authorizing the initial prescription. |
Control | 0..1 |
Type | Reference(Practitioner) |
Summary | true |
MedicationOrder.reasonCode | |
Definition | Can be the reason or the indication for writing the prescription. |
Control | 0..* |
Binding | Condition/Problem/Diagnosis Codes: A coded concept indicating why the medication was ordered. (Example) |
Type | CodeableConcept |
Comments | This could be a diagnosis code. If a full condition record exists or additional detail is needed, use reasonReference. |
MedicationOrder.reasonReference | |
Definition | Condition that supports why the prescription is being written. |
Control | 0..* |
Type | Reference(Condition) |
Comments | This is a reference to a condition that is the reason for the medication order. If only a code exists, use reasonCode. |
MedicationOrder.note | |
Definition | Extra information about the prescription that could not be conveyed by the other attributes. |
Control | 0..* |
Type | Annotation |
MedicationOrder.category | |
Definition | Indicates where type of medication order and where the medication is expected to be consumed or administered. |
Control | 0..1 |
Binding | MedicationOrderCategory: A coded concept identifying where the medication ordered is expected to be consumed or administered (Example) |
Type | code |
MedicationOrder.dosageInstruction | |
Definition | Indicates how the medication is to be used by the patient. |
Control | 0..* |
Comments | When the dose or rate is intended to change over the entire administration period, e.g. Tapering dose prescriptions, multiple instances of dosage instructions will need to be supplied to convey the different doses/rates. Another common example in institutional settings is 'titration' of an IV medication dose to maintain a specific stated hemodynamic value or range e.g. drug x to be administered to maintain AM (arterial mean) greater than 65. |
MedicationOrder.dosageInstruction.text | |
Definition | Free text dosage instructions can be used for cases where the instructions are too complex to code. The content of this attribute does not include the name or description of the medication. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. It is expected that the text instructions will always be populated. If the dosage.timing attribute is also populated, then the dosage.text should reflect the same information as the timing. |
Control | 0..1 |
Type | string |
MedicationOrder.dosageInstruction.additionalInstructions | |
Definition | Additional instructions such as "Swallow with plenty of water" which may or may not be coded. |
Control | 0..* |
Binding | SNOMED CT Additional Dosage Instructions: A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". (Example) |
Type | CodeableConcept |
MedicationOrder.dosageInstruction.timing | |
Definition | The timing schedule for giving the medication to the patient. The Schedule data type allows many different expressions. For example: "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013". Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period. |
Control | 0..1 |
Type | Timing |
Comments | This attribute may not always be populated while the DosageInstruction.text is expected to be populated. If both are populated, then the DosageInstruction.text should reflect the content of the Dosage.timing. |
MedicationOrder.dosageInstruction.asNeeded[x] | |
Definition | Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option), or it indicates the precondition for taking the Medication (CodeableConcept). |
Control | 0..1 |
Binding | SNOMED CT Medication As Needed Reason Codes: A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc. (Example) |
Type | boolean|CodeableConcept |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Comments | Specifically if 'boolean' datatype is selected, then the following logic applies: If set to True, this indicates that the medication is only taken when needed, within the specified schedule. |
MedicationOrder.dosageInstruction.site[x] | |
Definition | A coded specification of the anatomic site where the medication first enters the body. |
Control | 0..1 |
Binding | SNOMED CT Anatomical Structure for Administration Site Codes: A coded concept describing the site location the medicine enters into or onto the body. (Example) |
Type | CodeableConcept|Reference(BodySite) |
[x] Note | See Choice of Data Types for further information about how to use [x] |
MedicationOrder.dosageInstruction.route | |
Definition | A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient's body. |
Control | 0..1 |
Binding | SNOMED CT Route Codes: A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. (Example) |
Type | CodeableConcept |
MedicationOrder.dosageInstruction.method | |
Definition | A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. For examples, Slow Push; Deep IV. |
Control | 0..1 |
Binding | SNOMED CT Administration Method Codes: A coded concept describing the technique by which the medicine is administered. (Example) |
Type | CodeableConcept |
Comments | Terminologies used often pre-coordinate this term with the route and or form of administration. |
MedicationOrder.dosageInstruction.dose[x] | |
Definition | The amount of therapeutic or other substance given at one administration event. |
Control | 0..1 |
Type | Range|SimpleQuantity |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Comments | Note that this specifies the quantity of the specified medication, not the quantity for each active ingredient(s). Each ingredient amount can be communicated in the Medication resource. For example, if one wants to communicate that a tablet was 375 mg, where the dose was one tablet, you can use the Medication resource to document that the tablet was comprised of 375 mg of drug XYZ. Alternatively if the dose was 375 mg, then you may only need to use the Medication resource to indicate this was a tablet. If the example were an IV such as dopamine and you wanted to communicate that 400mg of dopamine was mixed in 500 ml of some IV solution, then this would all be communicated in the Medication resource. If the administration is not intended to be instantaneous (rate is present or timing has a duration), this can be specified to convey the total amount to be administered over the period of time as indicated by the schedule e.g. 500 ml in dose, with timing used to convey that this should be done over 4 hours. |
MedicationOrder.dosageInstruction.maxDosePerPeriod | |
Definition | The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. For example, 1000mg in 24 hours. |
Control | 0..1 |
Type | Ratio |
Comments | This is intended for use as an adjunct to the dosage when there is an upper cap. For example "2 tablets every 4 hours to a maximum of 8/day". |
MedicationOrder.dosageInstruction.maxDosePerAdministration | |
Definition | The maximum total quantity of a therapeutic substance that may be administered to a subject per administration. |
Control | 0..1 |
Type | SimpleQuantity |
Comments | This is intended for use as an adjunct to the dosage when there is an upper cap. For example, a body surface area related dose with a maximum amount, such as 1.5 mg/m2 (maximum 2 mg) IV over 5 – 10 minutes would have doseQuantity of 1.5 mg/m2 and maxDosePerAdministration of 2 mg. |
MedicationOrder.dosageInstruction.maxDosePerLifetime | |
Definition | The maximum total quantity of a therapeutic substance that may be administered per lifetime of the subject. |
Control | 0..1 |
Type | SimpleQuantity |
MedicationOrder.dosageInstruction.rate[x] | |
Definition | Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period. |
Control | 0..1 |
Type | Ratio|Range|SimpleQuantity |
[x] Note | See Choice of Data Types for further information about how to use [x] |
Comments | It is possible to supply both a rate and a doseQuantity to provide full details about how the medication is to be administered and supplied. If the rate is intended to change over time, depending on local rules/regulations, each change should be captured as a new version of the MedicationOrder with an updated rate, or captured with a new MedicationOrder with the new rate. |
MedicationOrder.dispenseRequest | |
Definition | Indicates the specific details for the dispense or medication supply part of a medication order (also known as a Medication Prescription). Note that this information is NOT always sent with the order. There may be in some settings (e.g. hospitals) institutional or system support for completing the dispense details in the pharmacy department. |
Control | 0..1 |
MedicationOrder.dispenseRequest.validityPeriod | |
Definition | This indicates the validity period of a prescription (stale dating the Prescription). |
Control | 0..1 |
Type | Period |
Requirements | Indicates when the Prescription becomes valid, and when it ceases to be a dispensable Prescription. |
Comments | It reflects the prescriber perspective for the validity of the prescription. Dispenses must not be made against the prescription outside of this period. The lower-bound of the Dispensing Window signifies the earliest date that the prescription can be filled for the first time. If an upper-bound is not specified then the Prescription is open-ended or will default to a stale-date based on regulations. |
MedicationOrder.dispenseRequest.numberOfRepeatsAllowed | |
Definition | An integer indicating the number of times, in addition to the original dispense, (aka refills or repeats) that the patient can receive the prescribed medication. Usage Notes: This integer does NOT include the original order dispense. This means that if an order indicates dispense 30 tablets plus "3 repeats", then the order can be dispensed a total of 4 times and the patient can receive a total of 120 tablets. |
Control | 0..1 |
Type | positiveInt |
Comments | If displaying "number of authorized fills", add 1 to this number. |
MedicationOrder.dispenseRequest.quantity | |
Definition | The amount that is to be dispensed for one fill. |
Control | 0..1 |
Type | SimpleQuantity |
MedicationOrder.dispenseRequest.expectedSupplyDuration | |
Definition | Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last. |
Control | 0..1 |
Type | Duration |
Comments | In some situations, this attribute may be used instead of quantity to identify the amount supplied by how long it is expected to last, rather than the physical quantity issued, e.g. 90 days supply of medication (based on an ordered dosage) When possible, it is always better to specify quantity, as this tends to be more precise. expectedSupplyDuration will always be an estimate that can be influenced by external factors. |
MedicationOrder.substitution | |
Definition | Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done. |
Control | 0..1 |
MedicationOrder.substitution.allowed | |
Definition | True if the prescriber allows a different drug to be dispensed from what was prescribed. |
Control | 1..1 |
Type | boolean |
MedicationOrder.substitution.reason | |
Definition | Indicates the reason for the substitution, or why substitution must or must not be performed. |
Control | 0..1 |
Binding | SubstanceAdminSubstitutionReason: A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. (Example) |
Type | CodeableConcept |
MedicationOrder.priorPrescription | |
Definition | A link to a resource representing an earlier order related order or prescription. |
Control | 0..1 |
Type | Reference(MedicationOrder) |
MedicationOrder.eventHistory | |
Definition | A summary of the events of interest that have occurred as the request is processed; e.g. when the order was verified or when it was completed. |
Control | 0..* |
Comments | This is not the same as an audit trail. It is a view of the important things that happened in the past. Typically, there would only be one entry for any given status, and systems may not record all the status events. |
MedicationOrder.eventHistory.status | |
Definition | The status for the event. |
Control | 1..1 |
Binding | MedicationOrderStatus: A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription. (Required) |
Type | code |
MedicationOrder.eventHistory.action | |
Definition | The action that was taken (e.g. verify, discontinue). |
Control | 0..1 |
Binding | MedicationOrderAction: A coded concept describing an action taken on a medication order. |
Type | CodeableConcept |
MedicationOrder.eventHistory.dateTime | |
Definition | The date/time at which the event occurred. |
Control | 1..1 |
Type | dateTime |
MedicationOrder.eventHistory.actor | |
Definition | The person responsible for taking the action. |
Control | 0..1 |
Type | Reference(Practitioner) |
MedicationOrder.eventHistory.reason | |
Definition | The reason why the action was taken. |
Control | 0..1 |
Binding | MedicationOrderActionReason: A coded concept describing the reason for an action taken on a medication order. |
Type | CodeableConcept |