EHDS Logical Information Models
0.1.0 - ci-build

EHDS Logical Information Models, published by Xt-EHR. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/Xt-EHR/xt-ehr-common/tree/stakeholder-consultation-D6-1 and changes regularly. See the Directory of published versions

## Logical Model: Medication prescription model

Official URL: https://www.xt-ehr.eu/specifications/fhir/StructureDefinition/EHDSMedicationPrescription | Version: 0.1.0
Draft as of 2025-07-08 | Computable Name: EHDSMedicationPrescription

Logical model for medication prescription. A prescription contains one or more prescription items.

Usages:

- Use this Logical Model: Medication dispense decline model

### Views of Logical Model

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

- Differential Table
- Snapshot Table

This structure is derived from EHDSDataSet

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
EHDSMedicationPrescription |  | 0..* | EHDSDataSet | Elements defined in Ancestors:header, presentedForm Medication prescription model Instances of this logical model can be the target of a Reference
header |  | 1..1 | Base | Prescription header
subject |  | 1..1 | EHDSPatient | The person for whom the medication is prescribed/ordered. [Used for searching]
identifier |  | 0..* | Identifier | Business identifier(s) for the prescription. [Used for searching]
authorship |  |  |  |
author[x] |  | 1..1 | EHDSHealthProfessional, EHDSOrganisation, EHDSDevice | The prescriber, the person who made the prescription, and who takes the responsibility of the treatment. [Used for searching]
datetime |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care professional. [Used for searching]
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment. For multi-item prescription, the status of prescription is often related to statuses of single lines. In case of single-item prescriptions, the status for line is usually the status of prescription. [Used for searching]
statusReason[x] |  | 0..1 | CodeableConcept, string | Reason for the current status of prescription, for example the reason why the prescription was made invalid or why the prescription was changed from previous
recorder |  | 0..1 | EHDSHealthProfessional | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate. [Used for searching]
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date. [Used for searching]
presentedForm |  | 0..* | EHDSAttachment | Entire prescription as issued. Various formats could be provided, PDF format is recommended.
comment |  | 0..* | string | Additional information or comments
prescriptionItem |  | 1..* | Base | Prescription line for one medication. In many countries, only one item is allowed. In case multiple medications are allowed, all lines need to be authored together.
identifier |  | 0..1 | Identifier | Identifier for a single item on prescription, if exists. In case of single-item prescription, this identifier is typically the same as prescription identifier.
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
medication |  | 1..1 | EHDSMedication | Prescribed product, branded, generic, virtual, extemporal, etc
indication[x] |  | 0..* |  | Reason for the prescription (typically diagnosis, or a procedure)
indicationCodeableConcept |  |  | CodeableConcept |
indicationEHDSCondition |  |  | EHDSCondition |
indicationText |  | 0..1 | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
prescriptionIntent |  | 0..1 | CodeableConcept | Intent of the prescription - prophylaxis, treatment, anesthesia, 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). Binding Description: (preferred): UCUM, EDQM Standard Terms
dosageInstructions |  | 0..* | EHDSDosaging | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | Base | Whether and which type of substitution is allowed for this medication treatment item
allowed[x] |  | 0..1 |  | Whether and to what extent substitution is allowed.
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement (e.g. Biological product, Patient allergic to an excipient in alternative products, etc)
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
status |  | 1..1 | CodeableConcept | Status of a single item of a multi-item prescription. In case of single-item prescriptions, the status of prescription has the same meaning as the status of the item.
statusReason[x] |  | 0..1 |  | Reason for the current status of prescription, for example the reason why the prescription was made invalid or why the prescription was changed from previous
statusReasonCodeableConcept |  |  | CodeableConcept |
statusReasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorised
minimumDispenseInterval |  | 0..1 | Quantity | Minimum Dispense Interval
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 drug
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 |
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Terminology Bindings (Differential)

Path | Conformance | ValueSet | URI
EHDSMedicationPrescription.prescriptionItem.quantityPrescribed | preferred |

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
EHDSMedicationPrescription |  | 0..* | EHDSDataSet | Elements defined in Ancestors:header, presentedForm Medication prescription model Instances of this logical model can be the target of a Reference
header |  | 1..1 | Base | Prescription header
subject |  | 1..1 | EHDSPatient | The person for whom the medication is prescribed/ordered. [Used for searching]
identifier |  | 0..* | Identifier | Business identifier(s) for the prescription. [Used for searching]
authorship |  | 1..* | Base | Authorship
author[x] |  | 1..1 |  | The prescriber, the person who made the prescription, and who takes the responsibility of the treatment. [Used for searching]
authorEHDSHealthProfessional |  |  | EHDSHealthProfessional |
authorEHDSOrganisation |  |  | EHDSOrganisation |
authorEHDSDevice |  |  | EHDSDevice |
datetime |  | 1..1 | dateTime | Time of issuing (signing) the prescription by health care professional. [Used for searching]
lastUpdate |  | 0..1 | dateTime | Date and time of the last update to the resource
status |  | 1..1 | CodeableConcept | Status of the prescription, this should not be status of treatment. For multi-item prescription, the status of prescription is often related to statuses of single lines. In case of single-item prescriptions, the status for line is usually the status of prescription. [Used for searching]
statusReason[x] |  | 0..1 |  | Reason for the current status of prescription, for example the reason why the prescription was made invalid or why the prescription was changed from previous
statusReasonCodeableConcept |  |  | CodeableConcept |
statusReasonString |  |  | string |
language |  | 0..1 | CodeableConcept | Language Binding Description: (preferred): BCP 47
version |  | 0..1 | string | Version
recorder |  | 0..1 | EHDSHealthProfessional | The recorder of the prescription/draft in the information system
recordingDate |  | 0..1 | dateTime | Time of authoring the prescription/draft in the information system
validFrom |  | 0..1 | dateTime | Effective date of the prescription. The prescription is not dispensable before this date. In most cases this information repeats issueDate. [Used for searching]
validUntil |  | 0..1 | dateTime | The validity period end date. The prescription is not dispensable after this date. [Used for searching]
presentedForm |  | 0..* | EHDSAttachment | Entire prescription as issued. Various formats could be provided, PDF format is recommended.
comment |  | 0..* | string | Additional information or comments
prescriptionItem |  | 1..* | Base | Prescription line for one medication. In many countries, only one item is allowed. In case multiple medications are allowed, all lines need to be authored together.
identifier |  | 0..1 | Identifier | Identifier for a single item on prescription, if exists. In case of single-item prescription, this identifier is typically the same as prescription identifier.
category |  | 0..* | CodeableConcept | Category or categories of prescription. For example type of reimbursement, or type of prescription (e.g. hospital, private, etc).
medication |  | 1..1 | EHDSMedication | Prescribed product, branded, generic, virtual, extemporal, etc
indication[x] |  | 0..* |  | Reason for the prescription (typically diagnosis, or a procedure)
indicationCodeableConcept |  |  | CodeableConcept |
indicationEHDSCondition |  |  | EHDSCondition |
indicationText |  | 0..1 | string | Reason for the prescription in textual form. This might not be allowed by some implementations.
prescriptionIntent |  | 0..1 | CodeableConcept | Intent of the prescription - prophylaxis, treatment, anesthesia, 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). Binding Description: (preferred): UCUM, EDQM Standard Terms
dosageInstructions |  | 0..* | EHDSDosaging | Dosaging and administration instructions
preparationInstructions |  | 0..1 | string | Additional instructions about preparation or dispense
substitution |  | 0..1 | Base | Whether and which type of substitution is allowed for this medication treatment item
allowed[x] |  | 0..1 |  | Whether and to what extent substitution is allowed.
allowedBoolean |  |  | boolean |
allowedCodeableConcept |  |  | CodeableConcept |
reason[x] |  | 0..1 |  | Reason for the substitution requirement (e.g. Biological product, Patient allergic to an excipient in alternative products, etc)
reasonCodeableConcept |  |  | CodeableConcept |
reasonString |  |  | string |
status |  | 1..1 | CodeableConcept | Status of a single item of a multi-item prescription. In case of single-item prescriptions, the status of prescription has the same meaning as the status of the item.
statusReason[x] |  | 0..1 |  | Reason for the current status of prescription, for example the reason why the prescription was made invalid or why the prescription was changed from previous
statusReasonCodeableConcept |  |  | CodeableConcept |
statusReasonString |  |  | string |
repeatsAllowed |  | 0..1 | integer | Number of refills authorised
minimumDispenseInterval |  | 0..1 | Quantity | Minimum Dispense Interval
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 drug
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 |
comment |  | 0..* | string | Additional information or comments
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
EHDSMedicationPrescription.header.language | preferred |
EHDSMedicationPrescription.prescriptionItem.quantityPrescribed | preferred |

Other representations of model: CSV, Excel