This page is part of the Medication IG DE (v1.0.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Official URL: http://ig.fhir.de/igs/medication/StructureDefinition/DosageDgMP | Version: 1.0.0 | |||
Active as of 2025-09-17 | Computable Name: DosageDgMP |
Gibt an, wie das Medikament vom Patienten im Kontext dgMP eingenommen wird/wurde oder eingenommen werden soll.
Dieses Profil beschreibt eine technisch streng validierte Ausprägung der FHIR-Ressource Dosage
für den deutschen Kontext und ist speziell für den Einsatz im dgMP-Prozess entwickelt worden. Das Profil enthält gezielte Einschränkungen und Vorgaben, um die technische Überprüfbarkeit und Konsistenz von Dosierungsangaben sicherzustellen.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 0..1 | string | Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Stück bei Bedarf' |
![]() ![]() ![]() |
SΣ | 0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll |
![]() ![]() ![]() |
SΣ | 0..1 | Element | Menge des verabreichten Medikaments |
![]() ![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of medication per dose Slice: Unordered, Closed by type:$this |
![]() ![]() ![]() ![]() ![]() |
SΣ | 0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Coded form of the unit |
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageDoseUnitSameCode | error | Dosage | Die Dosiereinheit muss über alle Dosierungen gleich sein. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies %resource.dosageInstruction.doseAndRate.dose.ofType(Quantity).code.distinct().count() = 1 ) | |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredOrFreeTextWarning | warning | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresBoth | error | Dosage | Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
DosageWarnungViererschemaInText | warning | Dosage | Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. : text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not() | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
FreeTextSingleDosageOnlyWarning | warning | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
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() |
This structure is derived from DosageDE
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | Element | Menge des verabreichten Medikaments | |
![]() ![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | Amount of medication per dose | |
![]() ![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | code | Coded form of the unit |
![]() ![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) |
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 0..1 | string | Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Stück bei Bedarf' |
![]() ![]() ![]() |
SΣ | 0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll |
![]() ![]() ![]() |
SΣ | 0..1 | Element | Menge des verabreichten Medikaments |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of medication per dose Slice: Unordered, Closed by type:$this |
![]() ![]() ![]() ![]() ![]() |
SΣ | 0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Coded form of the unit |
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageDoseUnitSameCode | error | Dosage | Die Dosiereinheit muss über alle Dosierungen gleich sein. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies %resource.dosageInstruction.doseAndRate.dose.ofType(Quantity).code.distinct().count() = 1 ) | |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredOrFreeTextWarning | warning | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresBoth | error | Dosage | Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
DosageWarnungViererschemaInText | warning | Dosage | Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. : text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not() | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
FreeTextSingleDosageOnlyWarning | warning | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
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() |
This structure is derived from DosageDE
Key Elements View
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 0..1 | string | Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Stück bei Bedarf' |
![]() ![]() ![]() |
SΣ | 0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll |
![]() ![]() ![]() |
SΣ | 0..1 | Element | Menge des verabreichten Medikaments |
![]() ![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of medication per dose Slice: Unordered, Closed by type:$this |
![]() ![]() ![]() ![]() ![]() |
SΣ | 0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Coded form of the unit |
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageDoseUnitSameCode | error | Dosage | Die Dosiereinheit muss über alle Dosierungen gleich sein. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies %resource.dosageInstruction.doseAndRate.dose.ofType(Quantity).code.distinct().count() = 1 ) | |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredOrFreeTextWarning | warning | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresBoth | error | Dosage | Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
DosageWarnungViererschemaInText | warning | Dosage | Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. : text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not() | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
FreeTextSingleDosageOnlyWarning | warning | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
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() |
Differential View
This structure is derived from DosageDE
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | Element | Menge des verabreichten Medikaments | |
![]() ![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | Amount of medication per dose | |
![]() ![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | code | Coded form of the unit |
![]() ![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..0 | |||
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | DosageDE | How the medication is/was taken or should be taken Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning, DosageStructuredOrFreeText, DosageStructuredRequiresGeneratedText, FreeTextSingleDosageOnly |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 0..1 | string | Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Stück bei Bedarf' |
![]() ![]() ![]() |
SΣ | 0..1 | TimingDgMP | Wann das Medikament verabreicht werden soll |
![]() ![]() ![]() |
SΣ | 0..1 | Element | Menge des verabreichten Medikaments |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of medication per dose Slice: Unordered, Closed by type:$this |
![]() ![]() ![]() ![]() ![]() |
SΣ | 0..1 | SimpleQuantity | Menge des Medikaments pro Dosis Binding: https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT (required) |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() |
N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | string | Unit representation |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣC | 1..1 | uri | System that defines coded unit form |
![]() ![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Coded form of the unit |
![]() |
Path | Conformance | ValueSet | URI |
Dosage.doseAndRate.dose[x]:doseQuantity | required | https://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIThttps://fhir.kbv.de/ValueSet/KBV_VS_SFHIR_BMP_DOSIEREINHEIT |
Id | Grade | Path(s) | Details | Requirements |
DosageDoseUnitSameCode | error | Dosage | Die Dosiereinheit muss über alle Dosierungen gleich sein. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies %resource.dosageInstruction.doseAndRate.dose.ofType(Quantity).code.distinct().count() = 1 ) | |
DosageStructuredOrFreeText | error | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredOrFreeTextWarning | warning | Dosage | Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. : (%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() or doseAndRate.exists())) ) | |
DosageStructuredRequiresBoth | error | Dosage | Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. : (%resource.ofType(MedicationRequest).dosageInstruction | ofType(MedicationDispense).dosageInstruction | ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) ) | |
DosageStructuredRequiresGeneratedText | error | Dosage | Liegt eine strukturierte Dosierungsangabe vor (timing und doseAndRate belegt, text leer), muss die Extension GeneratedDosageInstructionsMeta vorhanden sein. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(timing.exists() and doseAndRate.exists() and text.empty()) ) implies ( %resource.extension.where( url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta' ).exists() and ( %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationRequest.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction' ).exists() or %resource.extension.where( url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationStatement.renderedDosageInstruction' ).exists() ) ) | |
DosageWarnungViererschemaInText | warning | Dosage | Hinweis: In Dosage.text wurde ein Viererschema (z. B. 1-1-1-1) erkannt. Bitte prüfen, ob dies strukturiert abgebildet werden kann. : text.exists() implies text.matches('.*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\s*\\d+\\s*[-–]\\d+.*').not() | |
FreeTextSingleDosageOnly | error | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, darf nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
FreeTextSingleDosageOnlyWarning | warning | Dosage | Wenn eine Dosierung als reiner Freitext angegeben ist, soll nur genau ein Dosage-Element existieren. : ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).exists(text.exists() and timing.empty() and doseAndRate.empty()) ) implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage ).count() = 1 ) | |
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() |
This structure is derived from DosageDE
Other representations of profile: CSV, Excel, Schematron