CH EMED EPR
2.0.1-ci-build - ci-build Switzerland flag

CH EMED EPR, published by CARA. This guide is not an authorized publication; it is the continuous build for version 2.0.1-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/CARA-ch/ch-emed-epr/ and changes regularly. See the Directory of published versions

Data Type Profile: Dosage (MedicationStatement / MedicationDispense)

Official URL: http://fhir.ch/ig/ch-emed-epr/StructureDefinition/ch-emed-epr-dosage Version: 2.0.1-ci-build
Draft as of 2025-01-23 Computable Name: CHEMEDEPRDosage

Copyright/Legal: CC0-1.0

Definition of the main dosage element (used in MedicationStatement / MedicationDispense)

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. Dosage C 0..* CHEMEDDosage CH EMED Dosage (MedicationStatement / MedicationDispense)
ele-1: All FHIR elements must have a @value or children
ch-dosage-4: For split dosage timing event and dose/rate are required
base-dosage-text: It is a strong recommendation that the base dosage should contain the whole dosage information as narrative, including the information from split dosage elements.
... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... text SΣD 0..1 string Narrative representation of the full dosage (including split dosage elements if they exist) information. SHOULD be provided.
ele-1: All FHIR elements must have a @value or children
... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".


ele-1: All FHIR elements must have a @value or children
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... text Σ 1..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... timing Σ 0..1 Timing When medication should be administered
ele-1: All FHIR elements must have a @value or children
.... id D 0..1 string ✕ This element is not supported
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... event ΣD 0..* dateTime ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
.... repeat ΣC 0..1 Element When the event is to occur
ele-1: All FHIR elements must have a @value or children
tim-1: if there's a duration, there needs to be duration units
tim-2: if there's a period, there needs to be period units
tim-4: duration SHALL be a non-negative value
tim-5: period SHALL be a non-negative value
tim-6: If there's a periodMax, there must be a period
tim-7: If there's a durationMax, there must be a duration
tim-8: If there's a countMax, there must be a count
tim-9: If there's an offset, there must be a when (and not C, CM, CD, CV)
tim-10: If there's a timeOfDay, there cannot be a when, or vice versa
..... id D 0..1 string ✕ This element is not supported
..... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... Slices for bounds[x] Σ 0..1 Period Length/Range of lengths, or (Start and/or end) limits
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
...... bounds[x]:boundsPeriod SΣ 0..1 Period Start and/or end of treatment
ele-1: All FHIR elements must have a @value or children
..... count ΣD 0..1 positiveInt ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... countMax ΣD 0..1 positiveInt ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... duration ΣD 0..1 decimal ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... durationMax ΣD 0..1 decimal ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... durationUnit ΣD 0..1 code ✕ This element is not supported
Binding: UnitsOfTime (required): A unit of time (units from UCUM).


ele-1: All FHIR elements must have a @value or children
..... frequency ΣD 0..1 positiveInt ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... frequencyMax ΣD 0..1 positiveInt ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... period ΣD 0..1 decimal ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... periodMax ΣD 0..1 decimal ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... periodUnit ΣD 0..1 code ✕ This element is not supported
Binding: UnitsOfTime (required): A unit of time (units from UCUM).


ele-1: All FHIR elements must have a @value or children
..... dayOfWeek ΣD 0..* code ✕ This element is not supported
Binding: DaysOfWeek (required)
ele-1: All FHIR elements must have a @value or children
..... timeOfDay ΣD 0..* time ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
..... when SΣC 0..* code ... It shall only contain values from Event Timings
Binding: EventTiming (required): Real world event relating to the schedule.


ele-1: All FHIR elements must have a @value or children
ch-emed-event-timing: For the representation of the time of administration according to the 1-1-1-1 scheme, the values MORN-NOON-EVE-NIGHT are highly recommended.
only-standard-event-timings: The timing event shall only be 'MORN', 'NOON', 'EVE' or 'NIGHT'.
..... offset ΣD 0..1 unsignedInt ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children
.... code ΣD 0..1 CodeableConcept ✕ This element is not supported
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.


ele-1: All FHIR elements must have a @value or children
... Slices for asNeeded[x] Σ 0..1 boolean Take "as needed" (for x)
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
.... asNeeded[x]:asNeededBoolean Σ 0..1 boolean In reserve (to be taken by the patient only if the need arises - e.g. pains)
ele-1: All FHIR elements must have a @value or children
... site ΣD 0..1 CodeableConcept ✕ This element is not supported
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.


ele-1: All FHIR elements must have a @value or children
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... text Σ 1..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... route Σ 0..1 CodeableConcept Route of administration
Binding: EDQM - RouteOfAdministration (required)
ele-1: All FHIR elements must have a @value or children
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... coding SΣ 1..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
..... system Σ 1..1 uri Identity of the terminology system
ele-1: All FHIR elements must have a @value or children
..... code Σ 1..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
.... text Σ 1..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... method ΣD 0..1 CodeableConcept ✕ This element is not supported
Binding: EDQM - Administration Method (required)
ele-1: All FHIR elements must have a @value or children
.... extension D 0..* Extension ✕ This element is not supported
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... coding Σ 1..* Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children
..... system Σ 1..1 uri Identity of the terminology system
ele-1: All FHIR elements must have a @value or children
..... code Σ 1..1 code Symbol in syntax defined by the system
ele-1: All FHIR elements must have a @value or children
.... text Σ 1..1 string Plain text representation of the concept
ele-1: All FHIR elements must have a @value or children
... doseAndRate Σ 0..1 Element Amount of medication administered
ele-1: All FHIR elements must have a @value or children
.... type ΣD 0..1 CodeableConcept ✕ This element is not supported
Binding: DoseAndRateType (example): The kind of dose or rate specified.


ele-1: All FHIR elements must have a @value or children
.... Slices for dose[x] SΣ 0..1 Amount of medication per dose
Slice: Unordered, Closed by type:$this
ele-1: All FHIR elements must have a @value or children
..... doseRange Range(CHCoreRangeWithEmedUnits)
..... doseQuantity Quantity(CHCoreQuantityWithEmedUnits)
..... dose[x]:doseQuantity SΣ 0..1 CHEMEDEPRAmountQuantity Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
..... dose[x]:doseRange SΣ 0..1 CHEMEDEPRAmountRange Amount of medication per dose
ele-1: All FHIR elements must have a @value or children
.... rate[x] Σ 0..1 CHEMEDEPRRatioAmountPerTime Amount of medication per unit of time
ele-1: All FHIR elements must have a @value or children
... maxDosePerPeriod Σ 0..1 CHEMEDEPRRatioAmountPerTime Upper limit on medication per unit of time
ele-1: All FHIR elements must have a @value or children
... maxDosePerAdministration Σ 0..1 CHEMEDEPRAmountQuantity Upper limit on medication per administration
ele-1: All FHIR elements must have a @value or children
... maxDosePerLifetime ΣD 0..1 CHEMEDEPRAmountQuantity ✕ This element is not supported
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Dosage.additionalInstructionexampleSNOMEDCTAdditionalDosageInstructions
http://hl7.org/fhir/ValueSet/additional-instruction-codes
from the FHIR Standard
Dosage.timing.repeat.durationUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
from the FHIR Standard
Dosage.timing.repeat.periodUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
from the FHIR Standard
Dosage.timing.repeat.dayOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
from the FHIR Standard
Dosage.timing.repeat.whenrequiredEventTiming
http://hl7.org/fhir/ValueSet/event-timing|4.0.1
from the FHIR Standard
Dosage.timing.codepreferredTimingAbbreviation
http://hl7.org/fhir/ValueSet/timing-abbreviation
from the FHIR Standard
Dosage.siteexampleSNOMEDCTAnatomicalStructureForAdministrationSiteCodes
http://hl7.org/fhir/ValueSet/approach-site-codes
from the FHIR Standard
Dosage.routerequiredRouteOfAdministrationEDQM
http://fhir.ch/ig/ch-term/ValueSet/edqm-routeofadministration
Dosage.methodrequiredAdministrationMethodEDQM
http://fhir.ch/ig/ch-term/ValueSet/edqm-administrationmethod
Dosage.doseAndRate.typeexampleDoseAndRateType
http://hl7.org/fhir/ValueSet/dose-rate-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
base-dosage-textwarningDosageIt is a strong recommendation that the base dosage should contain the whole dosage information as narrative, including the information from split dosage elements.
: text.exists() and text.trim().length() > 0
ch-dosage-4errorDosageFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
ch-emed-event-timingwarningDosage.timing.repeat.whenFor the representation of the time of administration according to the 1-1-1-1 scheme, the values MORN-NOON-EVE-NIGHT are highly recommended.
: $this='MORN' or $this='NOON' or $this='EVE' or $this='NIGHT'
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
only-standard-event-timingserrorDosage.timing.repeat.whenThe timing event shall only be 'MORN', 'NOON', 'EVE' or 'NIGHT'.
: $this = 'MORN' or $this = 'NOON' or $this = 'EVE' or $this = 'NIGHT'
tim-1errorDosage.timing.repeatif there's a duration, there needs to be duration units
: duration.empty() or durationUnit.exists()
tim-2errorDosage.timing.repeatif there's a period, there needs to be period units
: period.empty() or periodUnit.exists()
tim-4errorDosage.timing.repeatduration SHALL be a non-negative value
: duration.exists() implies duration >= 0
tim-5errorDosage.timing.repeatperiod SHALL be a non-negative value
: period.exists() implies period >= 0
tim-6errorDosage.timing.repeatIf there's a periodMax, there must be a period
: periodMax.empty() or period.exists()
tim-7errorDosage.timing.repeatIf there's a durationMax, there must be a duration
: durationMax.empty() or duration.exists()
tim-8errorDosage.timing.repeatIf there's a countMax, there must be a count
: countMax.empty() or count.exists()
tim-9errorDosage.timing.repeatIf there's an offset, there must be a when (and not C, CM, CD, CV)
: offset.empty() or (when.exists() and ((when in ('C' | 'CM' | 'CD' | 'CV')).not()))
tim-10errorDosage.timing.repeatIf there's a timeOfDay, there cannot be a when, or vice versa
: timeOfDay.empty() or when.empty()

 

Other representations of profile: CSV, Excel, Schematron