Release 4B R5 Final QA

This page is part of the FHIR Specification (v4.3.0: R4B (v5.0.0-draft-final: Final QA Preview for R5 - STU see ballot notes ). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

11.1 Resource MedicationRequest - Content

Pharmacy icon Work Group Maturity Level : 3   Trial Use Security Category : Patient Compartments : Encounter , Patient , Practitioner

An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called "MedicationRequest" rather than "MedicationPrescription" or "MedicationOrder" to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.

This resource covers all type of orders for medications for a patient. This includes inpatient medication orders as well as community orders (whether filled by the prescriber or by a pharmacy). It also includes orders for over-the-counter medications (e.g. Aspirin), total parenteral nutrition and diet/ vitamin supplements. It may be used to support the order of medication-related devices e.g., prefilled syringes such as patient-controlled analgesia (PCA) syringes, or syringes used to administer other types of medications. e.g., insulin, narcotics.

This resource would not be used when ordering a device(s) that may have a medication coating e.g. heparin coated stints, or similar types of devices. These types of devices would be ordered using the Device Request or the SupplyRequest resources.

It is not intended for use in prescribing particular diets, or for ordering non-medication-related items (eyeglasses, supplies, etc.). In addition, the MedicationRequest may be used to report orders/request from external systems that have been reported for informational purposes and are not authoritative and are not expected to be acted upon (e.g. dispensed or administered).

The MedicationRequest resource is a "request" resource from a FHIR workflow perspective - see Workflow Request.

The MedicationRequest resource allows requesting only a single medication. If a workflow requires requesting multiple items simultaneously, this is done using multiple instances of this resource. These instances can be linked in different ways, depending on the needs of the workflow. For guidance, refer to the Request pattern

The MedicationRequest resource is used to request or order medication for a subject. It may also be used to report a medication request or order from one organization or source to another. When requesting supplies or devices when there is a patient focus or instructions regarding their use, SupplyRequest or DeviceRequest should be used instead. When reporting on the usage of a medication by a patient, the MedicationStatement t resource should be used.

The Medication domain includes a number of related resources

MedicationRequest An order for both supply of the medication and the instructions for administration of the medicine to a patient.
MedicationDispense Provision of a supply of a medication with the intention that it is subsequently consumed by a patient (usually in response to a prescription). prescription or order or request).
MedicationAdministration When a patient actually consumes a medicine, or it is otherwise administered to them
MedicationStatement This is a record of medication being taken by a patient, or that the medication has been given to a patient where the record is the result of a report from the patient, or another clinician. A medication statement is not a part of the prescribe->dispense->administer sequence but is a report that such a sequence (or at least a part of it) did take place resulting in a belief that the patient has received a particular medication.
This resource is referenced by

Structure

Σ Σ Σ Σ Σ How
Name Flags Card. Type Description & Constraints doco
. . MedicationRequest TU DomainResource Ordering of medication for patient or group

Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier External ids for this request

. . status . basedOn Σ 0..* Reference ( CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation ) A plan or request that is fulfilled in whole or in part by this medication request

... priorPrescription 0..1 Reference ( MedicationRequest ) Reference to an order/prescription that is being replaced by this MedicationRequest
... groupIdentifier Σ 0..1 Identifier Composite request this is part of
... status ?! Σ 1..1 code active | on-hold | cancelled ended | stopped | completed | entered-in-error cancelled | stopped entered-in-error | draft | unknown
Binding: medicationrequest Status ( Required )
. . . statusReason 0..1 CodeableConcept Reason for current status
Binding: medicationRequest Status Reason Codes ( Example )
. . . statusChanged 0..1 dateTime When the status was changed
. . . intent ?! Σ 1..1 code proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent ( Required )
. . . category 0..* CodeableConcept Type Grouping or category of medication usage request
Binding: medicationRequest Category Administration Location Codes ( Example )

. . . priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority ( Required )
. . . doNotPerform ?! Σ 0..1 boolean True if request patient is prohibiting action to stop taking or not to start taking the medication
. . reported[x] . medication Σ 0..1 Reported rather than primary record reportedBoolean boolean reportedReference 1..1 Reference CodeableReference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization Medication ) medication[x] Σ 1..1 Medication to be taken
Binding: SNOMED CT Medication Codes ( Example )
. . medicationCodeableConcept CodeableConcept . subject medicationReference Σ 1..1 Reference ( Medication Patient | Group ) Individual or group for whom the medication has been requested
. . . subject informationSource 1..1 0..* Reference ( Patient | Group Practitioner | PractitionerRole | RelatedPerson | Organization ) Who The person or group medication request organization who provided the information about this request, if the source is for someone other than the requestor

. . . encounter 0..1 Reference ( Encounter ) Encounter created as part of encounter/admission/stay
. . . supportingInformation 0..* Reference ( Any ) Information to support ordering fulfilling of the medication

. . . authoredOn Σ 0..1 dateTime When request was initially authored
. . . requester Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device ) Who/What requested the Request
. . performer . reported Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam boolean ) Intended performer of administration Reported rather than primary record
. . . performerType Σ 0..1 CodeableConcept Desired kind of performer of the medication administration
Procedure Binding: Medication Intended Performer Role Codes ( Example Extensible )
. . . recorder performer 0..1 0..* Reference ( Practitioner | PractitionerRole | Organization | Patient | DeviceDefinition | RelatedPerson | CareTeam | HealthcareService ) Person who entered the request Intended performer of administration

. . reasonCode . device 0..* CodeableConcept CodeableReference ( DeviceDefinition ) Reason or indication Intended type of device for ordering or not ordering the medication administration
Condition/Problem/Diagnosis Codes ( Example )
. . . reasonReference recorder 0..* 0..1 Reference ( Condition Practitioner | Observation PractitionerRole ) Condition or observation that supports why Person who entered the prescription is being written request
. . . instantiatesCanonical reason 0..* canonical CodeableReference () ( Condition | Observation ) Instantiates FHIR protocol Reason or definition indication for ordering or not ordering the medication
Binding: Condition/Problem/Diagnosis Codes ( Example )

. . instantiatesUri . courseOfTherapyType 0..* 0..1 uri CodeableConcept Instantiates external protocol or definition Overall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes ( Extensible )
. . . basedOn insurance 0..* Reference ( CarePlan | MedicationRequest | ServiceRequest Coverage | ImmunizationRecommendation ClaimResponse ) What request fulfills Associated insurance coverage

. . . groupIdentifier note 0..1 0..* Identifier Annotation Composite request this is part of Information about the prescription

. . courseOfTherapyType . renderedDosageInstruction 0..1 CodeableConcept markdown Overall pattern Full representation of medication administration the dosage instructions
medicationRequest Course of Therapy Codes ( Example )
. . insurance . effectiveDosePeriod 0..* 0..1 Reference ( Coverage | ClaimResponse Period ) Associated insurance coverage Period over which the medication is to be taken
. . . note dosageInstruction 0..* Annotation Information about the prescription dosageInstruction 0..* Dosage Specific instructions for how the medication should be taken

. . . dispenseRequest 0..1 BackboneElement Medication supply authorization
. . . . initialFill 0..1 BackboneElement First fill details
. . . . . quantity 0..1 SimpleQuantity First fill quantity
. . . . . duration 0..1 Duration First fill duration
. . . . dispenseInterval 0..1 Duration Minimum period of time between dispenses
. . . . validityPeriod 0..1 Period Time period supply is authorized for
. . . . numberOfRepeatsAllowed 0..1 unsignedInt Number of refills authorized
. . . . quantity 0..1 SimpleQuantity Amount of medication to supply per dispense
. . . . expectedSupplyDuration 0..1 Duration Number of days supply per dispense
. . . performer . dispenser 0..1 Reference ( Organization ) Intended performer of dispense
.... dispenserInstruction 0..* Annotation Additional information for the dispenser

. . substitution . . doseAdministrationAid 0..1 CodeableConcept Type of adherence packaging to use for the dispense
Binding: Medication Dose Aids ( Example )
... substitution 0..1 BackboneElement Any restrictions on medication substitution
. . . . allowed[x] 1..1 Whether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode icon ( Example Preferred )
. . . . . allowedBoolean boolean
. . . . . allowedCodeableConcept CodeableConcept
. . . . reason 0..1 CodeableConcept Why should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason icon ( Example ) priorPrescription 0..1 Reference ( MedicationRequest )
An order/prescription that is being replaced
. . . detectedIssue eventHistory 0..* Reference ( DetectedIssue ) Clinical Issue with action eventHistory TU 0..* Reference ( Provenance ) A list of events of interest in the lifecycle


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

MedicationRequest ( DomainResource ) Identifiers associated with this medication request that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server identifier : Identifier [0..*] A plan or request that is fulfilled in whole or in part by this medication request basedOn : Reference [0..*] « CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation » Reference to an order/prescription that is being replaced by this MedicationRequest priorPrescription : Reference [0..1] « MedicationRequest » A shared identifier common to multiple independent Request instances that were activated/authorized more or less simultaneously by a single author. The presence of the same identifier on each request ties those requests together and may have business ramifications in terms of reporting of results, billing, etc. E.g. a requisition number shared by a set of lab tests ordered together, or a prescription number shared by all meds ordered at one time groupIdentifier : Identifier [0..1] A code specifying the current state of the order. Generally, this will be active or completed state (this element modifies the meaning of other elements) status : code [1..1] « null (Strength=Required) medicationrequest Status MedicationrequestStatus ! » Captures the reason for the current state of the MedicationRequest statusReason : CodeableConcept [0..1] « null (Strength=Example) medicationRequest Status Reas... MedicationRequestStatusReason... ?? » The date (and perhaps time) when the status was changed statusChanged : dateTime [0..1] Whether the request is a proposal, plan, or an original order (this element modifies the meaning of other elements) intent : code [1..1] « null (Strength=Required) medicationRequest Intent MedicationRequestIntent ! » Indicates the type An arbitrary categorization or grouping of medication request (for example, where the medication is expected request. It could be used for indicating where meds are intended to be consumed or administered (i.e. administered, eg. in an inpatient setting or outpatient)) in a patient's home, or a legal category of the medication category : CodeableConcept [0..*] « null (Strength=Example) medicationRequest Category MedicationRequestAdministrati... ?? » Indicates how quickly the Medication Request should be addressed with respect to other requests priority : code [0..1] « null (Strength=Required) RequestPriority ! » If true true, indicates that the provider is asking for the medication request patient to either stop taking or to not start taking the specified medication. For example, the patient is taking an existing medication and the provider is changing their medication. They want to occur create two seperate requests: one to stop using the current medication and another to start the new medication (this element modifies the meaning of other elements) doNotPerform : boolean [0..1] Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report reported[x] : Element [0..1] « boolean | Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ) » Identifies the medication being requested. 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 medication[x] medication : Element CodeableReference [1..1] « CodeableConcept | Reference ( Medication ); ; null (Strength=Example) SNOMEDCTMedicationCodes ?? » A link to a resource representing the person The individual or set of individuals to group for whom the medication will be given has been requested subject : Reference [1..1] « Patient | Group » The person or organization who provided the information about this request, if the source is someone other than the requestor. This is often used when the MedicationRequest is reported by another person informationSource : Reference [0..*] « Patient | Practitioner | PractitionerRole | RelatedPerson | Organization » The Encounter during which this [x] was created or to which the creation of this record is tightly associated encounter : Reference [0..1] « Encounter » Include additional information (for Information to support fulfilling (i.e. dispensing or administering) of the medication, for example, patient height and weight) that supports the ordering of weight, a MedicationStatement for the medication patient) supportingInformation : Reference [0..*] « Any » The date (and perhaps time) when the prescription was initially written or authored on authoredOn : dateTime [0..1] The individual, organization, or device that initiated the request and has responsibility for its activation requester : Reference [0..1] « Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device » Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report reported : boolean [0..1] Indicates the type of performer of the administration of the medication performerType : CodeableConcept [0..1] « null (Strength=Extensible) MedicationIntendedPerformerRo... + » The specified desired performer of the medication treatment (e.g. the performer of the medication administration) administration). For devices, this is the device that is intended to perform the administration of the medication. An IV Pump would be an example of a device that is performing the administration. Both the IV Pump and the practitioner that set the rate or bolus on the pump can be listed as performers performer : Reference [0..1] [0..*] « Practitioner | PractitionerRole | Organization | Patient | Device DeviceDefinition | RelatedPerson | CareTeam | HealthcareService » Indicates the The intended type of performer of device that is to be used for the administration of the medication (for example, PCA Pump) performerType device : CodeableConcept CodeableReference [0..1] [0..*] « null (Strength=Example) ProcedurePerformerRoleCodes DeviceDefinition ?? » The person who entered the order on behalf of another individual for example in the case of a verbal or a telephone order recorder : Reference [0..1] « Practitioner | PractitionerRole » The reason or the indication for ordering or not ordering the medication reasonCode : CodeableConcept [0..*] « null (Strength=Example) Condition/Problem/DiagnosisCo... ?? » Condition or observation that supports why the medication was ordered reasonReference reason : Reference CodeableReference [0..*] « Condition | Observation » ; The URL pointing to a protocol, guideline, orderset, or other definition that is adhered to in whole or in part by this MedicationRequest null (Strength=Example) instantiatesCanonical : canonical [0..*] « » The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this MedicationRequest instantiatesUri : uri [0..*] A plan or request that is fulfilled in whole or in part by this medication request basedOn : Reference [0..*] « CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation ConditionProblemDiagnosisCodes ?? » A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition or prescription groupIdentifier : Identifier [0..1] The description of the overall patte3rn pattern of the administration of the medication to the patient courseOfTherapyType : CodeableConcept [0..1] « null (Strength=Example) (Strength=Extensible) medicationRequest Course of T... MedicationRequestCourseOfTher... ?? + » Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested service insurance : Reference [0..*] « Coverage | ClaimResponse » Extra information about the prescription that could not be conveyed by the other attributes note : Annotation [0..*] Indicates how The full representation of the dose of the medication is to included in all dosage instructions. To be used by the patient when multiple dosage instructions are included to represent complex dosing such as increasing or tapering doses dosageInstruction renderedDosageInstruction : Dosage markdown [0..*] [0..1] A link The period over which the medication is to a resource representing an earlier order related order or prescription be taken. Where there are multiple dosageInstruction lines (for example, tapering doses), this is the earliest date and the latest end date of the dosageInstructions priorPrescription effectiveDosePeriod : Reference Period [0..1] « MedicationRequest » Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions Specific instructions for a patient; e.g. Drug-drug interaction, duplicate therapy, dosage alert etc how the medication is to be used by the patient detectedIssue dosageInstruction : Reference Dosage [0..*] « DetectedIssue » Links to Provenance records for past versions of this resource or fulfilling request or event resources that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the resource eventHistory : Reference [0..*] « Provenance » DispenseRequest The minimum period of time that must occur between dispenses of the medication dispenseInterval : Duration [0..1] This indicates the validity period of a prescription (stale dating the Prescription) validityPeriod : Period [0..1] 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. A prescriber may explicitly say that zero refills are permitted after the initial dispense numberOfRepeatsAllowed : unsignedInt [0..1] The amount that is to be dispensed for one fill quantity : Quantity ( SimpleQuantity ) [0..1] 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 expectedSupplyDuration : Duration [0..1] Indicates the intended dispensing performing Organization that will dispense the medication as specified by the prescriber performer dispenser : Reference [0..1] « Organization » Provides additional information to the dispenser, for example, counselling to be provided to the patient dispenserInstruction : Annotation [0..*] Provides information about the type of adherence packaging to be supplied for the medication dispense doseAdministrationAid : CodeableConcept [0..1] « null (Strength=Example) MedicationDoseAids ?? » InitialFill The amount or quantity to provide as part of the first dispense quantity : Quantity ( SimpleQuantity ) [0..1] The length of time that the first dispense is expected to last duration : Duration [0..1] Substitution True if the prescriber allows a different drug to be dispensed from what was prescribed allowed[x] : Element DataType [1..1] « boolean | CodeableConcept ; null (Strength=Example) (Strength=Preferred) ActSubstanceAdminSubstitution... ?? ? » Indicates the reason for the substitution, or why substitution must or must not be performed reason : CodeableConcept [0..1] « null (Strength=Example) SubstanceAdminSubstitutionRea... ?? » Indicates the quantity or duration for the first dispense of the medication initialFill [0..1] Indicates the specific details for the dispense or medication supply part of a medication request (also known as a Medication Prescription or Medication Order). 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 dispenseRequest [0..1] 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. This block explains the prescriber's intent. If nothing is specified substitution may be done substitution [0..1]

XML Template

<MedicationRequest xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External ids for this request --></identifier>
 <

 <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest|ServiceRequest) A plan or request that is fulfilled in whole or in part by this medication request --></basedOn>

 <priorPrescription><!-- 0..1 Reference(MedicationRequest) Reference to an order/prescription that is being replaced by this MedicationRequest --></priorPrescription>
 <groupIdentifier><!-- 0..1 Identifier Composite request this is part of --></groupIdentifier>
 <status value="[code]"/><!-- 1..1 active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown -->

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>
 <statusChanged value="[dateTime]"/><!-- 0..1 When the status was changed -->

 <intent value="[code]"/><!-- 1..1 proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option -->
 <</category>

 <category><!-- 0..* CodeableConcept Grouping or category of medication request --></category>

 <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat -->
 <
 <|
   </reported[x]>
 <</medication[x]>
 <</subject>

 <doNotPerform value="[boolean]"/><!-- 0..1 True if patient is to stop taking or not to start taking the medication -->
 <medication><!-- 1..1 CodeableReference(Medication) Medication to be taken --></medication>
 <subject><!-- 1..1 Reference(Group|Patient) Individual or group for whom the medication has been requested --></subject>
 <informationSource><!-- 0..* Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) The person or organization who provided the information about this request, if the source is someone other than the requestor --></informationSource>
 <encounter><!-- 0..1 Reference(Encounter) Encounter created as part of encounter/admission/stay --></encounter>
 <</supportingInformation>

 <supportingInformation><!-- 0..* Reference(Any) Information to support fulfilling of the medication --></supportingInformation>

 <authoredOn value="[dateTime]"/><!-- 0..1 When request was initially authored -->
 <requester><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who/What requested the Request --></requester>
 <|
   </performer>
 <</performerType>

 <reported value="[boolean]"/><!-- 0..1 Reported rather than primary record -->
 <performerType><!-- 0..1 CodeableConcept Desired kind of performer of the medication administration --></performerType>
 <performer><!-- 0..* Reference(CareTeam|DeviceDefinition|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Intended performer of administration --></performer>

 <device><!-- 0..* CodeableReference(DeviceDefinition) Intended type of device for the administration --></device>

 <recorder><!-- 0..1 Reference(Practitioner|PractitionerRole) Person who entered the request --></recorder>
 <</reasonCode>
 <</reasonReference>
 <
 <
 <|
   </basedOn>
 <</groupIdentifier>
 <</courseOfTherapyType>

 <reason><!-- 0..* CodeableReference(Condition|Observation) Reason or indication for ordering or not ordering the medication --></reason>
 <courseOfTherapyType><!-- 0..1 CodeableConcept Overall pattern of medication administration --></courseOfTherapyType>

 <insurance><!-- 0..* Reference(ClaimResponse|Coverage) Associated insurance coverage --></insurance>
 <note><!-- 0..* Annotation Information about the prescription --></note>
 <</dosageInstruction>

 <renderedDosageInstruction value="[markdown]"/><!-- 0..1 Full representation of the dosage instructions -->
 <effectiveDosePeriod><!-- 0..1 Period Period over which the medication is to be taken --></effectiveDosePeriod>
 <dosageInstruction><!-- 0..* Dosage Specific instructions for how the medication should be taken --></dosageInstruction>

 <dispenseRequest>  <!-- 0..1 Medication supply authorization -->
  <initialFill>  <!-- 0..1 First fill details -->
   <quantity><!-- 0..1 Quantity(SimpleQuantity) First fill quantity --></quantity>
   <duration><!-- 0..1 Duration First fill duration --></duration>
  </initialFill>
  <dispenseInterval><!-- 0..1 Duration Minimum period of time between dispenses --></dispenseInterval>
  <validityPeriod><!-- 0..1 Period Time period supply is authorized for --></validityPeriod>
  <numberOfRepeatsAllowed value="[unsignedInt]"/><!-- 0..1 Number of refills authorized -->
  <quantity><!-- 0..1 Quantity(SimpleQuantity) Amount of medication to supply per dispense --></quantity>
  <expectedSupplyDuration><!-- 0..1 Duration Number of days supply per dispense --></expectedSupplyDuration>
  <</performer>

  <dispenser><!-- 0..1 Reference(Organization) Intended performer of dispense --></dispenser>
  <dispenserInstruction><!-- 0..* Annotation Additional information for the dispenser --></dispenserInstruction>
  <doseAdministrationAid><!-- 0..1 CodeableConcept Type of adherence packaging to use for the dispense --></doseAdministrationAid>

 </dispenseRequest>
 <substitution>  <!-- 0..1 Any restrictions on medication substitution -->
  <</allowed[x]>
  <</reason>

  <allowed[x]><!-- 1..1 boolean|CodeableConcept Whether substitution is allowed or not icon --></allowed[x]>
  <reason><!-- 0..1 CodeableConcept Why should (not) substitution be made icon --></reason>

 </substitution>
 <</priorPrescription>
 <</detectedIssue>

 <eventHistory><!-- 0..* Reference(Provenance) A list of events of interest in the lifecycle --></eventHistory>
</MedicationRequest>

JSON Template

{doco
  "resourceType" : "MedicationRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External ids for this request
  "

  "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest|ServiceRequest) }], // A plan or request that is fulfilled in whole or in part by this medication request

  "priorPrescription" : { Reference(MedicationRequest) }, // Reference to an order/prescription that is being replaced by this MedicationRequest
  "groupIdentifier" : { Identifier }, // Composite request this is part of
  "status" : "<code>", // R!  active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown

  "statusReason" : { CodeableConcept }, // Reason for current status
  "statusChanged" : "<dateTime>", // When the status was changed

  "intent" : "<code>", // R!  proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
  "

  "category" : [{ CodeableConcept }], // Grouping or category of medication request

  "priority" : "<code>", // routine | urgent | asap | stat
  "
  
  ">,
  "|
    },
  
  " },
  " },
  "

  "doNotPerform" : <boolean>, // True if patient is to stop taking or not to start taking the medication
  "medication" : { CodeableReference(Medication) }, // R!  Medication to be taken
  "subject" : { Reference(Group|Patient) }, // R!  Individual or group for whom the medication has been requested
  "informationSource" : [{ Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }], // The person or organization who provided the information about this request, if the source is someone other than the requestor
  "encounter" : { Reference(Encounter) }, // Encounter created as part of encounter/admission/stay
  "

  "supportingInformation" : [{ Reference(Any) }], // Information to support fulfilling of the medication

  "authoredOn" : "<dateTime>", // When request was initially authored
  "requester" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Who/What requested the Request
  "|
   
  "

  "reported" : <boolean>, // Reported rather than primary record
  "performerType" : { CodeableConcept }, // Desired kind of performer of the medication administration
  "performer" : [{ Reference(CareTeam|DeviceDefinition|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Intended performer of administration

  "device" : [{ CodeableReference(DeviceDefinition) }], // Intended type of device for the administration

  "recorder" : { Reference(Practitioner|PractitionerRole) }, // Person who entered the request
  "
  "
  "
  "
  "|
   
  "
  "

  "reason" : [{ CodeableReference(Condition|Observation) }], // Reason or indication for ordering or not ordering the medication
  "courseOfTherapyType" : { CodeableConcept }, // Overall pattern of medication administration

  "insurance" : [{ Reference(ClaimResponse|Coverage) }], // Associated insurance coverage
  "note" : [{ Annotation }], // Information about the prescription
  "

  "renderedDosageInstruction" : "<markdown>", // Full representation of the dosage instructions
  "effectiveDosePeriod" : { Period }, // Period over which the medication is to be taken
  "dosageInstruction" : [{ Dosage }], // Specific instructions for how the medication should be taken

  "dispenseRequest" : { // Medication supply authorization
    "initialFill" : { // First fill details
      "quantity" : { Quantity(SimpleQuantity) }, // First fill quantity
      "duration" : { Duration } // First fill duration
    },
    "dispenseInterval" : { Duration }, // Minimum period of time between dispenses
    "validityPeriod" : { Period }, // Time period supply is authorized for
    "numberOfRepeatsAllowed" : "<unsignedInt>", // Number of refills authorized
    "quantity" : { Quantity(SimpleQuantity) }, // Amount of medication to supply per dispense
    "expectedSupplyDuration" : { Duration }, // Number of days supply per dispense
    "

    "dispenser" : { Reference(Organization) }, // Intended performer of dispense
    "dispenserInstruction" : [{ Annotation }], // Additional information for the dispenser
    "doseAdministrationAid" : { CodeableConcept } // Type of adherence packaging to use for the dispense

  },
  "substitution" : { // Any restrictions on medication substitution
    // allowed[x]: Whether substitution is allowed or not. One of these 2:
    "allowedBoolean" : <boolean>,
    "allowedCodeableConcept" : { CodeableConcept },
    "

    "reason" : { CodeableConcept } // Why should (not) substitution be made icon

  },
  "
  "

  "eventHistory" : [{ Reference(Provenance) }] // A list of events of interest in the lifecycle
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:MedicationRequest;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  # . One of these 2
    fhir: ]
    fhir:) ]
  # . One of these 2
    fhir: ]
    fhir:) ]
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
      fhir:
      fhir:
    ];
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ];
  fhir:
    # . One of these 2
      fhir: ]
      fhir: ]
    fhir:
  ];
  fhir:
  fhir:
  fhir:

  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* External ids for this request
  fhir:basedOn  ( [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest|ServiceRequest) ] ... ) ; # 0..* A plan or request that is fulfilled in whole or in part by this medication request
  fhir:priorPrescription [ Reference(MedicationRequest) ] ; # 0..1 Reference to an order/prescription that is being replaced by this MedicationRequest
  fhir:groupIdentifier [ Identifier ] ; # 0..1 Composite request this is part of
  fhir:status [ code ] ; # 1..1 active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown
  fhir:statusReason [ CodeableConcept ] ; # 0..1 Reason for current status
  fhir:statusChanged [ dateTime ] ; # 0..1 When the status was changed
  fhir:intent [ code ] ; # 1..1 proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* Grouping or category of medication request
  fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat
  fhir:doNotPerform [ boolean ] ; # 0..1 True if patient is to stop taking or not to start taking the medication
  fhir:medication [ CodeableReference(Medication) ] ; # 1..1 Medication to be taken
  fhir:subject [ Reference(Group|Patient) ] ; # 1..1 Individual or group for whom the medication has been requested
  fhir:informationSource  ( [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ... ) ; # 0..* The person or organization who provided the information about this request, if the source is someone other than the requestor
  fhir:encounter [ Reference(Encounter) ] ; # 0..1 Encounter created as part of encounter/admission/stay
  fhir:supportingInformation  ( [ Reference(Any) ] ... ) ; # 0..* Information to support fulfilling of the medication
  fhir:authoredOn [ dateTime ] ; # 0..1 When request was initially authored
  fhir:requester [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who/What requested the Request
  fhir:reported [ boolean ] ; # 0..1 Reported rather than primary record
  fhir:performerType [ CodeableConcept ] ; # 0..1 Desired kind of performer of the medication administration
  fhir:performer  ( [ Reference(CareTeam|DeviceDefinition|HealthcareService|Organization|Patient|Practitioner|
  PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Intended performer of administration

  fhir:device  ( [ CodeableReference(DeviceDefinition) ] ... ) ; # 0..* Intended type of device for the administration
  fhir:recorder [ Reference(Practitioner|PractitionerRole) ] ; # 0..1 Person who entered the request
  fhir:reason  ( [ CodeableReference(Condition|Observation) ] ... ) ; # 0..* Reason or indication for ordering or not ordering the medication
  fhir:courseOfTherapyType [ CodeableConcept ] ; # 0..1 Overall pattern of medication administration
  fhir:insurance  ( [ Reference(ClaimResponse|Coverage) ] ... ) ; # 0..* Associated insurance coverage
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Information about the prescription
  fhir:renderedDosageInstruction [ markdown ] ; # 0..1 Full representation of the dosage instructions
  fhir:effectiveDosePeriod [ Period ] ; # 0..1 Period over which the medication is to be taken
  fhir:dosageInstruction  ( [ Dosage ] ... ) ; # 0..* Specific instructions for how the medication should be taken
  fhir:dispenseRequest [ # 0..1 Medication supply authorization
    fhir:initialFill [ # 0..1 First fill details
      fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 First fill quantity
      fhir:duration [ Duration ] ; # 0..1 First fill duration
    ] ;
    fhir:dispenseInterval [ Duration ] ; # 0..1 Minimum period of time between dispenses
    fhir:validityPeriod [ Period ] ; # 0..1 Time period supply is authorized for
    fhir:numberOfRepeatsAllowed [ unsignedInt ] ; # 0..1 Number of refills authorized
    fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 Amount of medication to supply per dispense
    fhir:expectedSupplyDuration [ Duration ] ; # 0..1 Number of days supply per dispense
    fhir:dispenser [ Reference(Organization) ] ; # 0..1 Intended performer of dispense
    fhir:dispenserInstruction  ( [ Annotation ] ... ) ; # 0..* Additional information for the dispenser
    fhir:doseAdministrationAid [ CodeableConcept ] ; # 0..1 Type of adherence packaging to use for the dispense
  ] ;
  fhir:substitution [ # 0..1 Any restrictions on medication substitution
    # allowed[x] : 1..1 Whether substitution is allowed or not. One of these 2
      fhir:allowed [  a fhir:boolean ; boolean ]
      fhir:allowed [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:reason [ CodeableConcept ] ; # 0..1 Why should (not) substitution be made
  ] ;
  fhir:eventHistory  ( [ Reference(Provenance) ] ... ) ; # 0..* A list of events of interest in the lifecycle

]

Changes since R4

MedicationRequest
MedicationRequest.statusChanged
  • No Changes Added Element
MedicationRequest.medication
  • Added Mandatory Element
MedicationRequest.informationSource
  • Added Element
MedicationRequest.reported
  • Added Element
MedicationRequest.performerType
  • Add Binding http://hl7.org/fhir/ValueSet/medication-intended-performer-role (extensible)
MedicationRequest.performer
  • Max Cardinality changed from 1 to *
  • Type Reference: Added Target Types DeviceDefinition, HealthcareService
  • Type Reference: Removed Target Type Device
MedicationRequest.device
  • Added Element
MedicationRequest.reason
  • Added Element
MedicationRequest.courseOfTherapyType
  • Add Binding http://hl7.org/fhir/ValueSet/medicationrequest-course-of-therapy (extensible)
MedicationRequest.renderedDosageInstruction
  • Added Element
MedicationRequest.effectiveDosePeriod
  • Added Element
MedicationRequest.dispenseRequest.dispenser
  • Added Element
MedicationRequest.dispenseRequest.dispenserInstruction
  • Added Element
MedicationRequest.dispenseRequest.doseAdministrationAid
  • Added Element
MedicationRequest.reported[x]
  • deleted
MedicationRequest.medication[x]
  • deleted
MedicationRequest.reasonCode
  • deleted
MedicationRequest.reasonReference
  • deleted
MedicationRequest.instantiatesCanonical
  • deleted
MedicationRequest.instantiatesUri
  • deleted
MedicationRequest.dispenseRequest.performer
  • deleted
MedicationRequest.detectedIssue
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

Conversions between R3 and R4 See R3 <--> R4 Conversion Maps (status = 36 tests that all execute ok. 8 fail round-trip testing and 36 r3 resources are invalid (0 errors). )

Structure

Σ Σ Σ Σ Σ How
Name Flags Card. Type Description & Constraints doco
. . MedicationRequest TU DomainResource Ordering of medication for patient or group

Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier External ids for this request

. . status . basedOn Σ 0..* Reference ( CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation ) A plan or request that is fulfilled in whole or in part by this medication request

... priorPrescription 0..1 Reference ( MedicationRequest ) Reference to an order/prescription that is being replaced by this MedicationRequest
... groupIdentifier Σ 0..1 Identifier Composite request this is part of
... status ?! Σ 1..1 code active | on-hold | cancelled ended | stopped | completed | entered-in-error cancelled | stopped entered-in-error | draft | unknown
Binding: medicationrequest Status ( Required )
. . . statusReason 0..1 CodeableConcept Reason for current status
Binding: medicationRequest Status Reason Codes ( Example )
. . . statusChanged 0..1 dateTime When the status was changed
. . . intent ?! Σ 1..1 code proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent ( Required )
. . . category 0..* CodeableConcept Type Grouping or category of medication usage request
Binding: medicationRequest Category Administration Location Codes ( Example )

. . . priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority ( Required )
. . . doNotPerform ?! Σ 0..1 boolean True if request patient is prohibiting action to stop taking or not to start taking the medication
. . reported[x] . medication Σ 0..1 Reported rather than primary record reportedBoolean boolean reportedReference 1..1 Reference CodeableReference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization Medication ) medication[x] Σ 1..1 Medication to be taken
Binding: SNOMED CT Medication Codes ( Example )
. . medicationCodeableConcept CodeableConcept . subject medicationReference Σ 1..1 Reference ( Medication Patient | Group ) Individual or group for whom the medication has been requested
. . . subject informationSource 1..1 0..* Reference ( Patient | Group Practitioner | PractitionerRole | RelatedPerson | Organization ) Who The person or group medication request organization who provided the information about this request, if the source is for someone other than the requestor

. . . encounter 0..1 Reference ( Encounter ) Encounter created as part of encounter/admission/stay
. . . supportingInformation 0..* Reference ( Any ) Information to support ordering fulfilling of the medication

. . . authoredOn Σ 0..1 dateTime When request was initially authored
. . . requester Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device ) Who/What requested the Request
. . performer . reported Σ 0..1 Reference ( Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam boolean ) Intended performer of administration Reported rather than primary record
. . . performerType Σ 0..1 CodeableConcept Desired kind of performer of the medication administration
Procedure Binding: Medication Intended Performer Role Codes ( Example Extensible )
. . . recorder performer 0..1 0..* Reference ( Practitioner | PractitionerRole | Organization | Patient | DeviceDefinition | RelatedPerson | CareTeam | HealthcareService ) Person who entered the request Intended performer of administration

. . reasonCode . device 0..* CodeableConcept CodeableReference ( DeviceDefinition ) Reason or indication Intended type of device for ordering or not ordering the medication administration
Condition/Problem/Diagnosis Codes ( Example )
. . . reasonReference recorder 0..* 0..1 Reference ( Condition Practitioner | Observation PractitionerRole ) Condition or observation that supports why Person who entered the prescription is being written request
. . . instantiatesCanonical reason 0..* canonical CodeableReference () ( Condition | Observation ) Instantiates FHIR protocol Reason or definition indication for ordering or not ordering the medication
Binding: Condition/Problem/Diagnosis Codes ( Example )

. . instantiatesUri . courseOfTherapyType 0..* 0..1 uri CodeableConcept Instantiates external protocol or definition Overall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes ( Extensible )
. . . basedOn insurance 0..* Reference ( CarePlan | MedicationRequest | ServiceRequest Coverage | ImmunizationRecommendation ClaimResponse ) What request fulfills Associated insurance coverage

. . . groupIdentifier note 0..1 0..* Identifier Annotation Composite request this is part of Information about the prescription

. . courseOfTherapyType . renderedDosageInstruction 0..1 CodeableConcept markdown Overall pattern Full representation of medication administration the dosage instructions
medicationRequest Course of Therapy Codes ( Example )
. . insurance . effectiveDosePeriod 0..* 0..1 Reference ( Coverage | ClaimResponse Period ) Associated insurance coverage Period over which the medication is to be taken
. . . note dosageInstruction 0..* Annotation Information about the prescription dosageInstruction 0..* Dosage Specific instructions for how the medication should be taken

. . . dispenseRequest 0..1 BackboneElement Medication supply authorization
. . . . initialFill 0..1 BackboneElement First fill details
. . . . . quantity 0..1 SimpleQuantity First fill quantity
. . . . . duration 0..1 Duration First fill duration
. . . . dispenseInterval 0..1 Duration Minimum period of time between dispenses
. . . . validityPeriod 0..1 Period Time period supply is authorized for
. . . . numberOfRepeatsAllowed 0..1 unsignedInt Number of refills authorized
. . . . quantity 0..1 SimpleQuantity Amount of medication to supply per dispense
. . . . expectedSupplyDuration 0..1 Duration Number of days supply per dispense
. . . performer . dispenser 0..1 Reference ( Organization ) Intended performer of dispense
.... dispenserInstruction 0..* Annotation Additional information for the dispenser

. . substitution . . doseAdministrationAid 0..1 CodeableConcept Type of adherence packaging to use for the dispense
Binding: Medication Dose Aids ( Example )
... substitution 0..1 BackboneElement Any restrictions on medication substitution
. . . . allowed[x] 1..1 Whether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode icon ( Example Preferred )
. . . . . allowedBoolean boolean
. . . . . allowedCodeableConcept CodeableConcept
. . . . reason 0..1 CodeableConcept Why should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason icon ( Example ) priorPrescription 0..1 Reference ( MedicationRequest )
An order/prescription that is being replaced
. . . detectedIssue eventHistory 0..* Reference ( DetectedIssue ) Clinical Issue with action eventHistory TU 0..* Reference ( Provenance ) A list of events of interest in the lifecycle


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

MedicationRequest ( DomainResource ) Identifiers associated with this medication request that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server identifier : Identifier [0..*] A plan or request that is fulfilled in whole or in part by this medication request basedOn : Reference [0..*] « CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation » Reference to an order/prescription that is being replaced by this MedicationRequest priorPrescription : Reference [0..1] « MedicationRequest » A shared identifier common to multiple independent Request instances that were activated/authorized more or less simultaneously by a single author. The presence of the same identifier on each request ties those requests together and may have business ramifications in terms of reporting of results, billing, etc. E.g. a requisition number shared by a set of lab tests ordered together, or a prescription number shared by all meds ordered at one time groupIdentifier : Identifier [0..1] A code specifying the current state of the order. Generally, this will be active or completed state (this element modifies the meaning of other elements) status : code [1..1] « null (Strength=Required) medicationrequest Status MedicationrequestStatus ! » Captures the reason for the current state of the MedicationRequest statusReason : CodeableConcept [0..1] « null (Strength=Example) medicationRequest Status Reas... MedicationRequestStatusReason... ?? » The date (and perhaps time) when the status was changed statusChanged : dateTime [0..1] Whether the request is a proposal, plan, or an original order (this element modifies the meaning of other elements) intent : code [1..1] « null (Strength=Required) medicationRequest Intent MedicationRequestIntent ! » Indicates the type An arbitrary categorization or grouping of medication request (for example, where the medication is expected request. It could be used for indicating where meds are intended to be consumed or administered (i.e. administered, eg. in an inpatient setting or outpatient)) in a patient's home, or a legal category of the medication category : CodeableConcept [0..*] « null (Strength=Example) medicationRequest Category MedicationRequestAdministrati... ?? » Indicates how quickly the Medication Request should be addressed with respect to other requests priority : code [0..1] « null (Strength=Required) RequestPriority ! » If true true, indicates that the provider is asking for the medication request patient to either stop taking or to not start taking the specified medication. For example, the patient is taking an existing medication and the provider is changing their medication. They want to occur create two seperate requests: one to stop using the current medication and another to start the new medication (this element modifies the meaning of other elements) doNotPerform : boolean [0..1] Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report reported[x] : Element [0..1] « boolean | Reference ( Patient | Practitioner | PractitionerRole | RelatedPerson | Organization ) » Identifies the medication being requested. 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 medication[x] medication : Element CodeableReference [1..1] « CodeableConcept | Reference ( Medication ); ; null (Strength=Example) SNOMEDCTMedicationCodes ?? » A link to a resource representing the person The individual or set of individuals to group for whom the medication will be given has been requested subject : Reference [1..1] « Patient | Group » The person or organization who provided the information about this request, if the source is someone other than the requestor. This is often used when the MedicationRequest is reported by another person informationSource : Reference [0..*] « Patient | Practitioner | PractitionerRole | RelatedPerson | Organization » The Encounter during which this [x] was created or to which the creation of this record is tightly associated encounter : Reference [0..1] « Encounter » Include additional information (for Information to support fulfilling (i.e. dispensing or administering) of the medication, for example, patient height and weight) that supports the ordering of weight, a MedicationStatement for the medication patient) supportingInformation : Reference [0..*] « Any » The date (and perhaps time) when the prescription was initially written or authored on authoredOn : dateTime [0..1] The individual, organization, or device that initiated the request and has responsibility for its activation requester : Reference [0..1] « Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device » Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report reported : boolean [0..1] Indicates the type of performer of the administration of the medication performerType : CodeableConcept [0..1] « null (Strength=Extensible) MedicationIntendedPerformerRo... + » The specified desired performer of the medication treatment (e.g. the performer of the medication administration) administration). For devices, this is the device that is intended to perform the administration of the medication. An IV Pump would be an example of a device that is performing the administration. Both the IV Pump and the practitioner that set the rate or bolus on the pump can be listed as performers performer : Reference [0..1] [0..*] « Practitioner | PractitionerRole | Organization | Patient | Device DeviceDefinition | RelatedPerson | CareTeam | HealthcareService » Indicates the The intended type of performer of device that is to be used for the administration of the medication (for example, PCA Pump) performerType device : CodeableConcept CodeableReference [0..1] [0..*] « null (Strength=Example) ProcedurePerformerRoleCodes DeviceDefinition ?? » The person who entered the order on behalf of another individual for example in the case of a verbal or a telephone order recorder : Reference [0..1] « Practitioner | PractitionerRole » The reason or the indication for ordering or not ordering the medication reasonCode : CodeableConcept [0..*] « null (Strength=Example) Condition/Problem/DiagnosisCo... ?? » Condition or observation that supports why the medication was ordered reasonReference reason : Reference CodeableReference [0..*] « Condition | Observation » ; The URL pointing to a protocol, guideline, orderset, or other definition that is adhered to in whole or in part by this MedicationRequest null (Strength=Example) instantiatesCanonical : canonical [0..*] « » The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this MedicationRequest instantiatesUri : uri [0..*] A plan or request that is fulfilled in whole or in part by this medication request basedOn : Reference [0..*] « CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation ConditionProblemDiagnosisCodes ?? » A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition or prescription groupIdentifier : Identifier [0..1] The description of the overall patte3rn pattern of the administration of the medication to the patient courseOfTherapyType : CodeableConcept [0..1] « null (Strength=Example) (Strength=Extensible) medicationRequest Course of T... MedicationRequestCourseOfTher... ?? + » Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested service insurance : Reference [0..*] « Coverage | ClaimResponse » Extra information about the prescription that could not be conveyed by the other attributes note : Annotation [0..*] Indicates how The full representation of the dose of the medication is to included in all dosage instructions. To be used by the patient when multiple dosage instructions are included to represent complex dosing such as increasing or tapering doses dosageInstruction renderedDosageInstruction : Dosage markdown [0..*] [0..1] A link The period over which the medication is to a resource representing an earlier order related order or prescription be taken. Where there are multiple dosageInstruction lines (for example, tapering doses), this is the earliest date and the latest end date of the dosageInstructions priorPrescription effectiveDosePeriod : Reference Period [0..1] « MedicationRequest » Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions Specific instructions for a patient; e.g. Drug-drug interaction, duplicate therapy, dosage alert etc how the medication is to be used by the patient detectedIssue dosageInstruction : Reference Dosage [0..*] « DetectedIssue » Links to Provenance records for past versions of this resource or fulfilling request or event resources that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the resource eventHistory : Reference [0..*] « Provenance » DispenseRequest The minimum period of time that must occur between dispenses of the medication dispenseInterval : Duration [0..1] This indicates the validity period of a prescription (stale dating the Prescription) validityPeriod : Period [0..1] 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. A prescriber may explicitly say that zero refills are permitted after the initial dispense numberOfRepeatsAllowed : unsignedInt [0..1] The amount that is to be dispensed for one fill quantity : Quantity ( SimpleQuantity ) [0..1] 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 expectedSupplyDuration : Duration [0..1] Indicates the intended dispensing performing Organization that will dispense the medication as specified by the prescriber performer dispenser : Reference [0..1] « Organization » Provides additional information to the dispenser, for example, counselling to be provided to the patient dispenserInstruction : Annotation [0..*] Provides information about the type of adherence packaging to be supplied for the medication dispense doseAdministrationAid : CodeableConcept [0..1] « null (Strength=Example) MedicationDoseAids ?? » InitialFill The amount or quantity to provide as part of the first dispense quantity : Quantity ( SimpleQuantity ) [0..1] The length of time that the first dispense is expected to last duration : Duration [0..1] Substitution True if the prescriber allows a different drug to be dispensed from what was prescribed allowed[x] : Element DataType [1..1] « boolean | CodeableConcept ; null (Strength=Example) (Strength=Preferred) ActSubstanceAdminSubstitution... ?? ? » Indicates the reason for the substitution, or why substitution must or must not be performed reason : CodeableConcept [0..1] « null (Strength=Example) SubstanceAdminSubstitutionRea... ?? » Indicates the quantity or duration for the first dispense of the medication initialFill [0..1] Indicates the specific details for the dispense or medication supply part of a medication request (also known as a Medication Prescription or Medication Order). 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 dispenseRequest [0..1] 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. This block explains the prescriber's intent. If nothing is specified substitution may be done substitution [0..1]

XML Template

<MedicationRequest xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External ids for this request --></identifier>
 <

 <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest|ServiceRequest) A plan or request that is fulfilled in whole or in part by this medication request --></basedOn>

 <priorPrescription><!-- 0..1 Reference(MedicationRequest) Reference to an order/prescription that is being replaced by this MedicationRequest --></priorPrescription>
 <groupIdentifier><!-- 0..1 Identifier Composite request this is part of --></groupIdentifier>
 <status value="[code]"/><!-- 1..1 active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown -->

 <statusReason><!-- 0..1 CodeableConcept Reason for current status --></statusReason>
 <statusChanged value="[dateTime]"/><!-- 0..1 When the status was changed -->

 <intent value="[code]"/><!-- 1..1 proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option -->
 <</category>

 <category><!-- 0..* CodeableConcept Grouping or category of medication request --></category>

 <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat -->
 <
 <|
   </reported[x]>
 <</medication[x]>
 <</subject>

 <doNotPerform value="[boolean]"/><!-- 0..1 True if patient is to stop taking or not to start taking the medication -->
 <medication><!-- 1..1 CodeableReference(Medication) Medication to be taken --></medication>
 <subject><!-- 1..1 Reference(Group|Patient) Individual or group for whom the medication has been requested --></subject>
 <informationSource><!-- 0..* Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) The person or organization who provided the information about this request, if the source is someone other than the requestor --></informationSource>
 <encounter><!-- 0..1 Reference(Encounter) Encounter created as part of encounter/admission/stay --></encounter>
 <</supportingInformation>

 <supportingInformation><!-- 0..* Reference(Any) Information to support fulfilling of the medication --></supportingInformation>

 <authoredOn value="[dateTime]"/><!-- 0..1 When request was initially authored -->
 <requester><!-- 0..1 Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who/What requested the Request --></requester>
 <|
   </performer>
 <</performerType>

 <reported value="[boolean]"/><!-- 0..1 Reported rather than primary record -->
 <performerType><!-- 0..1 CodeableConcept Desired kind of performer of the medication administration --></performerType>
 <performer><!-- 0..* Reference(CareTeam|DeviceDefinition|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) Intended performer of administration --></performer>

 <device><!-- 0..* CodeableReference(DeviceDefinition) Intended type of device for the administration --></device>

 <recorder><!-- 0..1 Reference(Practitioner|PractitionerRole) Person who entered the request --></recorder>
 <</reasonCode>
 <</reasonReference>
 <
 <
 <|
   </basedOn>
 <</groupIdentifier>
 <</courseOfTherapyType>

 <reason><!-- 0..* CodeableReference(Condition|Observation) Reason or indication for ordering or not ordering the medication --></reason>
 <courseOfTherapyType><!-- 0..1 CodeableConcept Overall pattern of medication administration --></courseOfTherapyType>

 <insurance><!-- 0..* Reference(ClaimResponse|Coverage) Associated insurance coverage --></insurance>
 <note><!-- 0..* Annotation Information about the prescription --></note>
 <</dosageInstruction>

 <renderedDosageInstruction value="[markdown]"/><!-- 0..1 Full representation of the dosage instructions -->
 <effectiveDosePeriod><!-- 0..1 Period Period over which the medication is to be taken --></effectiveDosePeriod>
 <dosageInstruction><!-- 0..* Dosage Specific instructions for how the medication should be taken --></dosageInstruction>

 <dispenseRequest>  <!-- 0..1 Medication supply authorization -->
  <initialFill>  <!-- 0..1 First fill details -->
   <quantity><!-- 0..1 Quantity(SimpleQuantity) First fill quantity --></quantity>
   <duration><!-- 0..1 Duration First fill duration --></duration>
  </initialFill>
  <dispenseInterval><!-- 0..1 Duration Minimum period of time between dispenses --></dispenseInterval>
  <validityPeriod><!-- 0..1 Period Time period supply is authorized for --></validityPeriod>
  <numberOfRepeatsAllowed value="[unsignedInt]"/><!-- 0..1 Number of refills authorized -->
  <quantity><!-- 0..1 Quantity(SimpleQuantity) Amount of medication to supply per dispense --></quantity>
  <expectedSupplyDuration><!-- 0..1 Duration Number of days supply per dispense --></expectedSupplyDuration>
  <</performer>

  <dispenser><!-- 0..1 Reference(Organization) Intended performer of dispense --></dispenser>
  <dispenserInstruction><!-- 0..* Annotation Additional information for the dispenser --></dispenserInstruction>
  <doseAdministrationAid><!-- 0..1 CodeableConcept Type of adherence packaging to use for the dispense --></doseAdministrationAid>

 </dispenseRequest>
 <substitution>  <!-- 0..1 Any restrictions on medication substitution -->
  <</allowed[x]>
  <</reason>

  <allowed[x]><!-- 1..1 boolean|CodeableConcept Whether substitution is allowed or not icon --></allowed[x]>
  <reason><!-- 0..1 CodeableConcept Why should (not) substitution be made icon --></reason>

 </substitution>
 <</priorPrescription>
 <</detectedIssue>

 <eventHistory><!-- 0..* Reference(Provenance) A list of events of interest in the lifecycle --></eventHistory>
</MedicationRequest>

JSON Template

{doco
  "resourceType" : "MedicationRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External ids for this request
  "

  "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation|
   MedicationRequest|ServiceRequest) }], // A plan or request that is fulfilled in whole or in part by this medication request

  "priorPrescription" : { Reference(MedicationRequest) }, // Reference to an order/prescription that is being replaced by this MedicationRequest
  "groupIdentifier" : { Identifier }, // Composite request this is part of
  "status" : "<code>", // R!  active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown

  "statusReason" : { CodeableConcept }, // Reason for current status
  "statusChanged" : "<dateTime>", // When the status was changed

  "intent" : "<code>", // R!  proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
  "

  "category" : [{ CodeableConcept }], // Grouping or category of medication request

  "priority" : "<code>", // routine | urgent | asap | stat
  "
  
  ">,
  "|
    },
  
  " },
  " },
  "

  "doNotPerform" : <boolean>, // True if patient is to stop taking or not to start taking the medication
  "medication" : { CodeableReference(Medication) }, // R!  Medication to be taken
  "subject" : { Reference(Group|Patient) }, // R!  Individual or group for whom the medication has been requested
  "informationSource" : [{ Reference(Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }], // The person or organization who provided the information about this request, if the source is someone other than the requestor
  "encounter" : { Reference(Encounter) }, // Encounter created as part of encounter/admission/stay
  "

  "supportingInformation" : [{ Reference(Any) }], // Information to support fulfilling of the medication

  "authoredOn" : "<dateTime>", // When request was initially authored
  "requester" : { Reference(Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }, // Who/What requested the Request
  "|
   
  "

  "reported" : <boolean>, // Reported rather than primary record
  "performerType" : { CodeableConcept }, // Desired kind of performer of the medication administration
  "performer" : [{ Reference(CareTeam|DeviceDefinition|HealthcareService|
   Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Intended performer of administration

  "device" : [{ CodeableReference(DeviceDefinition) }], // Intended type of device for the administration

  "recorder" : { Reference(Practitioner|PractitionerRole) }, // Person who entered the request
  "
  "
  "
  "
  "|
   
  "
  "

  "reason" : [{ CodeableReference(Condition|Observation) }], // Reason or indication for ordering or not ordering the medication
  "courseOfTherapyType" : { CodeableConcept }, // Overall pattern of medication administration

  "insurance" : [{ Reference(ClaimResponse|Coverage) }], // Associated insurance coverage
  "note" : [{ Annotation }], // Information about the prescription
  "

  "renderedDosageInstruction" : "<markdown>", // Full representation of the dosage instructions
  "effectiveDosePeriod" : { Period }, // Period over which the medication is to be taken
  "dosageInstruction" : [{ Dosage }], // Specific instructions for how the medication should be taken

  "dispenseRequest" : { // Medication supply authorization
    "initialFill" : { // First fill details
      "quantity" : { Quantity(SimpleQuantity) }, // First fill quantity
      "duration" : { Duration } // First fill duration
    },
    "dispenseInterval" : { Duration }, // Minimum period of time between dispenses
    "validityPeriod" : { Period }, // Time period supply is authorized for
    "numberOfRepeatsAllowed" : "<unsignedInt>", // Number of refills authorized
    "quantity" : { Quantity(SimpleQuantity) }, // Amount of medication to supply per dispense
    "expectedSupplyDuration" : { Duration }, // Number of days supply per dispense
    "

    "dispenser" : { Reference(Organization) }, // Intended performer of dispense
    "dispenserInstruction" : [{ Annotation }], // Additional information for the dispenser
    "doseAdministrationAid" : { CodeableConcept } // Type of adherence packaging to use for the dispense

  },
  "substitution" : { // Any restrictions on medication substitution
    // allowed[x]: Whether substitution is allowed or not. One of these 2:
    "allowedBoolean" : <boolean>,
    "allowedCodeableConcept" : { CodeableConcept },
    "

    "reason" : { CodeableConcept } // Why should (not) substitution be made icon

  },
  "
  "

  "eventHistory" : [{ Reference(Provenance) }] // A list of events of interest in the lifecycle
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:MedicationRequest;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  # . One of these 2
    fhir: ]
    fhir:) ]
  # . One of these 2
    fhir: ]
    fhir:) ]
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
      fhir:
      fhir:
    ];
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ];
  fhir:
    # . One of these 2
      fhir: ]
      fhir: ]
    fhir:
  ];
  fhir:
  fhir:
  fhir:

  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* External ids for this request
  fhir:basedOn  ( [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest|ServiceRequest) ] ... ) ; # 0..* A plan or request that is fulfilled in whole or in part by this medication request
  fhir:priorPrescription [ Reference(MedicationRequest) ] ; # 0..1 Reference to an order/prescription that is being replaced by this MedicationRequest
  fhir:groupIdentifier [ Identifier ] ; # 0..1 Composite request this is part of
  fhir:status [ code ] ; # 1..1 active | on-hold | ended | stopped | completed | cancelled | entered-in-error | draft | unknown
  fhir:statusReason [ CodeableConcept ] ; # 0..1 Reason for current status
  fhir:statusChanged [ dateTime ] ; # 0..1 When the status was changed
  fhir:intent [ code ] ; # 1..1 proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* Grouping or category of medication request
  fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat
  fhir:doNotPerform [ boolean ] ; # 0..1 True if patient is to stop taking or not to start taking the medication
  fhir:medication [ CodeableReference(Medication) ] ; # 1..1 Medication to be taken
  fhir:subject [ Reference(Group|Patient) ] ; # 1..1 Individual or group for whom the medication has been requested
  fhir:informationSource  ( [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ... ) ; # 0..* The person or organization who provided the information about this request, if the source is someone other than the requestor
  fhir:encounter [ Reference(Encounter) ] ; # 0..1 Encounter created as part of encounter/admission/stay
  fhir:supportingInformation  ( [ Reference(Any) ] ... ) ; # 0..* Information to support fulfilling of the medication
  fhir:authoredOn [ dateTime ] ; # 0..1 When request was initially authored
  fhir:requester [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Who/What requested the Request
  fhir:reported [ boolean ] ; # 0..1 Reported rather than primary record
  fhir:performerType [ CodeableConcept ] ; # 0..1 Desired kind of performer of the medication administration
  fhir:performer  ( [ Reference(CareTeam|DeviceDefinition|HealthcareService|Organization|Patient|Practitioner|
  PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Intended performer of administration

  fhir:device  ( [ CodeableReference(DeviceDefinition) ] ... ) ; # 0..* Intended type of device for the administration
  fhir:recorder [ Reference(Practitioner|PractitionerRole) ] ; # 0..1 Person who entered the request
  fhir:reason  ( [ CodeableReference(Condition|Observation) ] ... ) ; # 0..* Reason or indication for ordering or not ordering the medication
  fhir:courseOfTherapyType [ CodeableConcept ] ; # 0..1 Overall pattern of medication administration
  fhir:insurance  ( [ Reference(ClaimResponse|Coverage) ] ... ) ; # 0..* Associated insurance coverage
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Information about the prescription
  fhir:renderedDosageInstruction [ markdown ] ; # 0..1 Full representation of the dosage instructions
  fhir:effectiveDosePeriod [ Period ] ; # 0..1 Period over which the medication is to be taken
  fhir:dosageInstruction  ( [ Dosage ] ... ) ; # 0..* Specific instructions for how the medication should be taken
  fhir:dispenseRequest [ # 0..1 Medication supply authorization
    fhir:initialFill [ # 0..1 First fill details
      fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 First fill quantity
      fhir:duration [ Duration ] ; # 0..1 First fill duration
    ] ;
    fhir:dispenseInterval [ Duration ] ; # 0..1 Minimum period of time between dispenses
    fhir:validityPeriod [ Period ] ; # 0..1 Time period supply is authorized for
    fhir:numberOfRepeatsAllowed [ unsignedInt ] ; # 0..1 Number of refills authorized
    fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 Amount of medication to supply per dispense
    fhir:expectedSupplyDuration [ Duration ] ; # 0..1 Number of days supply per dispense
    fhir:dispenser [ Reference(Organization) ] ; # 0..1 Intended performer of dispense
    fhir:dispenserInstruction  ( [ Annotation ] ... ) ; # 0..* Additional information for the dispenser
    fhir:doseAdministrationAid [ CodeableConcept ] ; # 0..1 Type of adherence packaging to use for the dispense
  ] ;
  fhir:substitution [ # 0..1 Any restrictions on medication substitution
    # allowed[x] : 1..1 Whether substitution is allowed or not. One of these 2
      fhir:allowed [  a fhir:boolean ; boolean ]
      fhir:allowed [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:reason [ CodeableConcept ] ; # 0..1 Why should (not) substitution be made
  ] ;
  fhir:eventHistory  ( [ Reference(Provenance) ] ... ) ; # 0..* A list of events of interest in the lifecycle

]

Changes since Release 4

MedicationRequest
MedicationRequest.statusChanged
  • No Changes Added Element
MedicationRequest.medication
  • Added Mandatory Element
MedicationRequest.informationSource
  • Added Element
MedicationRequest.reported
  • Added Element
MedicationRequest.performerType
  • Add Binding http://hl7.org/fhir/ValueSet/medication-intended-performer-role (extensible)
MedicationRequest.performer
  • Max Cardinality changed from 1 to *
  • Type Reference: Added Target Types DeviceDefinition, HealthcareService
  • Type Reference: Removed Target Type Device
MedicationRequest.device
  • Added Element
MedicationRequest.reason
  • Added Element
MedicationRequest.courseOfTherapyType
  • Add Binding http://hl7.org/fhir/ValueSet/medicationrequest-course-of-therapy (extensible)
MedicationRequest.renderedDosageInstruction
  • Added Element
MedicationRequest.effectiveDosePeriod
  • Added Element
MedicationRequest.dispenseRequest.dispenser
  • Added Element
MedicationRequest.dispenseRequest.dispenserInstruction
  • Added Element
MedicationRequest.dispenseRequest.doseAdministrationAid
  • Added Element
MedicationRequest.reported[x]
  • deleted
MedicationRequest.medication[x]
  • deleted
MedicationRequest.reasonCode
  • deleted
MedicationRequest.reasonReference
  • deleted
MedicationRequest.instantiatesCanonical
  • deleted
MedicationRequest.instantiatesUri
  • deleted
MedicationRequest.dispenseRequest.performer
  • deleted
MedicationRequest.detectedIssue
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

Conversions between R3 and R4 See R3 <--> R4 Conversion Maps (status = 36 tests that all execute ok. 8 fail round-trip testing and 36 r3 resources are invalid (0 errors). )

 

See the Profiles & Extensions and the alternate Additional definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis

MedicationRequest.substitution.allowed[x]
Path Definition ValueSet Type Reference Documentation
MedicationRequest.status MedicationrequestStatus (a valid code from MedicationRequest Status Codes ) Required medicationrequest

MedicationRequest Status Codes

MedicationRequest.statusReason MedicationRequestStatusReasonCodes Example medicationRequest

MedicationRequest Status Reason Codes

MedicationRequest.intent MedicationRequestIntent (a valid code from MedicationRequest Intent Codes ) Required medicationRequest

MedicationRequest Intent Codes

MedicationRequest.category MedicationRequestAdministrationLocationCodes Example medicationRequest Category

MedicationRequest Administration Location Codes

MedicationRequest.priority RequestPriority Required RequestPriority

Identifies the level of importance to be assigned to actioning the request.

MedicationRequest.medication[x] MedicationRequest.medication SNOMEDCTMedicationCodes Example SNOMEDCTMedicationCodes

This value set includes all drug or medicament substance codes and all pharmaceutical/biologic products from SNOMED CT - provided as an exemplar value set.

MedicationRequest.performerType MedicationIntendedPerformerRole Example Extensible ProcedurePerformerRoleCodes

Medication Intended Performer Role

MedicationRequest.reasonCode MedicationRequest.reason ConditionProblemDiagnosisCodes Example Condition/Problem/DiagnosisCodes

Example value set for Condition/Problem/Diagnosis codes.

MedicationRequest.courseOfTherapyType MedicationRequestCourseOfTherapyCodes Example Extensible medicationRequest

MedicationRequest Course of Therapy Codes

MedicationRequest.dispenseRequest.doseAdministrationAid MedicationDoseAids (a valid code from Medication dose aid ) Example

Medication Dose Aids

MedicationRequest.substitution.allowed[x] ActSubstanceAdminSubstitutionCode icon Preferred
MedicationRequest.substitution.reason SubstanceAdminSubstitutionReason icon Example SubstanceAdminSubstitutionReason

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.

In general, each prescribed drug will be a separate Medication Request.

When drug orders are grouped together at the time of order entry, but each of the drugs can be manipulated independently e.g. changing the status of one order to "completed" or "cancelled", changing another order status to "on-hold", the method to "group" all of the medication requests together is to use MedicationRequest.groupIdentifier element. All of the orders grouped together in this manner will have the same groupIdentifier, and separately, each order in the group may have a unique identifier.

There are cases that require grouping of Medication orders together when it is necessary to specify optionality e.g. order two drugs at one time, but stating either of these drugs may be used to treat the patient. The use of a RequestOrchestration should be used as a parent for the Medication orders that require this type of grouping. An example when it may be necessary to group medication orders together is when you specify:

  • timing relationships e.g. order drug "xyz" with dose 123, then taper the same drug to a different dose after some interval of time precedence. For example:
    • give drug "abc" followed by drug "def"
    • give drug 30 minutes before some procedure was performed.
  • more generically this supports - hierarchical groups of actions, where each specific action references the action to be performed (in terms of a Request resource), and each group describes additional behavior, relationships, and applicable conditions between the actions in the overall group.

Note that one should NOT use the List or Composition resource to accomplish the above requirements. You may use List or Composition for other business requirements, but not to address the specific requirements of grouping medication orders.

Search parameters for this resource. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Expression In Common
authoredon date Return prescriptions written on this date MedicationRequest.authoredOn
category token Returns prescriptions with different categories MedicationRequest.category
code token Return prescriptions of this medication code (MedicationRequest.medication as CodeableConcept) MedicationRequest.medication.concept 22 Resources
date combo-date date Returns medication request to be administered on a specific date or within a date range MedicationRequest.dosageInstruction.timing.event | (MedicationRequest.dosageInstruction.timing.repeat.bounds.ofType(Period))
encounter reference Return prescriptions with this encounter identifier MedicationRequest.encounter
( Encounter )
2 Resources
group-identifier token Composite request this is part of MedicationRequest.groupIdentifier
identifier token Return prescriptions with this external identifier MedicationRequest.identifier 65 Resources
intended-dispenser reference Returns prescriptions intended to be dispensed by this Organization MedicationRequest.dispenseRequest.performer MedicationRequest.dispenseRequest.dispenser
( Organization )
intended-performer reference Returns the intended performer of the administration of the medication request MedicationRequest.performer
( Practitioner , Organization , CareTeam , Device DeviceDefinition , Patient , HealthcareService , PractitionerRole , RelatedPerson )
intended-performertype token Returns requests for a specific type of performer MedicationRequest.performerType
intent token Returns prescriptions with different intents MedicationRequest.intent
medication reference Return prescriptions for this medication reference (MedicationRequest.medication as Reference) ( Medication ) MedicationRequest.medication.reference 4 Resources
patient reference Returns prescriptions for a specific patient MedicationRequest.subject.where(resolve() is Patient)
( Patient )
66 Resources
priority token Returns prescriptions with different priorities MedicationRequest.priority
requester reference Returns prescriptions prescribed by this prescriber MedicationRequest.requester
( Practitioner , Organization , Device , Patient , PractitionerRole , RelatedPerson )
status token Status of the prescription MedicationRequest.status 4 Resources
subject reference The identity of a patient to list orders for MedicationRequest.subject
( Group , Patient )