## Profile Comparison between http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest vs http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest

Left: | US Core MedicationRequest Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest)
Right: | US Core MedicationRequest Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest)

### Messages

Error | StructureDefinition.version | Values for version differ: '5.0.1' vs '8.0.1'
Information | StructureDefinition.date | Values for date differ: '2020-06-26' vs '2023-10-17'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International - Cross-Group Projects' vs 'HL7 International / Cross-Group Projects'
Information | StructureDefinition.definition | Values for definition differ: '\-' vs '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.'
Information | MedicationRequest.language | Example/preferred bindings differ at MedicationRequest.language using binding from USCoreMedicationRequestProfile
Information | StructureDefinition.short | Values for short differ: 'Additional content defined by implementations' vs 'Extension'
Information | StructureDefinition.definition | Values for definition differ: 'May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.' vs 'An Extension'
Information | MedicationRequest.requester | Element minimum cardinalities differ: '1' vs '0'
Information | StructureDefinition.short | Values for short differ: 'Reason or indication for ordering or not ordering the medication' vs '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Reason or indication for ordering or not ordering the medication'
Information | StructureDefinition.short | Values for short differ: 'Condition or observation that supports why the prescription is being written' vs '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Condition or Observation that supports the prescription'
Warning | MedicationRequest.dosageInstruction.timing | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dosageInstruction.route | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dosageInstruction.doseAndRate | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dosageInstruction.doseAndRate.dose[x] | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dispenseRequest | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dispenseRequest.numberOfRepeatsAllowed | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationRequest.dispenseRequest.quantity | Elements differ in definition for mustSupport: 'false' vs 'true'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationRequest |
copyright | Used by permission of HL7 International, all rights reserved Creative Commons License |
date | 2020-06-26 | 2023-10-17 | Values Differ
description | The US Core Medication Request Profile is based upon the core FHIR MedicationRequest Resource and meets the U.S. Core Data for Interoperability (USCDI) v2 'Medications' requirements. The MedicationRequest resource can be used to record a patient’s medication prescription or order. This profile sets minimum expectations for the MedicationRequest resource to record, search, and fetch a patient's medication to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies and value sets **SHALL** be present in the resource when using this profile. It provides the floor for standards development for specific uses cases. | The US Core MedicationRequest Profile inherits from the FHIR [MedicationRequest](https://hl7.org/fhir/R4/medicationrequest.html) resource; refer to it for scope and usage definitions. This profile meets the requirements of the [U.S. Core Data for Interoperability (USCDI)](https://www.healthit.gov/isp/united-states-core-data-interoperability-uscdi) *Medications* Data Class. This profile sets minimum expectations for the MedicationRequest resource to record, search, and fetch a patient's medication prescriptions or orders. It specifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption. | Values Differ
experimental | false |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | urn:iso:std:iso:3166#US |
kind | resource |
name | USCoreMedicationRequestProfile |
publisher | HL7 International - Cross-Group Projects | HL7 International / Cross-Group Projects | Values Differ
purpose |  |
status | active |
title | US Core MedicationRequest Profile |
type | MedicationRequest |
url | http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest |
version | 5.0.1 | 8.0.1 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
MedicationRequest |  | 0..* | MedicationRequest | Ordering of medication for patient or group | C | 0..* | MedicationRequest | Ordering of medication for patient or group Constraints: us-core-21 |
id | Σ | 0..1 | string | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
| Example/preferred bindings differ at MedicationRequest.language using binding from USCoreMedicationRequestProfile
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier |  | 0..* | Identifier | External ids for this request |  | 0..* | Identifier | External ids for this request |
status | ?!S Σ | 1..1 | code | active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown Binding: ?? (required): A code specifying the state of the prescribing event. Describes the lifecycle of the prescription. | ?!S Σ | 1..1 | code | active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown Binding: ?? (required): A code specifying the state of the prescribing event. Describes the lifecycle of the prescription. |
statusReason |  | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): Identifies the reasons for a given status. |  | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): Identifies the reasons for a given status. |
intent | ?!S Σ | 1..1 | code | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: ?? (required): The kind of medication order. | ?!S Σ C | 1..1 | code | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: ?? (required): The kind of medication order. |
Slices for category | S | 0..* | CodeableConcept | Type of medication usage Slice: Unordered, Open by pattern:$this Binding: ?? (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment. | S | 0..* | CodeableConcept | Type of medication usage Slice: Unordered, Open by value:$this Binding: ?? (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment. |
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: ?? (required): Identifies the level of importance to be assigned to actioning the request. | Σ | 0..1 | code | routine | urgent | asap | stat Binding: ?? (required): Identifies the level of importance to be assigned to actioning the request. |
doNotPerform | ?!Σ | 0..1 | boolean | True if request is prohibiting action | ?!Σ | 0..1 | boolean | True if request is prohibiting action |
reported[x] | S Σ | 0..1 | boolean S, Reference S(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | US Core RelatedPerson Profile) | Reported rather than primary record | S Σ | 0..1 | boolean S, Reference S(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | US Core PractitionerRole Profile | US Core RelatedPerson Profile) | Reported rather than primary record |
medication[x] | S Σ | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | Medication to be taken Binding: ?? (extensible) | S Σ | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | Medication to be taken Binding: ?? (extensible) |
subject | S Σ | 1..1 | Reference(US Core Patient Profile) | Who or group medication request is for | S Σ | 1..1 | Reference(US Core Patient Profile S | Group) | Who or group medication request is for |
encounter | S | 0..1 | Reference(US Core Encounter Profile) | Encounter created as part of encounter/admission/stay | S | 0..1 | Reference(US Core Encounter Profile) | Encounter created as part of encounter/admission/stay |
supportingInformation |  | 0..* | Reference(Resource) | Information to support ordering of the medication |  | 0..* | Reference(Resource) | Information to support ordering of the medication |
authoredOn | S Σ | 0..1 | dateTime | When request was initially authored | S Σ | 0..1 | dateTime | When request was initially authored |
requester | S Σ | 1..1 | Reference(US Core Practitioner Profile S | US Core Patient Profile | US Core Organization Profile | US Core PractitionerRole Profile | US Core RelatedPerson Profile | Device) | Who/What requested the Request | S Σ C | 0..1 | Reference(US Core Practitioner Profile S | US Core Patient Profile | US Core Organization Profile | US Core PractitionerRole Profile | US Core RelatedPerson Profile | Device) | Who/What requested the Request | Element minimum cardinalities differ: '1' vs '0'
performer |  | 0..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam) | Intended performer of administration |  | 0..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam) | Intended performer of administration |
performerType | Σ | 0..1 | CodeableConcept | Desired kind of performer of the medication administration Binding: ?? (example): Identifies the type of individual that is desired to administer the medication. | Σ | 0..1 | CodeableConcept | Desired kind of performer of the medication administration Binding: ?? (example): Identifies the type of individual that is desired to administer the medication. |
recorder |  | 0..1 | Reference(Practitioner | PractitionerRole) | Person who entered the request |  | 0..1 | Reference(Practitioner | PractitionerRole) | Person who entered the request |
reasonCode |  | 0..* | CodeableConcept | Reason or indication for ordering or not ordering the medication Binding: ?? (example): A coded concept indicating why the medication was ordered. |  | 0..* | CodeableConcept | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Reason or indication for ordering or not ordering the medication Binding: ?? (extensible) |
reasonReference |  | 0..* | Reference(Condition | Observation) | Condition or observation that supports why the prescription is being written |  | 0..* | Reference(Condition | Observation) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: US Core Condition or Observation that supports the prescription |
instantiatesCanonical | Σ | 0..* | canonical() | Instantiates FHIR protocol or definition | Σ | 0..* | canonical() | Instantiates FHIR protocol or definition |
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | Σ | 0..* | uri | Instantiates external protocol or definition |
basedOn | Σ | 0..* | Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) | What request fulfills | Σ | 0..* | Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) | What request fulfills |
groupIdentifier | Σ | 0..1 | Identifier | Composite request this is part of | Σ | 0..1 | Identifier | Composite request this is part of |
courseOfTherapyType |  | 0..1 | CodeableConcept | Overall pattern of medication administration Binding: ?? (example): Identifies the overall pattern of medication administratio. |  | 0..1 | CodeableConcept | Overall pattern of medication administration Binding: ?? (example): Identifies the overall pattern of medication administratio. |
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage |
note |  | 0..* | Annotation | Information about the prescription |  | 0..* | Annotation | Information about the prescription |
dosageInstruction | S | 0..* | Dosage | How the medication should be taken | S | 0..* | Dosage | How the medication should be taken |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
sequence | Σ | 0..1 | integer | The order of the dosage instructions | Σ | 0..1 | integer | The order of the dosage instructions |
text | S Σ | 0..1 | string | Free text dosage instructions e.g. SIG | S Σ | 0..1 | string | Free text dosage instructions e.g. SIG |
additionalInstruction | Σ | 0..* | CodeableConcept | Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" Binding: ?? (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". | Σ | 0..* | CodeableConcept | Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" Binding: ?? (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". |
patientInstruction | Σ | 0..1 | string | Patient or consumer oriented instructions | Σ | 0..1 | string | Patient or consumer oriented instructions |
timing | Σ | 0..1 | Timing | When medication should be administered | S Σ | 0..1 | Timing | When medication should be administered | Elements differ in definition for mustSupport: 'false' vs 'true'
asNeeded[x] | Σ | 0..1 | boolean, CodeableConcept | Take "as needed" (for x) Binding: ?? (example): 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. | Σ | 0..1 | boolean, CodeableConcept | Take "as needed" (for x) Binding: ?? (example): 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. |
site | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. |
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. | S Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (extensible): SNOMED CT and NCI Thesaurus SPL route of administration codes | Elements differ in definition for mustSupport: 'false' vs 'true'
method | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: ?? (example): A coded concept describing the technique by which the medicine is administered. | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: ?? (example): A coded concept describing the technique by which the medicine is administered. |
doseAndRate | Σ | 0..* | Element | Amount of medication administered | S Σ | 0..* | Element | Amount of medication administered | Elements differ in definition for mustSupport: 'false' vs 'true'
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
type | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: ?? (example): The kind of dose or rate specified. | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: ?? (example): The kind of dose or rate specified. |
dose[x] | Σ | 0..1 | Range, ?? | Amount of medication per dose | S Σ | 0..1 | ??, Range | Amount of medication per dose Binding: ?? (preferred)
Additional Bindings | Purpose
?? | Max Binding
| Elements differ in definition for mustSupport: 'false' vs 'true'
rate[x] | Σ | 0..1 | Ratio, Range, ?? | Amount of medication per unit of time | Σ | 0..1 | Ratio, Range, ?? | Amount of medication per unit of time |
maxDosePerPeriod | Σ | 0..1 | Ratio | Upper limit on medication per unit of time | Σ | 0..1 | Ratio | Upper limit on medication per unit of time |
maxDosePerAdministration | Σ | 0..1 | ?? | Upper limit on medication per administration | Σ | 0..1 | ?? | Upper limit on medication per administration |
maxDosePerLifetime | Σ | 0..1 | ?? | Upper limit on medication per lifetime of the patient | Σ | 0..1 | ?? | Upper limit on medication per lifetime of the patient |
dispenseRequest |  | 0..1 | BackboneElement | Medication supply authorization | S | 0..1 | BackboneElement | Medication supply authorization | Elements differ in definition for mustSupport: 'false' vs 'true'
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
initialFill |  | 0..1 | BackboneElement | First fill details |  | 0..1 | BackboneElement | First fill details |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
quantity |  | 0..1 | ?? | First fill quantity |  | 0..1 | ?? | First fill quantity |
duration |  | 0..1 | Duration | First fill duration |  | 0..1 | Duration | First fill duration |
dispenseInterval |  | 0..1 | Duration | Minimum period of time between dispenses |  | 0..1 | Duration | Minimum period of time between dispenses |
validityPeriod |  | 0..1 | Period | Time period supply is authorized for |  | 0..1 | Period | Time period supply is authorized for |
numberOfRepeatsAllowed |  | 0..1 | unsignedInt | Number of refills authorized | S | 0..1 | unsignedInt | Number of refills authorized | Elements differ in definition for mustSupport: 'false' vs 'true'
quantity |  | 0..1 | ?? | Amount of medication to supply per dispense | S | 0..1 | ?? | Amount of medication to supply per dispense | Elements differ in definition for mustSupport: 'false' vs 'true'
expectedSupplyDuration |  | 0..1 | Duration | Number of days supply per dispense |  | 0..1 | Duration | Number of days supply per dispense |
performer |  | 0..1 | Reference(Organization) | Intended dispenser |  | 0..1 | Reference(Organization) | Intended dispenser |
substitution |  | 0..1 | BackboneElement | Any restrictions on medication substitution |  | 0..1 | BackboneElement | Any restrictions on medication substitution |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
allowed[x] |  | 1..1 | boolean, CodeableConcept | Whether substitution is allowed or not Binding: ?? (example): Identifies the type of substitution allowed. |  | 1..1 | boolean, CodeableConcept | Whether substitution is allowed or not Binding: ?? (example): Identifies the type of substitution allowed. |
reason |  | 0..1 | CodeableConcept | Why should (not) substitution be made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |  | 0..1 | CodeableConcept | Why should (not) substitution be made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |
priorPrescription |  | 0..1 | Reference(MedicationRequest) | An order/prescription that is being replaced |  | 0..1 | Reference(MedicationRequest) | An order/prescription that is being replaced |
detectedIssue |  | 0..* | Reference(DetectedIssue) | Clinical Issue with action |  | 0..* | Reference(DetectedIssue) | Clinical Issue with action |
eventHistory |  | 0..* | Reference(Provenance) | A list of events of interest in the lifecycle |  | 0..* | Reference(Provenance) | A list of events of interest in the lifecycle |
Documentation for this format