EHDS Logical Information Models
0.4.0 - draft

EHDS Logical Information Models, published by Xt-EHR. This guide is not an authorized publication; it is the continuous build for version 0.4.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/ and changes regularly. See the Directory of published versions

Logical Model: Dosage model

Official URL: http://www.xt-ehr.eu/fhir/models/StructureDefinition/EHDSDosage Version: 0.4.0
Draft as of 2026-02-22 Computable Name: EHDSDosage

The model covers usage instructions for administering a medicinal product, focusing on the most frequently used data elements. More complex dosage schemes may require additional elements, which should be communicated as part of the rendered dosage instructions element.

Usages:

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.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown

This structure is derived from Base

Summary

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown

Differential View

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. EHDSDosage 0..* Base Dosage model
... renderedDosageInstruction 0..1 string Full dosage information as human-readable text covering all dosage steps. Generating the text follows local rules and should include all locally implemented dosage data even when such elements are not present in this model.
... dosageDetails 0..* Base Details of single dosage scheme step
.... sequence 0..1 integer Order of the dosage instruction, in case one treatment consists of several dosage steps. When two schemes share the same sequence number, they are meant to be running in parallel.
.... note 0..1 string Patient oriented instructions as free text for this dosage step
.... doseAndRate 0..* Base Amount of medication administered per one dose (= one timing)
..... dose[x] 0..1 Amount of medication per one dose. (1 tablet, 2-3 tablets, 20ml)
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... doseQuantity Quantity
...... doseRange Range
..... rate[x] 0..1 Amount of medication per time period (e.g. 100mg per 1 hour). When rate is provided per 1 time unit, Quantity data type can be used with a suitable unit (e.g. mg/h, ug/min).
Binding Description: (preferred): UCUM (units of measurement), EDQM Standard Terms (units of presentation)
...... rateQuantity Quantity
...... rateRatio Ratio
.... repeat 0..1 Base Repetition of the administration.
..... bounds[x] 0..1 Time bounds for the treatment (current dosage scheme), Quantity contains a number of time units (e.g 10 days), Period contains start and end date (e.g. 05.08.2023 - 10.08.2023).
Binding Description: (preferred): UCUM
...... boundsQuantity Quantity
...... boundsPeriod Period
..... duration 0..1 Quantity Duration of administration (e.g '5 minutes', '1 hour')
Binding Description: (preferred): UCUM
..... frequency 0..1 Base Frequency of intake/administration (e.g 'three times a day')
...... numberOfTimes 0..1 integer Number of times per period (e.g '3 times')
...... period 0..1 Quantity Duration to which the frequency applies (e.g '... / 1 day')
Binding Description: (preferred): UCUM
..... dayOfWeek 0..* CodeableConcept The day of the week of administration, e.g Mon, Tue, etc
..... timeOfDay 0..* time Exact time of day of administration (e.g '10:00')
..... eventTime 0..* CodeableConcept Time period or event when the administration should happen ('before meal', 'immediately', 'morning')
.... asNeeded 0..1 boolean Take as needed
.... bodySite 0..1 EHDSBodyStructure Body site of administration
.... routeOfAdministration 0..1 CodeableConcept Route of administration
Binding Description: (preferred): EDQM Standard Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
EHDSDosage.dosageDetails.​doseAndRate.dose[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​doseAndRate.rate[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.bounds[x] Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.duration Base preferred Not State Unknown
EHDSDosage.dosageDetails.​repeat.frequency.period Base preferred Not State Unknown
EHDSDosage.dosageDetails.​routeOfAdministration Base preferred Not State Unknown

This structure is derived from Base

Summary

 

Other representations of profile: CSV, Excel

Notes:

Dosage examples

Simple dosage examples

The following examples represent relatively simple dosage patterns, which are common across prescribing domain. All these patterns use only one dosage regimen. The renderedDosageInstruction is autogenerated from the structured information, and the exact algorithm may be language and implementation specific.

  1 tablet 3 times a day for 7 days 15-20ml at 8AM and 8PM from 8.12.2025 to 15.12.2025 2 tablets every third day standing on your left foot 50mg per hour intravenously for 20 minutes every Monday half a tablet as needed before breakfast
renderedDosageInstruction "1 tablet 3 times a day. 7 days" "15-20ml, 8AM and 8PM. 8.-15.12.2025" "2 tbl in every 3 days. Additional comment: standing on left foot." "50mg/h for 20min. Monday. Route: introvenous." "0,5 tbl as needed. Before breakfast."
dosageDetails          
_patientInstruction     "standing on left foot"    
_doseAndRate          
_doseAndRate.dose[x]          
_doseAndRate.doseQuantity 1 tablet(s)   2 tablet(s)   0.5 tablet(s)
_doseAndRate.doseRange   15 ml - 20 ml      
_doseAndRate.rate[x]          
_doseAndRate.rateQuantity       50 mg/h  
_doseAndRate.rateRatio          
_repeat          
_repeat.bounds[x]          
_repeat.boundsQuantity 7 day(s)        
_repeat.boundsPeriod   8.12.2025 - 15.12.2025      
_repeat.duration       20 min  
_repeat.frequency          
_repeat.frequency.numberOfTimes 3   1    
_repeat.frequency.period 1 day(s)   3 day(s)    
_repeat.dayOfWeek       Monday  
_repeat.timeOfDay   8:00, 20:00      
_repeat.eventTime         before breakfast
_asNeeded         TRUE
_bodySite          
_routeOfAdministration       intravenous  
Alternating dosage example

The following example repeats dosageDetails block. Rendered dosage information includes both regimens. In this case, both regimens are happening in parallel.

Element Values. Multiple dosageDetails are separated by "//"
renderedDosageInstruction * 1 drop; in the morning. Site: left eye. 7 days. * 2 drops; in the evening. Site: left eye. 7 days.
dosageDetails  
_sequence 1 // 1
_note  
_doseAndRate  
_doseAndRate.dose[x]  
_doseAndRate.doseQuantity 1 drop(s) // 2 drop(s)
_doseAndRate.doseRange  
_doseAndRate.rate[x]  
_doseAndRate.rateQuantity  
_doseAndRate.rateRatio  
_repeat  
_repeat.bounds[x]  
_repeat.boundsQuantity 7 day(s) // 7 day(s)
_repeat.boundsPeriod  
_repeat.duration  
_repeat.frequency  
_repeat.frequency.numberOfTimes 1 // 1
_repeat.frequency.period 1 day(s) // 1 day(s)
_repeat.dayOfWeek  
_repeat.timeOfDay  
_repeat.eventTime morning // evening
_asNeeded  
_bodySite left eye // left eye
_routeOfAdministration