Medication IG DE
1.0.0-ballot1 - 1.0.0

Medication IG DE, published by HL7 Deutschland. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7germany/medication-dosage-ig/ and changes regularly. See the Directory of published versions

Data Type Profile: Dosage für dgMP

Official URL: http://ig.fhir.de/igs/medication/StructureDefinition/DosageDgMP Version: 1.0.0-ballot1
Draft as of 2025-07-09 Computable Name: DosageDgMP

Gibt an, wie das Medikament vom Patienten im Kontext dgMP eingenommen wird/wurde oder eingenommen werden soll.

Usages:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... Slices for extension Content/Rules for all slices
.... extension:generatedDosageInstructions S 0..1 (Complex) Maschinell erzeugte Dosieranweisung
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions
..... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:text S 1..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "text"
....... Slices for value[x] 1..1 string Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueString S 1..1 string Value of extension
...... extension:algorithm S 1..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "algorithm"
....... Slices for value[x] 1..1 Coding Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueCoding S 1..1 Coding Value of extension
Binding: Algorithmen für Textgenerierung von Dosierungen (extensible)
Required Pattern: At least the following
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... version 0..1 string Version of the system - if relevant
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
......... display 0..1 string Representation defined by the system
......... userSelected 0..1 boolean If this coding was chosen directly by the user
......... system SΣ 1..1 uri Identity of the terminology system
......... version SΣ 1..1 string Version of the system - if relevant
......... code SΣ 1..1 code Symbol in syntax defined by the system
..... url 1..1 uri "http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions"
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Tablette bei Bedarf'
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... Slices for dose[x] Σ 0..1 SimpleQuantity Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Dosage.extension:generatedDosageInstructions.extension:algorithm.value[x]:valueCodingextensiblePattern Value: GermanDosageTextGenerator
http://ig.fhir.de/igs/medication/ValueSet/DosageTextAlgorithms
From this IG
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )
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()

This structure is derived from DosageDE

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... Slices for extension Content/Rules for all slices
.... extension:generatedDosageInstructions 0..1 GeneratedDosageInstructionsEx Maschinell erzeugte Dosieranweisung
..... Slices for extension Content/Rules for all slices
...... extension:algorithm 1..1 Extension Extension
....... Slices for value[x] Content/Rules for all slices
........ value[x]:valueCoding 1..1 Coding Value of extension
Required Pattern: At least the following
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
... sequence 0..0
... additionalInstruction 0..0
... timing 0..1 TimingDgMP Wann das Medikament verabreicht werden soll
... asNeeded[x] 0..0
... site 0..0
... route 0..0
... method 0..0
... doseAndRate 0..1 Element Menge des verabreichten Medikaments
.... type 0..0
.... dose[x] 0..1 SimpleQuantity Amount of medication per dose
.... Slices for dose[x] Content/Rules for all slices
..... dose[x]:doseQuantity 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)
.... rate[x] 0..0
... maxDosePerPeriod 0..0
... maxDosePerAdministration 0..0
... maxDosePerLifetime 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... 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:generatedDosageInstructions S 0..1 (Complex) Maschinell erzeugte Dosieranweisung
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:text S 1..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "text"
....... Slices for value[x] 1..1 string Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueString S 1..1 string Value of extension
...... extension:algorithm S 1..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "algorithm"
....... Slices for value[x] 1..1 Coding Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueCoding S 1..1 Coding Value of extension
Binding: Algorithmen für Textgenerierung von Dosierungen (extensible)
Required Pattern: At least the following
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... version 0..1 string Version of the system - if relevant
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
......... display 0..1 string Representation defined by the system
......... userSelected 0..1 boolean If this coding was chosen directly by the user
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... system SΣ 1..1 uri Identity of the terminology system
......... version SΣ 1..1 string Version of the system - if relevant
......... code SΣ 1..1 code Symbol in syntax defined by the system
......... display Σ 0..1 string Representation defined by the system
......... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... url 1..1 uri "http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions"
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... timing SΣ 0..1 TimingDgMP Wann das Medikament verabreicht werden soll
... 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
.... Slices for dose[x] Σ 0..1 SimpleQuantity Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Dosage.extension:generatedDosageInstructions.extension:algorithm.value[x]:valueCodingextensiblePattern Value: GermanDosageTextGenerator
http://ig.fhir.de/igs/medication/ValueSet/DosageTextAlgorithms
From this IG
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )
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()

This structure is derived from DosageDE

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... Slices for extension Content/Rules for all slices
.... extension:generatedDosageInstructions S 0..1 (Complex) Maschinell erzeugte Dosieranweisung
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions
..... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:text S 1..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "text"
....... Slices for value[x] 1..1 string Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueString S 1..1 string Value of extension
...... extension:algorithm S 1..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "algorithm"
....... Slices for value[x] 1..1 Coding Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueCoding S 1..1 Coding Value of extension
Binding: Algorithmen für Textgenerierung von Dosierungen (extensible)
Required Pattern: At least the following
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... version 0..1 string Version of the system - if relevant
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
......... display 0..1 string Representation defined by the system
......... userSelected 0..1 boolean If this coding was chosen directly by the user
......... system SΣ 1..1 uri Identity of the terminology system
......... version SΣ 1..1 string Version of the system - if relevant
......... code SΣ 1..1 code Symbol in syntax defined by the system
..... url 1..1 uri "http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions"
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... text SΣ 0..1 string Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Tablette bei Bedarf'
... doseAndRate SΣ 0..1 Element Menge des verabreichten Medikaments
.... Slices for dose[x] Σ 0..1 SimpleQuantity Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Dosage.extension:generatedDosageInstructions.extension:algorithm.value[x]:valueCodingextensiblePattern Value: GermanDosageTextGenerator
http://ig.fhir.de/igs/medication/ValueSet/DosageTextAlgorithms
From this IG
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )
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()

Differential View

This structure is derived from DosageDE

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... Slices for extension Content/Rules for all slices
.... extension:generatedDosageInstructions 0..1 GeneratedDosageInstructionsEx Maschinell erzeugte Dosieranweisung
..... Slices for extension Content/Rules for all slices
...... extension:algorithm 1..1 Extension Extension
....... Slices for value[x] Content/Rules for all slices
........ value[x]:valueCoding 1..1 Coding Value of extension
Required Pattern: At least the following
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
... sequence 0..0
... additionalInstruction 0..0
... timing 0..1 TimingDgMP Wann das Medikament verabreicht werden soll
... asNeeded[x] 0..0
... site 0..0
... route 0..0
... method 0..0
... doseAndRate 0..1 Element Menge des verabreichten Medikaments
.... type 0..0
.... dose[x] 0..1 SimpleQuantity Amount of medication per dose
.... Slices for dose[x] Content/Rules for all slices
..... dose[x]:doseQuantity 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)
.... rate[x] 0..0
... maxDosePerPeriod 0..0
... maxDosePerAdministration 0..0
... maxDosePerLifetime 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Dosage C 0..* DosageDE How the medication is/was taken or should be taken
Constraints: DosageStructuredOrFreeText
... 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:generatedDosageInstructions S 0..1 (Complex) Maschinell erzeugte Dosieranweisung
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
...... extension:text S 1..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "text"
....... Slices for value[x] 1..1 string Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueString S 1..1 string Value of extension
...... extension:algorithm S 1..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "algorithm"
....... Slices for value[x] 1..1 Coding Value of extension
Slice: Unordered, Closed by type:$this
........ value[x]:valueCoding S 1..1 Coding Value of extension
Binding: Algorithmen für Textgenerierung von Dosierungen (extensible)
Required Pattern: At least the following
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
......... system 1..1 uri Identity of the terminology system
Fixed Value: http://ig.fhir.de/igs/medication/CodeSystem/DosageTextAlgorithms
......... version 0..1 string Version of the system - if relevant
......... code 1..1 code Symbol in syntax defined by the system
Fixed Value: GermanDosageTextGenerator
......... display 0..1 string Representation defined by the system
......... userSelected 0..1 boolean If this coding was chosen directly by the user
......... id 0..1 string Unique id for inter-element referencing
......... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
......... system SΣ 1..1 uri Identity of the terminology system
......... version SΣ 1..1 string Version of the system - if relevant
......... code SΣ 1..1 code Symbol in syntax defined by the system
......... display Σ 0..1 string Representation defined by the system
......... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
..... url 1..1 uri "http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructions"
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... timing SΣ 0..1 TimingDgMP Wann das Medikament verabreicht werden soll
... 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
.... Slices for dose[x] Σ 0..1 SimpleQuantity Amount of medication per dose
Slice: Unordered, Closed by type:$this
..... dose[x]:doseQuantity SΣ 0..1 SimpleQuantity Menge des Medikaments pro Dosis
Binding: KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Dosage.extension:generatedDosageInstructions.extension:algorithm.value[x]:valueCodingextensiblePattern Value: GermanDosageTextGenerator
http://ig.fhir.de/igs/medication/ValueSet/DosageTextAlgorithms
From this IG
Dosage.doseAndRate.dose[x]:doseQuantityrequiredKBV_VS_SFHIR_BMP_DOSIEREINHEIT
https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT

Constraints

IdGradePath(s)DetailsRequirements
DosageStructuredOrFreeTexterrorDosageDosage must be either structured or free text, but not both at the same time.
: (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and timing.exists() and doseAndRate.exists() )
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()

This structure is derived from DosageDE

 

Other representations of profile: CSV, Excel, Schematron