Medication Prescription and Dispense (MPD)
1.0.0-comment-3 - ballot

Medication Prescription and Dispense (MPD), published by Integrating the Healthcare Enterprise (IHE). This guide is not an authorized publication; it is the continuous build for version 1.0.0-comment-3 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IHE/pharm-mpd/tree/109/merge and changes regularly. See the Directory of published versions

## Logical Model: Medication order (model)

Official URL: https://profiles.ihe.net/PHARM/MPD/StructureDefinition/IHEMedicationOrderModel | Version: 1.0.0-comment-3
Active as of 2026-04-22 | Computable Name: IHEMedicationOrderModel
Copyright/Legal: IHE http://www.ihe.net/Governance/#Intellectual_Property

Logical model for medication prescription or other types of medication orders

Usages:

- Refer to this Logical Model: Medication dispense (model)

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
@id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Base

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
@id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Base

Summary

Mandatory: 0 element(7 nested mandatory elements)

Structures

This structure refers to these other structures:

- Practitioner (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/PractitionerBasic)
- Patient (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/PatientBasic)
- IHE Medication Order (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/IHEMedicationOrder)
- Medicinal product (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/MedicinalProductModel)
- Dosaging (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/DosagingInformation)

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
@id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from Base

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
IHEMedicationOrderModel |  | 0..* | Base | Medication order (model) Instances of this logical model can be the target of a Reference
groupIdentifier |  | 0..1 | Identifier | Identifier for the group that this prescription belongs to. This might be the common identifier in use cases where one national prescription contains several medication items, which can be handled as separate orders
identifier |  | 1..* | Identifier | Business identifier(s) for the prescription
prescriber |  | 1..1 | Reference(Practitioner (model) | PractitionerRole) | The person who made the prescription, and who takes the responsibility of the treatment
issueDate |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care practicioner
patient |  | 1..1 | Reference(Patient (model)) | The person for whom the medication is prescribed/ordered
recorder |  | 0..1 | Reference(Practitioner (model) | PractitionerRole) | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment
statusReason |  | 0..* | CodeableConcept | Reason for the current status of prescription, for example the reason why the prescription was made invalid
basedOn |  | 0..1 | Reference(IHE Medication Order) | What this order is based on
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date.
prescriptionIntent |  | 0..1 | CodeableConcept | Type of intent of the prescription - prophylaxis, treatment, anesthesia, etc
medication |  | 1..1 | Reference(Medicinal product (model)) | Prescribed product, branded, generic, virtual, extemporal, etc
indication |  | 0..* | CodeableConcept | Reason for the prescription (typically diagnosis, prophylaxis, or a procedure)
indicationText |  | 0..* | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
indicationReference |  | 0..* | string | Reason for the prescription - as a reference to a problem, result, etc.
treatmentPeriod |  | 0..1 | Period | Period over which the medication is to be taken (in case of multiple dosaging schemes, this would be the overall period of all dosages.)
quantityPrescribed |  | 0..1 | Quantity | Overall quantity of prescribed product (e.g number of packages or number of tablets).
dosageInstructions |  | 0..* | Reference(Dosaging (model)) | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | BackboneElement | Whether and which type of substitution is allowed for this medication treatment line
@id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
allowed[x] |  | 0..1 |  | Whether substitution is allowed or not (or type of substitution).
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
offLabel |  | 0..1 | Base | Indicates that the prescriber has knowingly prescribed the medication for an indication, age group, dosage, or route of administration that is not approved by the regulatory agencies and is not mentioned in the prescribing information for the product.
isOffLabelUse |  | 1..1 | boolean | Indicates off-label use. Must be 'true' when .reason is provided.
reason[x] |  | 0..* |  | Reason or related clarification for off-label use.
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorized
minimumDispenseInterval |  | 0..1 | Duration | Minimum Dispense Interval
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Constraints

Id | Grade | Path(s) | Description | Expression
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from Base

Summary

Mandatory: 0 element(7 nested mandatory elements)

Structures

This structure refers to these other structures:

- Practitioner (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/PractitionerBasic)
- Patient (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/PatientBasic)
- IHE Medication Order (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/IHEMedicationOrder)
- Medicinal product (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/MedicinalProductModel)
- Dosaging (model) (https://profiles.ihe.net/PHARM/MPD/StructureDefinition/DosagingInformation)

Other representations of profile: CSV, Excel

### Notes:

Detailed diagram: