ELGA e-Medikation (R4) DRAFT
0.1.1 - ci-build

ELGA e-Medikation (R4) DRAFT, published by ELGA GmbH. This guide is not an authorized publication; it is the continuous build for version 0.1.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7Austria/ELGA-e-Medikation-R4/ and changes regularly. See the Directory of published versions

Data Type Profile: AtElgaEmedDosageStandardAdministration

Official URL: https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-dosage-standard-administration Version: 0.1.1
Draft as of 2026-09-03 Responsible: ELGA GmbH Computable Name: AtElgaEmedDosageStandardAdministration

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
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DosageCategory 1..* (Complex) AT ELGA e-Medikation Extension Dosierungskategorie
URL: https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category"
..... value[x] 1..1 CodeableConcept Value of extension
Binding: ELGA Dosage Category Status ValueSet (required): Code für die Art der Dosierung
Fixed Value: As shown (Standard Administration)
...... id 0..0 string Unique id for inter-element referencing
...... extension 0..0 Extension Additional content defined by implementations
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..0 string Unique id for inter-element referencing
....... extension 0..0 Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... version 0..0 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
....... display 0..0 string Representation defined by the system
....... userSelected 0..0 boolean If this coding was chosen directly by the user
...... text 0..0 string Plain text representation of the concept
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... sequence SΣ 1..1 integer Die Reihenfolge der Dosierungsanweisungen. Entfällt bei Einzeldosierung.
... timing SΣ 0..1 AtElgaEmedTiming Zeitpunkt oder Zeitraum der Einnahme des Medikaments. Um widersprüchliche Anweisungen zu vermeiden, ist entweder Dosage.timing oder Dosage.text zu befüllen.
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... event SΣ 0..* dateTime Zeitpunkt der Einnahme.
.... repeat SΣC 0..1 Element Wiederholungsangaben zur Einnahme
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
..... Slices for extension Content/Rules for all slices
...... extension:TimingDayOfMonth S 0..1 positiveInt Day of Month for schedule
URL: http://hl7.org/fhir/StructureDefinition/timing-dayOfMonth
..... Slices for bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
Slice: Unordered, Open by type:$this
...... boundsDuration Duration
...... boundsRange Range
...... boundsPeriod Period
...... bounds[x]:boundsPeriod Σ 0..1 Period Length/Range of lengths, or (Start and/or end) limits
..... frequency Σ 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... period SΣ 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodUnit Σ 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
Binding: https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz (required)
..... when SΣ 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
... Slices for asNeeded[x] Σ 0..1 boolean Take "as needed" (for x)
Slice: Unordered, Closed by type:$this
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
.... asNeeded[x]:asNeededBoolean SΣ 0..1 boolean Bedarfsmedikation: Ja/Nein
... route SΣ 0..1 CodeableConcept Art der Anwendung der Arznei. (z.B. oral, nasal, intravenös, subkutan). Kann bei codierten Arzneien aus der ASP-Liste entnommen werden.
Binding: https://termgit.elga.gv.at/CodeSystem/medikationartanwendung (required)
... method SΣ 0..1 CodeableConcept Verabreichungsmethode, z.B. Infusion, Injektion, Tablette, Salbe etc.
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... Slices for dose[x] Σ 0..1 Menge des verabreichten Medikaments pro Zeiteinheit.
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 Range Dosierungsspanne wird mit low und high angegeben, z.B. 5-10 mg.
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Mapping auf doseQuantity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Dosage.extension:DosageCategory.​value[x] Base required ELGA Dosage Category Status ValueSet 📦0.1.1 This IG
Dosage.timing.repeat.​periodUnit Base required https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz Not State Unknown
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG
Dosage.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.0.1 FHIR Std.
Dosage.route Base required https://termgit.elga.gv.at/CodeSystem/medikationartanwendung Not State Unknown
Dosage.method Base example SNOMED CT Administration Method Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
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()
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
tim-1 error Dosage.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Dosage.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Dosage.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Dosage.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Dosage.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Dosage.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Dosage.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Dosage.timing.repeat If 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-10 error Dosage.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'

This structure is derived from AtElgaEmedDosageDosierung

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... Slices for extension Content/Rules for all slices
.... extension:DosageCategory 1..* AtElgaEmedExtensionDosageCategory AT ELGA e-Medikation Extension Dosierungskategorie
..... value[x] 1..1 CodeableConcept Value of extension
Fixed Value: As shown (Standard Administration)
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
... timing
.... repeat
..... frequency 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... frequencyMax 0..0 Event occurs up to frequencyMax times per period
..... period 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodMax 0..0 Upper limit of period (3-4 hours)
..... periodUnit 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
..... timeOfDay 0..0 Time of day for action
..... when 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
..... offset 0..0 Minutes from event (before or after)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... id 0..1 string Unique id for inter-element referencing
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DosageCategory 1..* (Complex) AT ELGA e-Medikation Extension Dosierungskategorie
URL: https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category"
..... value[x] 1..1 CodeableConcept Value of extension
Binding: ELGA Dosage Category Status ValueSet (required): Code für die Art der Dosierung
Fixed Value: As shown (Standard Administration)
...... id 0..0 string Unique id for inter-element referencing
...... extension 0..0 Extension Additional content defined by implementations
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..0 string Unique id for inter-element referencing
....... extension 0..0 Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... version 0..0 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
....... display 0..0 string Representation defined by the system
....... userSelected 0..0 boolean If this coding was chosen directly by the user
...... text 0..0 string Plain text representation of the concept
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Freitext-Dosierungsanweisung, wenn keine strukturierte Angabe möglich ist.
... additionalInstruction Σ 0..* CodeableConcept Codierte Anweisungen oder Warnhinweise für den Patienten, z.B. zur Einnahme oder zur Aufbewahrung des Arzneimittels. (ex): https://hl7.org/fhir/R4/valueset-additional-instruction-codes.html.
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
... patientInstruction Σ 0..1 string Freitext Anweisungen für den Patienten, z.B. zur Einnahme oder zur Aufbewahrung des Arzneimittels.
... timing SΣ 0..1 AtElgaEmedTiming Zeitpunkt oder Zeitraum der Einnahme des Medikaments. Um widersprüchliche Anweisungen zu vermeiden, ist entweder Dosage.timing oder Dosage.text zu befüllen.
.... id 0..1 string 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
.... event SΣ 0..* dateTime Zeitpunkt der Einnahme.
.... repeat SΣC 0..1 Element Wiederholungsangaben zur Einnahme
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
..... id 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
...... extension:TimingDayOfMonth S 0..1 positiveInt Day of Month for schedule
URL: http://hl7.org/fhir/StructureDefinition/timing-dayOfMonth
..... Slices for bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
Slice: Unordered, Open by type:$this
...... boundsDuration Duration
...... boundsRange Range
...... boundsPeriod Period
...... bounds[x]:boundsPeriod Σ 0..1 Period Length/Range of lengths, or (Start and/or end) limits
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... start ΣC 0..1 dateTime Zeitraum der Einnahme: Start.
....... end ΣC 0..1 dateTime Zeitraum der Einnahme: Ende.
..... count Σ 0..1 positiveInt Number of times to repeat
..... countMax Σ 0..1 positiveInt Maximum number of times to repeat
..... duration Σ 0..1 decimal How long when it happens
..... durationMax Σ 0..1 decimal How long when it happens (Max)
..... durationUnit Σ 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
..... frequency Σ 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... period SΣ 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodUnit Σ 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
Binding: https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz (required)
..... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
..... when SΣ 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
.... code Σ 0..1 CodeableConcept BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... Slices for asNeeded[x] Σ 0..1 boolean Take "as needed" (for x)
Slice: Unordered, Closed by type:$this
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
.... asNeeded[x]:asNeededBoolean SΣ 0..1 boolean Bedarfsmedikation: Ja/Nein
... site Σ 0..1 CodeableConcept Körperstelle, an der das Medikament angewendet wird, z.B. Haut, Auge, Ohr etc.
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
... route SΣ 0..1 CodeableConcept Art der Anwendung der Arznei. (z.B. oral, nasal, intravenös, subkutan). Kann bei codierten Arzneien aus der ASP-Liste entnommen werden.
Binding: https://termgit.elga.gv.at/CodeSystem/medikationartanwendung (required)
... method SΣ 0..1 CodeableConcept Verabreichungsmethode, z.B. Infusion, Injektion, Tablette, Salbe etc.
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... type Σ 0..1 CodeableConcept Art der Dosierung, z.B. berechnet, wie verordnet (ex): https://hl7.org/fhir/R4/valueset-dose-rate-type.html
Binding: DoseAndRateType (example): The kind of dose or rate specified.
.... Slices for dose[x] Σ 0..1 Menge des verabreichten Medikaments pro Zeiteinheit.
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 Range Dosierungsspanne wird mit low und high angegeben, z.B. 5-10 mg.
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Mapping auf doseQuantity
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... value Σ 0..1 decimal Numerical value (with implicit precision)
...... unit Σ 0..1 string Unit representation
Binding: https://termgit.elga.gv.at/ValueSet-elga-medikationmengenart (required)
...... system ΣC 0..1 uri System that defines coded unit form
...... code Σ 0..1 code Coded form of the unit
.... rate[x] Σ 0..1 Amount of medication per unit of time
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
... maxDosePerPeriod Σ 0..1 Ratio Maximale Menge pro Zeiteinheit
... maxDosePerAdministration Σ 0..1 SimpleQuantity(4.0.1) Maximal Menge pro Abgabe
... maxDosePerLifetime Σ 0..1 SimpleQuantity(4.0.1) Maximale Lebenszeitdosis

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Dosage.extension:DosageCategory.​value[x] Base required ELGA Dosage Category Status ValueSet 📦0.1.1 This IG
Dosage.additionalInstruction Base example SNOMED CT Additional Dosage Instructions 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​durationUnit Base required UnitsOfTime 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​periodUnit Base required https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz Not State Unknown
Dosage.timing.repeat.​dayOfWeek Base required DaysOfWeek 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG
Dosage.timing.code Base preferred TimingAbbreviation 📍4.0.1 FHIR Std.
Dosage.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.0.1 FHIR Std.
Dosage.site Base example SNOMED CT Anatomical Structure for Administration Site Codes 📍4.0.1 FHIR Std.
Dosage.route Base required https://termgit.elga.gv.at/CodeSystem/medikationartanwendung Not State Unknown
Dosage.method Base example SNOMED CT Administration Method Codes 📍4.0.1 FHIR Std.
Dosage.doseAndRate.type Base example DoseAndRateType 📍4.0.1 FHIR Std.
Dosage.doseAndRate.dose[x]:doseQuantity.​unit Base required https://termgit.elga.gv.at/ValueSet-elga-medikationmengenart Not State Unknown

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
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()
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
tim-1 error Dosage.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Dosage.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Dosage.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Dosage.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Dosage.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Dosage.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Dosage.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Dosage.timing.repeat If 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-10 error Dosage.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'

This structure is derived from AtElgaEmedDosageDosierung

Summary

Mandatory: 0 element(4 nested mandatory elements)
Fixed: 1 element
Prohibited: 4 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DosageCategory 1..* (Complex) AT ELGA e-Medikation Extension Dosierungskategorie
URL: https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category"
..... value[x] 1..1 CodeableConcept Value of extension
Binding: ELGA Dosage Category Status ValueSet (required): Code für die Art der Dosierung
Fixed Value: As shown (Standard Administration)
...... id 0..0 string Unique id for inter-element referencing
...... extension 0..0 Extension Additional content defined by implementations
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..0 string Unique id for inter-element referencing
....... extension 0..0 Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... version 0..0 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
....... display 0..0 string Representation defined by the system
....... userSelected 0..0 boolean If this coding was chosen directly by the user
...... text 0..0 string Plain text representation of the concept
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... sequence SΣ 1..1 integer Die Reihenfolge der Dosierungsanweisungen. Entfällt bei Einzeldosierung.
... timing SΣ 0..1 AtElgaEmedTiming Zeitpunkt oder Zeitraum der Einnahme des Medikaments. Um widersprüchliche Anweisungen zu vermeiden, ist entweder Dosage.timing oder Dosage.text zu befüllen.
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... event SΣ 0..* dateTime Zeitpunkt der Einnahme.
.... repeat SΣC 0..1 Element Wiederholungsangaben zur Einnahme
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
..... Slices for extension Content/Rules for all slices
...... extension:TimingDayOfMonth S 0..1 positiveInt Day of Month for schedule
URL: http://hl7.org/fhir/StructureDefinition/timing-dayOfMonth
..... Slices for bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
Slice: Unordered, Open by type:$this
...... boundsDuration Duration
...... boundsRange Range
...... boundsPeriod Period
...... bounds[x]:boundsPeriod Σ 0..1 Period Length/Range of lengths, or (Start and/or end) limits
..... frequency Σ 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... period SΣ 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodUnit Σ 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
Binding: https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz (required)
..... when SΣ 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
... Slices for asNeeded[x] Σ 0..1 boolean Take "as needed" (for x)
Slice: Unordered, Closed by type:$this
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
.... asNeeded[x]:asNeededBoolean SΣ 0..1 boolean Bedarfsmedikation: Ja/Nein
... route SΣ 0..1 CodeableConcept Art der Anwendung der Arznei. (z.B. oral, nasal, intravenös, subkutan). Kann bei codierten Arzneien aus der ASP-Liste entnommen werden.
Binding: https://termgit.elga.gv.at/CodeSystem/medikationartanwendung (required)
... method SΣ 0..1 CodeableConcept Verabreichungsmethode, z.B. Infusion, Injektion, Tablette, Salbe etc.
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... Slices for dose[x] Σ 0..1 Menge des verabreichten Medikaments pro Zeiteinheit.
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 Range Dosierungsspanne wird mit low und high angegeben, z.B. 5-10 mg.
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Mapping auf doseQuantity

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Dosage.extension:DosageCategory.​value[x] Base required ELGA Dosage Category Status ValueSet 📦0.1.1 This IG
Dosage.timing.repeat.​periodUnit Base required https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz Not State Unknown
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG
Dosage.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.0.1 FHIR Std.
Dosage.route Base required https://termgit.elga.gv.at/CodeSystem/medikationartanwendung Not State Unknown
Dosage.method Base example SNOMED CT Administration Method Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
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()
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
tim-1 error Dosage.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Dosage.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Dosage.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Dosage.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Dosage.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Dosage.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Dosage.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Dosage.timing.repeat If 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-10 error Dosage.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'

Differential View

This structure is derived from AtElgaEmedDosageDosierung

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... Slices for extension Content/Rules for all slices
.... extension:DosageCategory 1..* AtElgaEmedExtensionDosageCategory AT ELGA e-Medikation Extension Dosierungskategorie
..... value[x] 1..1 CodeableConcept Value of extension
Fixed Value: As shown (Standard Administration)
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
... timing
.... repeat
..... frequency 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... frequencyMax 0..0 Event occurs up to frequencyMax times per period
..... period 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodMax 0..0 Upper limit of period (3-4 hours)
..... periodUnit 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
..... timeOfDay 0..0 Time of day for action
..... when 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
..... offset 0..0 Minutes from event (before or after)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* AtElgaEmedDosageDosierung How the medication is/was taken or should be taken
Constraints: frequencySameAsWhenCount, weekdaysRequireWeeklyPeriod, frequencyEqualsEventWeekdayProduct, noDuplicateWhen, noDuplicateDayOfWeek, allowedPeriodUnitsForStandardAdministration
... id 0..1 string Unique id for inter-element referencing
... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:DosageCategory 1..* (Complex) AT ELGA e-Medikation Extension Dosierungskategorie
URL: https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "https://fhir.hl7.at/elga/emed/r4/StructureDefinition/at-elga-emed-extension-dosage-category"
..... value[x] 1..1 CodeableConcept Value of extension
Binding: ELGA Dosage Category Status ValueSet (required): Code für die Art der Dosierung
Fixed Value: As shown (Standard Administration)
...... id 0..0 string Unique id for inter-element referencing
...... extension 0..0 Extension Additional content defined by implementations
...... coding 1..1 Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..0 string Unique id for inter-element referencing
....... extension 0..0 Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: https://fhir.hl7.at/elga/emed/r4/CodeSystem/AtElgaEmedCodeSystemDosageCategory
....... version 0..0 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: standard
....... display 0..0 string Representation defined by the system
....... userSelected 0..0 boolean If this coding was chosen directly by the user
...... text 0..0 string Plain text representation of the concept
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Freitext-Dosierungsanweisung, wenn keine strukturierte Angabe möglich ist.
... additionalInstruction Σ 0..* CodeableConcept Codierte Anweisungen oder Warnhinweise für den Patienten, z.B. zur Einnahme oder zur Aufbewahrung des Arzneimittels. (ex): https://hl7.org/fhir/R4/valueset-additional-instruction-codes.html.
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".
... patientInstruction Σ 0..1 string Freitext Anweisungen für den Patienten, z.B. zur Einnahme oder zur Aufbewahrung des Arzneimittels.
... timing SΣ 0..1 AtElgaEmedTiming Zeitpunkt oder Zeitraum der Einnahme des Medikaments. Um widersprüchliche Anweisungen zu vermeiden, ist entweder Dosage.timing oder Dosage.text zu befüllen.
.... id 0..1 string 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
.... event SΣ 0..* dateTime Zeitpunkt der Einnahme.
.... repeat SΣC 0..1 Element Wiederholungsangaben zur Einnahme
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
..... id 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
...... extension:TimingDayOfMonth S 0..1 positiveInt Day of Month for schedule
URL: http://hl7.org/fhir/StructureDefinition/timing-dayOfMonth
..... Slices for bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
Slice: Unordered, Open by type:$this
...... boundsDuration Duration
...... boundsRange Range
...... boundsPeriod Period
...... bounds[x]:boundsPeriod Σ 0..1 Period Length/Range of lengths, or (Start and/or end) limits
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... start ΣC 0..1 dateTime Zeitraum der Einnahme: Start.
....... end ΣC 0..1 dateTime Zeitraum der Einnahme: Ende.
..... count Σ 0..1 positiveInt Number of times to repeat
..... countMax Σ 0..1 positiveInt Maximum number of times to repeat
..... duration Σ 0..1 decimal How long when it happens
..... durationMax Σ 0..1 decimal How long when it happens (Max)
..... durationUnit Σ 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
..... frequency Σ 1..1 positiveInt Häufigkeit der Einnahme, z.B. 3 mal täglich.
..... period SΣ 1..1 decimal Intervall der Einnahme, z.B. alle 4 Stunden.
..... periodUnit Σ 1..1 code Einheit des Intervalls der Einnahme, z.B. h für Stunden, d für Tage.
Binding: https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz (required)
..... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
..... when SΣ 1..* code Code for time period of occurrence
Binding: ELGA Dosierung Timing When ValueSet für Tageszeitenschema (required)
.... code Σ 0..1 CodeableConcept BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... Slices for asNeeded[x] Σ 0..1 boolean Take "as needed" (for x)
Slice: Unordered, Closed by type:$this
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
.... asNeeded[x]:asNeededBoolean SΣ 0..1 boolean Bedarfsmedikation: Ja/Nein
... site Σ 0..1 CodeableConcept Körperstelle, an der das Medikament angewendet wird, z.B. Haut, Auge, Ohr etc.
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
... route SΣ 0..1 CodeableConcept Art der Anwendung der Arznei. (z.B. oral, nasal, intravenös, subkutan). Kann bei codierten Arzneien aus der ASP-Liste entnommen werden.
Binding: https://termgit.elga.gv.at/CodeSystem/medikationartanwendung (required)
... method SΣ 0..1 CodeableConcept Verabreichungsmethode, z.B. Infusion, Injektion, Tablette, Salbe etc.
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... type Σ 0..1 CodeableConcept Art der Dosierung, z.B. berechnet, wie verordnet (ex): https://hl7.org/fhir/R4/valueset-dose-rate-type.html
Binding: DoseAndRateType (example): The kind of dose or rate specified.
.... Slices for dose[x] Σ 0..1 Menge des verabreichten Medikaments pro Zeiteinheit.
Slice: Unordered, Closed by type:$this
..... doseRange Range
..... doseQuantity Quantity(SimpleQuantity)
..... dose[x]:doseRange SΣ 0..1 Range Dosierungsspanne wird mit low und high angegeben, z.B. 5-10 mg.
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Mapping auf doseQuantity
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... value Σ 0..1 decimal Numerical value (with implicit precision)
...... unit Σ 0..1 string Unit representation
Binding: https://termgit.elga.gv.at/ValueSet-elga-medikationmengenart (required)
...... system ΣC 0..1 uri System that defines coded unit form
...... code Σ 0..1 code Coded form of the unit
.... rate[x] Σ 0..1 Amount of medication per unit of time
..... rateRatio Ratio
..... rateRange Range
..... rateQuantity Quantity(SimpleQuantity)
... maxDosePerPeriod Σ 0..1 Ratio Maximale Menge pro Zeiteinheit
... maxDosePerAdministration Σ 0..1 SimpleQuantity(4.0.1) Maximal Menge pro Abgabe
... maxDosePerLifetime Σ 0..1 SimpleQuantity(4.0.1) Maximale Lebenszeitdosis

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Dosage.extension:DosageCategory.​value[x] Base required ELGA Dosage Category Status ValueSet 📦0.1.1 This IG
Dosage.additionalInstruction Base example SNOMED CT Additional Dosage Instructions 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​durationUnit Base required UnitsOfTime 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​periodUnit Base required https://termgit.elga.gv.at/ValueSet/elga-medikationfrequenz Not State Unknown
Dosage.timing.repeat.​dayOfWeek Base required DaysOfWeek 📍4.0.1 FHIR Std.
Dosage.timing.repeat.​when Base required ELGA Dosierung Timing When ValueSet für Tageszeitenschema 📦0.1.1 This IG
Dosage.timing.code Base preferred TimingAbbreviation 📍4.0.1 FHIR Std.
Dosage.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.0.1 FHIR Std.
Dosage.site Base example SNOMED CT Anatomical Structure for Administration Site Codes 📍4.0.1 FHIR Std.
Dosage.route Base required https://termgit.elga.gv.at/CodeSystem/medikationartanwendung Not State Unknown
Dosage.method Base example SNOMED CT Administration Method Codes 📍4.0.1 FHIR Std.
Dosage.doseAndRate.type Base example DoseAndRateType 📍4.0.1 FHIR Std.
Dosage.doseAndRate.dose[x]:doseQuantity.​unit Base required https://termgit.elga.gv.at/ValueSet-elga-medikationmengenart Not State Unknown

Constraints

Id Grade Path(s) Description Expression
allowedPeriodUnitsForStandardAdministration error Dosage Für Standarddosierungen im Tageszeitenschema sind nur tägliche, wöchentliche oder monatliche Wiederholungen zulässig. timing.repeat.periodUnit = 'd' or timing.repeat.periodUnit = 'wk' or timing.repeat.periodUnit = 'm'
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()
frequencyEqualsEventWeekdayProduct error Dosage Wenn Wochentage angegeben sind dann entspricht die frequency dem Produkt aus Wochentagen und der Anzahl an ausgewählten Tageszeiten. timing.repeat.when.exists() and timing.repeat.dayOfWeek.exists() implies timing.repeat.frequency = timing.repeat.when.distinct().count() * timing.repeat.dayOfWeek.distinct().count()
frequencySameAsWhenCount error Dosage wenn .when verwendet wird und periodUnit = d muss die frequency mit der Anzahl an entries in .when übereinstimmen (timing.repeat.when.exists() and timing.repeat.periodUnit = 'd') implies timing.repeat.when.distinct().count() = timing.repeat.frequency
noDuplicateDayOfWeek error Dosage Wochentage können nicht mehrmals vorkommen. timing.repeat.dayOfWeek.count() = timing.repeat.dayOfWeek.distinct().count()
noDuplicateWhen error Dosage Tageszeiten können nicht mehrmals vorkommen. timing.repeat.when.count() = timing.repeat.when.distinct().count()
tim-1 error Dosage.timing.repeat if there's a duration, there needs to be duration units duration.empty() or durationUnit.exists()
tim-2 error Dosage.timing.repeat if there's a period, there needs to be period units period.empty() or periodUnit.exists()
tim-4 error Dosage.timing.repeat duration SHALL be a non-negative value duration.exists() implies duration >= 0
tim-5 error Dosage.timing.repeat period SHALL be a non-negative value period.exists() implies period >= 0
tim-6 error Dosage.timing.repeat If there's a periodMax, there must be a period periodMax.empty() or period.exists()
tim-7 error Dosage.timing.repeat If there's a durationMax, there must be a duration durationMax.empty() or duration.exists()
tim-8 error Dosage.timing.repeat If there's a countMax, there must be a count countMax.empty() or count.exists()
tim-9 error Dosage.timing.repeat If 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-10 error Dosage.timing.repeat If there's a timeOfDay, there cannot be a when, or vice versa timeOfDay.empty() or when.empty()
weekdaysRequireWeeklyPeriod error Dosage DayOfWeek kann nur dann verwendet werden, wenn periodUnit 'wk' ist. timing.repeat.dayOfWeek.exists() implies timing.repeat.periodUnit = 'wk'

This structure is derived from AtElgaEmedDosageDosierung

Summary

Mandatory: 0 element(4 nested mandatory elements)
Fixed: 1 element
Prohibited: 4 elements

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Offene Punkte:
In Arbeit. (doseAndRate in Textdarstellung,...)

Regeln für Standarddosierungen im Tageszeitenschema

Dieses Profil repräsentiert strukturierte, wiederkehrende Dosierungen anhand von Tageszeiten. Die Dosierungskategorie ist immer standard.

Grundregeln

  • timing.repeat.when ist verpflichtend und enthält mindestens eine zulässige Tageszeit aus ElgaTimingWhenStandardAdministrationVS.
  • timing.repeat.frequency, timing.repeat.period und timing.repeat.periodUnit sind verpflichtend.
  • frequencyMax und periodMax dürfen nicht verwendet werden. Eine Tageszeitendosierung beschreibt daher keine Häufigkeits- oder Intervallspanne.
  • timeOfDay darf nicht verwendet werden. Exakte Uhrzeiten werden durch dieses Profil bewusst nicht unterstützt, da sie der Semantik einer Tageszeit widersprechen können.
  • Eine Tageszeit darf innerhalb einer Dosierung nur einmal vorkommen.
  • Ein Wochentag darf innerhalb einer Dosierung nur einmal vorkommen.

Regeln für tägliche Dosierungen

Bei Dosierungen mit timing.repeat.periodUnit = d entspricht timing.repeat.frequency der Anzahl der angegebenen Tageszeiten. Bei period = 1 wird die Dosierung als täglich dargestellt; bei period > 1 als Intervall in Tagen.

Beispiel: 1 Stück morgens und 1 Stück nachts

  • Textdarstellung: 1-0-0-1 | Täglich: 1-0-0-1
  • Dosage.timing.repeat.frequency / period / periodUnit = 2 / 1 / d
  • Dosage.timing.repeat.when = [MORN, NIGHT]
  • doseQuantity.value = 1, doseQuantity.unit = Stück
Dosage
    timing
        repeat
        frequency: 2
        period: 1
        periodUnit: d
        when: MORN (morgens) | NIGHT (nachts)
        doseAndRate
        doseQuantity
        value: 1
        unit: Stück
{
  "timing": {
    "repeat": {
      "frequency": 2,
      "period": 1,
      "periodUnit": "d",
      "when": ["MORN", "NIGHT"]
    }
  },
  "doseAndRate": [{
    "doseQuantity": {
      "value": 1,
      "unit": "Stück"
    }
  }]
}

Das Muster entspricht der Darstellung 1-0-0-1. Die frequency ist 2, da zwei Tageszeiten angegeben sind.

Regeln für wöchentliche Dosierungen

Werden Wochentage in timing.repeat.dayOfWeek angegeben, muss timing.repeat.periodUnit den Wert wk haben. Die frequency entspricht dann dem Produkt aus der Anzahl der Tageszeiten und der Anzahl der Wochentage.

Beispiel: montags und freitags jeweils 1-0-0-1

  • Textdarstellung: Mo 1-0-0-1, Fr 1-0-0-1 | Wöchentlich: 1-0-0-1 am Montag, 1-0-0-1 am Freitag
  • Dosage.timing.repeat.frequency / period / periodUnit = 4 / 1 / wk
  • Dosage.timing.repeat.dayOfWeek = mon (Montag), fri (Freitag)
  • Dosage.timing.repeat.when = MORN (morgens), NIGHT (nachts)
Dosage
timing
  repeat
    frequency: 4
    period: 1
    periodUnit: wk
    dayOfWeek: mon (Montag)
    dayOfWeek: fri (Freitag)
    when: MORN (morgens) | NIGHT (nachts)
{
"timing": {
    "repeat": {
        "frequency": 4,
        "period": 1,
        "periodUnit": "wk",
        "dayOfWeek": ["mon", "fri"],
        "when": ["MORN", "NIGHT"]
    }
} }

Die Dosierung erfolgt zweimal pro ausgewähltem Wochentag und damit insgesamt viermal pro Woche.

Regeln für monatliche Dosierungen

Werden Kalendertage des Monats in timing.repeat.extension:timing-dayOfMonth angegeben, muss timing.repeat.periodUnit den Wert mo haben. Die frequency entspricht dann dem Produkt aus der Anzahl der dayOfMonth Extensions und der Anzahl der Tageszeiten.

Beispiel: 1-0-0-0 am ersten Tag jedes Monats

  • Dosage.timing.repeat.frequency / period / periodUnit = 1 / 1 / m
  • Dosage.timing.repeat.extension:timing-dayOfMonth.valuePositiveInt = 1
  • Dosage.timing.repeat.when = MORN (morgens)
Dosage
timing
  repeat
    frequency: 1
    period: 1
    periodUnit: m
    extension: timing-dayOfMonth
      valuePositiveInt: 1
    when: MORN (morgens)
{
  "timing": {
    "repeat": {
      "frequency": 1,
      "period": 1,
      "periodUnit": "m",
      "extension": [
        {
        "url": "http://hl7.org/fhir/StructureDefinition/timing-dayOfMonth",
        "valuePositiveInt": 1
        }
      ],
      "when": ["MORN"]
    }
  }
}

Unterschiedliche Dosierungen je Tageszeit

Unterschiedliche Einnahmemuster zu unterschiedlichen Tageszeiten werden durch mehrere Dosage-Einträge mit der selben Sequenznummer ausgedrückt. Eine einzelne Dosierung kann nicht abbilden, dass zu unterschiedlichen Tageszeiten unterschiedliche Mengen gelten.

Beispiel: 2 Tabletten morgens und 1 Tablette nachts. Beide Dosierungsanweisungen gehören zur selben Einnahmeregel und erhalten daher dieselbe Sequenznummer.

  • Erste Dosage: sequence = 1, when = [MORN], frequency = 1, period = 1, periodUnit = d, doseQuantity.value = 2 Tabletten.
  • Zweite Dosage: sequence = 1, when = [NIGHT], frequency = 1, period = 1, periodUnit = d, doseQuantity.value = 1 Tablette.
Dosage [0]
  sequence: 1
  extension: DosageCategory
    valueCodeableConcept
      coding
        system: [canonical]/CodeSystem/at-elga-emed-dosage-category
        code: standard
  timing
    repeat
      frequency: 1
      period: 1
      periodUnit: d
      when: MORN (morgens)
  doseAndRate
    doseQuantity
      value: 2
      system: https://termgit.elga.gv.at/CodeSystem/ucum
      code: {Stueck}
      unit: Tablette

Dosage [1]
  sequence: 1
  extension: DosageCategory
    valueCodeableConcept
      coding
        system: [canonical]/CodeSystem/at-elga-emed-dosage-category
        code: standard
  timing
    repeat
      frequency: 1
      period: 1
      periodUnit: d
      when: NIGHT (nachts)
  doseAndRate
    doseQuantity
      value: 1
      system: https://termgit.elga.gv.at/CodeSystem/ucum
      code: {Stueck}
      unit: Tablette
[
  {
    "sequence": 1,
    "extension": [
      {
        "url": "[canonical]/StructureDefinition/at-elga-emed-dosage-category",
        "valueCodeableConcept": {
          "coding": [
            {
              "system": "[canonical]/CodeSystem/at-elga-emed-dosage-category",
              "code": "standard"
            }
          ]
        }
      }
    ],
    "timing": {
      "repeat": {
        "frequency": 1,
        "period": 1,
        "periodUnit": "d",
        "when": ["MORN"]
      }
    },
    "doseAndRate": [
      {
        "doseQuantity": {
          "value": 2,
          "system": "https://termgit.elga.gv.at/CodeSystem/ucum",
          "code": "{Stueck}",
          "unit": "Tablette"
        }
      }
    ]
  },
  {
    "sequence": 1,
    "extension": [
      {
        "url": "[canonical]/StructureDefinition/at-elga-emed-dosage-category",
        "valueCodeableConcept": {
          "coding": [
            {
              "system": "[canonical]/CodeSystem/at-elga-emed-dosage-category",
              "code": "standard"
            }
          ]
        }
      }
    ],
    "timing": {
      "repeat": {
        "frequency": 1,
        "period": 1,
        "periodUnit": "d",
        "when": ["NIGHT"]
      }
    },
    "doseAndRate": [
      {
        "doseQuantity": {
          "value": 1,
          "system": "https://termgit.elga.gv.at/CodeSystem/ucum",
          "code": "{Stueck}",
          "unit": "Tablette"
        }
      }
    ]
  }
]

Die Darstellung 2-0-0-1 ist damit nicht eine einzelne Dosage mit zwei Tageszeiten, sondern besteht aus zwei Dosage-Einträgen: einer morgendlichen Dosis von zwei Tabletten und einer nächtlichen Dosis von einer Tablette.

Unterschiedliche Dosierungen je Wochentag

Unterschiedliche Einnahmemuster an unterschiedlichen Wochentagen werden durch mehrere Dosage-Einträge mit der selben Sequenznummer ausgedrückt. Eine einzelne Dosierung kann nicht abbilden, dass an einem Wochentag andere Tageszeiten oder Mengen gelten als an einem anderen.

Beispiel: montags morgens und nachts, freitags nur morgens.

  • Erste Dosage: Montag, when = [MORN, NIGHT], frequency = 2, periodUnit = wk.
  • Zweite Dosage: Freitag, when = [MORN], frequency = 1, periodUnit = wk.

Beispiele

Zulässige Beispiele

  • 1-0-0-1 | Täglich: 1-0-0-1 frequency = 2, period = 1, periodUnit = d, when = [MORN, NIGHT]
  • Alle 2 Tage: 1-0-0-1 | Alle 2 Tage: 1-0-0-1 frequency = 2, period = 2, periodUnit = d, when = [MORN, NIGHT]
  • Alle X Tage: 1-0-0-1 | Alle X Tage: 1-0-0-1 frequency = 2, period = X, periodUnit = d, when = [MORN, NIGHT]
  • Mo 1-0-0-1, Fr 1-0-0-1 | Wöchentlich: 1-0-0-1 am Montag, 1-0-0-1 am Freitag frequency = 4, period = 1, periodUnit = wk, dayOfWeek = [mon, fri], when = [MORN, NIGHT]
  • Mo 1-0-0-1, Fr 1-0-0-0 | Wöchentlich: 1-0-0-1 am Montag, 1-0-0-0 am Freitag
    Dosage 1:
    frequency = 2, period = 1, periodUnit = wk, dayOfWeek = [mon], when = [MORN, NIGHT]
    Dosage 2:
    frequency = 1, period = 1, periodUnit = wk, dayOfWeek = [fri], when = [MORN]
  • Alle 2 Wochen: Mo 1-0-0-1 | Alle 2 Wochen: 1-0-0-1 am Montag frequency = 2, period = 2, periodUnit = wk, dayOfWeek = [mon], when = [MORN, NIGHT]
  • Alle 2 Wochen: Mo 1-0-0-1, Fr 1-0-0-1 | Alle 2 Wochen: 1-0-0-1 am Montag, 1-0-0-1 am Freitag frequency = 4, period = 2, periodUnit = wk, dayOfWeek = [mon, fri], when = [MORN, NIGHT]
  • Bei Bedarf: 1-0-0-1 | Bei Bedarf, täglich: 1-0-0-1 asNeeded = true, frequency = 2, period = 1, periodUnit = d, when = [MORN, NIGHT]
  • Bei Bedarf, alle 2 Tage: 1-0-0-1 | Bei Bedarf, alle 2 Tage: 1-0-0-1 asNeeded = true, frequency = 2, period = 2, periodUnit = d, when = [MORN, NIGHT]
  • Alle 3 Wochen: Mo 1-0-0-1, Fr 1-0-0-1 | Alle 3 Wochen: 1-0-0-1 am Montag, 1-0-0-1 am Freitag frequency = 4, period = 3, periodUnit = wk, dayOfWeek = [mon, fri], when = [MORN, NIGHT]
  • 1-0-0-1 am 1. des Monats, 1-0-0-1 am 10. des Monats | Monatlich: 1-0-0-1 am 1., 1-0-0-1 am 10. des Monats frequency = 4, period = 1, periodUnit = mo, extension:DayOfMonth = 1 & 10, when = [MORN, NIGHT]
  • 1-0-0-1 am 1. des Monats, 0-1-0-0 am 15. des Monats | Monatlich: 1-0-0-1 am 1. und 0-1-0-0 am 15. des Monats
    Dosage 1:
    frequency = 2, period = 1, periodUnit = mo, extension:DayOfMonth = 1, when = [MORN, NIGHT]
    Dosage 2:
    frequency = 1, period = 1, periodUnit = mo, extension:DayOfMonth = 15, when = [NOON]
  • Alle 3 Monate: 1-0-0-0 am 1. des Monats
  • Alle 2 Monate: 1-0-0-0 am 1. des Monats, 1-0-0-0 am 15. des Monats

Nicht zulässige Muster

  • 1-0-0-0 täglich um 07:00 oder 1-0-0-0 täglich um 17:00: Exakte Uhrzeiten dürfen in diesem Schema nicht über timeOfDay angegeben werden. Es kann ausschließlich eine zulässige Tageszeit, beispielsweise MORN, ausgedrückt werden. Für genau Uhrzeit muss das Uhrzeiten Dosierungsschema verwendet werden. TODO: Link einfügen.
  • 1-0-0-1 zweimal täglich alle zwei Tage, montags und freitags: nicht zulässig. Die Kombination aus dayOfWeek und einer täglichen Periodeneinheit ist nicht erlaubt, da sich die Aussagen widersprechen können.
  • Eine Tageszeit mehrfach anzugeben, beispielsweise when = [MORN, MORN]: nicht zulässig.
  • Einen Wochentag mehrfach anzugeben, beispielsweise dayOfWeek = [mon, mon]: nicht zulässig.
  • 1-1-1-1 alle 2 Stunden: Dieses Profil ist für Tageszeitenschemata vorgesehen und nicht für stündliche Intervalle. Dosierschemata mit Zeitintervallen sind in diesem Profil TBD LINK definiert.
  • Alle 2 Wochen: Mo 1-0-0-1, Fr 1-0-0-0 als einzelner Dosage-Eintrag mit dayOfWeek = [mon, fri] und when = [MORN, NIGHT]: nicht zulässig. Unterschiedliche Tageszeitenschemata je Wochentag erfordern getrennte Dosage-Einträge mit derselben sequence.
  • 1-0-0-1 am 1. des Monats, 0-1-0-0 am 15. des Monats als einzelner Dosage-Eintrag mit zwei Kalendertagen: nicht zulässig, wenn die Tageszeitenschemata unterschiedlich sind. In diesem Fall sind zwei Dosage-Einträge erforderlich.

Bildung der Textdarstellung

Die Textdarstellung wird je Einnahmeregel gebildet. Alle Dosage-Einträge mit derselben sequence und derselben Dosierungskategorie gehören zu derselben Einnahmeregel. Unterschiedliche Sequenznummern ergeben getrennte Einnahmeregeln.

Die Darstellung besteht, sofern möglich, aus Kurz- und Langform. Beide Teile werden durch | getrennt.

Grundsatz

Die Textdarstellung verwendet das Tageszeitenschema MORN-NOON-EVE-NIGHT. Die vier Positionen stehen für morgens, mittags, abends und nachts. Nicht belegte Tageszeiten werden mit 0 dargestellt.

Die Menge in einer Position entspricht unmittelbar dem Wert von doseAndRate.doseQuantity.value des zugehörigen Dosage-Eintrags. Mengen werden nicht über mehrere Dosage-Einträge hinweg addiert oder aus frequency-Werten berechnet.

Kurzform

Die Kurzform gibt das Tageszeitenschema für jede zeitlich unterschiedliche Ausprägung der Einnahmeregel an.

  • Bei täglicher Dosierung wird nur das Tageszeitenschema ausgegeben, beispielsweise 1-0-0-1.
  • Bei einem Intervall in Tagen steht die Intervallangabe vor dem Tageszeitenschema, beispielsweise Alle 2 Tage: 1-0-0-1.
  • Bei Wochentagen steht die Wochentagsabkürzung vor dem jeweiligen Tageszeitenschema, beispielsweise Mo 1-0-0-1, Fr 1-0-0-1.
  • Bei Wochenintervallen steht die Intervallangabe vor den Wochentagen, beispielsweise Alle 2 Wochen: Mo 1-0-0-1.
  • Bei Kalendertagen steht der Kalendertag nach dem jeweiligen Tageszeitenschema, beispielsweise 1-0-0-0 am 1. des Monats.

Langform

Die Langform beginnt mit der Wiederholungsangabe. Anschließend wird das Tageszeitenschema je Wochentag oder Kalendertag ausgegeben. Zwischen Wiederholungsangabe und Dosierschema steht ein Doppelpunkt.

Tägliche Dosierung
Täglich: {MORN-NOON-EVE-NIGHT}

Beispiel: 1-0-0-1 | Täglich: 1-0-0-1.

Tagesintervall

Bei einer period >1:

Alle {period} Tage: {MORN-NOON-EVE-NIGHT}

Beispiel: Alle 2 Tage: 1-0-0-1 | Alle 2 Tage: 1-0-0-1.

Wöchentliche Dosierung
Wöchentlich: {MORN-NOON-EVE-NIGHT} am {Wochentag}

Beispiel: Mo 1-0-0-1, Fr 1-0-0-1 | Wöchentlich: 1-0-0-1 am Montag, 1-0-0-1 am Freitag.

Wochenintervall

Bei einer period >1:

Alle {period} Wochen: {MORN-NOON-EVE-NIGHT} am {Wochentag}

Beispiel: Alle 2 Wochen: Mo 1-0-0-1 | Alle 2 Wochen: 1-0-0-1 am Montag.

Monatliche Dosierung
Monatlich: {MORN-NOON-EVE-NIGHT} am {extension:dayOfMonth}. des Monats

Beispiel: 1-0-0-1 am 1. des Monats, 1-0-0-1 am 10. des Monats | Monatlich: 1-0-0-1 am 1. des Monats, 1-0-0-1 am 10. des Monats.

Monatsintervall

Bei einer period >1:

Alle {period} Monate: {MORN-NOON-EVE-NIGHT} am {extension:dayOfMonth}. des Monats

Beispiel: Alle 3 Monate: 1-0-0-0 am 1. des Monats.

Bedarfsdosierung

Bei einer Bedarfsdosierung mit asNeeded = true wird Bei Bedarf der jeweiligen Wiederholungsangabe vorangestellt.

Bei Bedarf, täglich: {MORN-NOON-EVE-NIGHT}

Beispiele: Bei Bedarf: 1-0-0-1 | Bei Bedarf, täglich: 1-0-0-1 und Bei Bedarf, alle 2 Tage: 1-0-0-1 | Bei Bedarf, alle 2 Tage: 1-0-0-1.