Implementation Guide
TIFlow - Verordnungen für Arzneimittel
Version 2.0.0-ballot.2 - ballot

Resource Profile: GEM ERP PR MedicationDispense

Official URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense Version: 2.0.0-ballot.2
Active as of 2026-06-30 Computable Name: GEM_ERP_PR_MedicationDispense

Copyright/Legal: gematik GmbH / Dieses Artefakt ist lizenziert unter Apache License, Version 2.0.

Dispensierung eines E-Rezepts

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
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-dosageExtensionBeiDosierung
... meta SΣ 1..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... Slices for profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension Content/Rules for all slices
.... extension:rxPrescriptionProcessIdentifier 0..1 RxPrescriptionProcessIdentifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/rx-prescription-process-identifier-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... Slices for identifier 1..* Identifier E-Rezept-ID
Slice: Unordered, Open by pattern:$this
.... identifier:RxOriginatorProcessIdentifier 0..1 RxOriginatorProcessIdentifier An identifier intended for computation

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/epa-medication/sid/rx-originator-process-identifier
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code completed
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs (required): A coded concept specifying the state of the dispense event.
Fixed Value: completed
... category S 0..1 CodeableConcept Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin.
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs (required): Definiert den Kontext einer Abgabe: mit oder ohne ärztliche Verschreibung.
... medication[x] SΣ 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... subject SΣ 1..1 Reference(Patient) Who the dispense is for
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... performer S 1..1 BackboneElement Who performed event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... actor 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... identifier Σ 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
... authorizingPrescription S 0..* Reference(MedicationRequest) Medication order that authorizes the dispense
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
... whenPrepared ΣC 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver SC 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... note 0..* Annotation Abgabehinweise
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning
... substitution S 0..1 BackboneElement Whether a substitution was performed on the dispense
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs Not State Unknown
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown

Constraints

Id Grade Path(s) Description Expression
DosageDoseUnitSameCode error MedicationDispense.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeTextWarning warning MedicationDispense.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationDispense.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageWarnungViererschemaInText warning MedicationDispense.dosageInstruction 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()
FreeTextSingleDosageOnlyWarning warning MedicationDispense.dosageInstruction 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 )
dom-2 error MedicationDispense If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationDispense If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationDispense A resource should have narrative for robust management text.`div`.exists()
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()
mdd-1 error MedicationDispense whenHandedOver cannot be before whenPrepared whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()

This structure is derived from TIMedicationDispenseDgMP

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: workflow-dosageExtensionBeiDosierung
... meta 1..1 Meta Metadata about the resource
.... Slices for profile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
... identifier 1..* Identifier E-Rezept-ID
... Slices for identifier Content/Rules for all slices
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier
Required Pattern: At least the following
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
... status 1..1 code completed
Fixed Value: completed
... statusReason[x] 0..0 Why a dispense was not performed
... medication[x] 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer
.... actor
..... identifier 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
... location 0..0 Where the dispense occurred
... type 0..0 Trial fill, partial fill, emergency fill, etc.
... quantity 0..0 Amount dispensed
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenPrepared C 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver C 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... destination 0..0 Where the medication was sent
... note 0..* Annotation Abgabehinweise
... substitution
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense
.... type 0..0 Code signifying whether a different drug was dispensed from what was prescribed
.... reason 0..0 Why was substitution made
.... responsibleParty 0..0 Who is responsible for the substitution
... detectedIssue 0..0 Clinical issue with action
... eventHistory 0..0 A list of relevant lifecycle events

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-dosageExtensionBeiDosierung
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... Slices for profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... extension:rxPrescriptionProcessIdentifier 0..1 RxPrescriptionProcessIdentifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/rx-prescription-process-identifier-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier 1..* Identifier E-Rezept-ID
Slice: Unordered, Open by pattern:$this
.... identifier:RxOriginatorProcessIdentifier 0..1 RxOriginatorProcessIdentifier An identifier intended for computation

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/epa-medication/sid/rx-originator-process-identifier
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code completed
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs (required): A coded concept specifying the state of the dispense event.
Fixed Value: completed
... category S 0..1 CodeableConcept Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin.
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs (required): Definiert den Kontext einer Abgabe: mit oder ohne ärztliche Verschreibung.
... medication[x] SΣ 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... subject SΣ 1..1 Reference(Patient) Who the dispense is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
.... display Σ 0..1 string Text alternative for the resource
... performer S 1..1 BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.
.... actor 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
..... identifier Σ 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
... authorizingPrescription S 0..* Reference(MedicationRequest) Medication order that authorizes the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... whenPrepared ΣC 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver SC 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Abgabehinweise
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning
... substitution S 0..1 BackboneElement Whether a substitution was performed on the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.meta.​security Base extensible SecurityLabels 📦4.0.1 FHIR Std.
MedicationDispense.meta.​tag Base example Common Tags 📦4.0.1 FHIR Std.
MedicationDispense.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationDispense.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs Not State Unknown
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown
MedicationDispense.subject.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationDispense.performer.​function Base example Medication dispense performer function codes 📦4.0.1 FHIR Std.
MedicationDispense.performer.​actor.type Base extensible ResourceType 📍4.0.1 FHIR Std.
MedicationDispense.authorizingPrescription.​type Base extensible ResourceType 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
DosageDoseUnitSameCode error MedicationDispense.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeTextWarning warning MedicationDispense.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationDispense.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageWarnungViererschemaInText warning MedicationDispense.dosageInstruction 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()
FreeTextSingleDosageOnlyWarning warning MedicationDispense.dosageInstruction 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 )
dom-2 error MedicationDispense If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationDispense If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationDispense A resource should have narrative for robust management text.`div`.exists()
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()
mdd-1 error MedicationDispense whenHandedOver cannot be before whenPrepared whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()

This structure is derived from TIMedicationDispenseDgMP

Summary

Mandatory: 6 elements
Must-Support: 3 elements
Fixed: 2 elements
Prohibited: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of MedicationDispense.meta.profile (Closed)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-dosageExtensionBeiDosierung
... meta SΣ 1..1 Meta Metadata about the resource
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... Slices for profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension Content/Rules for all slices
.... extension:rxPrescriptionProcessIdentifier 0..1 RxPrescriptionProcessIdentifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/rx-prescription-process-identifier-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... Slices for identifier 1..* Identifier E-Rezept-ID
Slice: Unordered, Open by pattern:$this
.... identifier:RxOriginatorProcessIdentifier 0..1 RxOriginatorProcessIdentifier An identifier intended for computation

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/epa-medication/sid/rx-originator-process-identifier
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code completed
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs (required): A coded concept specifying the state of the dispense event.
Fixed Value: completed
... category S 0..1 CodeableConcept Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin.
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs (required): Definiert den Kontext einer Abgabe: mit oder ohne ärztliche Verschreibung.
... medication[x] SΣ 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... subject SΣ 1..1 Reference(Patient) Who the dispense is for
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
... performer S 1..1 BackboneElement Who performed event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... actor 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... identifier Σ 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
... authorizingPrescription S 0..* Reference(MedicationRequest) Medication order that authorizes the dispense
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
... whenPrepared ΣC 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver SC 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... note 0..* Annotation Abgabehinweise
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning
... substitution S 0..1 BackboneElement Whether a substitution was performed on the dispense
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs Not State Unknown
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown

Constraints

Id Grade Path(s) Description Expression
DosageDoseUnitSameCode error MedicationDispense.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeTextWarning warning MedicationDispense.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationDispense.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageWarnungViererschemaInText warning MedicationDispense.dosageInstruction 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()
FreeTextSingleDosageOnlyWarning warning MedicationDispense.dosageInstruction 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 )
dom-2 error MedicationDispense If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationDispense If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationDispense A resource should have narrative for robust management text.`div`.exists()
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()
mdd-1 error MedicationDispense whenHandedOver cannot be before whenPrepared whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()

Differential View

This structure is derived from TIMedicationDispenseDgMP

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: workflow-dosageExtensionBeiDosierung
... meta 1..1 Meta Metadata about the resource
.... Slices for profile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile S 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
... identifier 1..* Identifier E-Rezept-ID
... Slices for identifier Content/Rules for all slices
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier
Required Pattern: At least the following
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
... status 1..1 code completed
Fixed Value: completed
... statusReason[x] 0..0 Why a dispense was not performed
... medication[x] 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer
.... actor
..... identifier 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
... location 0..0 Where the dispense occurred
... type 0..0 Trial fill, partial fill, emergency fill, etc.
... quantity 0..0 Amount dispensed
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenPrepared C 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver C 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... destination 0..0 Where the medication was sent
... note 0..* Annotation Abgabehinweise
... substitution
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense
.... type 0..0 Code signifying whether a different drug was dispensed from what was prescribed
.... reason 0..0 Why was substitution made
.... responsibleParty 0..0 Who is responsible for the substitution
... detectedIssue 0..0 Clinical issue with action
... eventHistory 0..0 A list of relevant lifecycle events

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-dosageExtensionBeiDosierung
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 1..1 Meta Metadata about the resource
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId SΣ 0..1 id Version specific identifier
.... lastUpdated SΣ 0..1 instant When the resource version last changed
.... source Σ 0..1 uri Identifies where the resource comes from
.... Slices for profile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to
Slice: Unordered, Closed by value:$this
..... profile:workflowProfile SΣ 1..1 canonical(StructureDefinition) Profiles this resource claims to conform to

Fixed Value: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense|2.0
.... security Σ 0..* Coding Security Labels applied to this resource
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... tag Σ 0..* Coding Tags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... extension:rxPrescriptionProcessIdentifier 0..1 RxPrescriptionProcessIdentifier Extension
URL: https://gematik.de/fhir/epa-medication/StructureDefinition/rx-prescription-process-identifier-extension
.... extension:renderedDosageInstruction SN 0..1 (Complex) Vollständige Darstellung der Dosierungsanweisungen (generiert aus den Dosage-Elementen).
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction"
..... value[x] S 0..1 markdown Full representation of the dosage instructions
.... extension:generatedDosageInstructionsMeta SN 0..1 (Complex) Metadaten zu den generierten Dosierungsanweisungen
URL: http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... Slices for identifier 1..* Identifier E-Rezept-ID
Slice: Unordered, Open by pattern:$this
.... identifier:RxOriginatorProcessIdentifier 0..1 RxOriginatorProcessIdentifier An identifier intended for computation

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/epa-medication/sid/rx-originator-process-identifier
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier:prescriptionID 1..1 EPrescriptionId External identifier

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... use 0..1 code usual | official | temp | secondary | old (If known)
..... type 0..1 CodeableConcept Description of identifier
..... system 1..1 uri The namespace for the identifier value
Fixed Value: https://gematik.de/fhir/erp/NamingSystem/GEM_ERP_NS_PrescriptionId
..... value 0..1 string The value that is unique
..... period 0..1 Period Time period when id is/was valid for use
..... assigner 0..1 Reference(Organization) Organization that issued id (may be just text)
... status ?!SΣ 1..1 code completed
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs (required): A coded concept specifying the state of the dispense event.
Fixed Value: completed
... category S 0..1 CodeableConcept Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin.
Binding: https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs (required): Definiert den Kontext einer Abgabe: mit oder ohne ärztliche Verschreibung.
... medication[x] SΣ 1..1 Reference(GEM ERP PR Medication) What medication was supplied
... subject SΣ 1..1 Reference(Patient) Who the dispense is for
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier SΣ 1..1 IdentifierKvid10 An identifier intended for computation
.... display Σ 0..1 string Text alternative for the resource
... performer S 1..1 BackboneElement Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.
.... actor 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
..... identifier Σ 1..1 IdentifierTelematikId Logical reference, when literal reference is not known
..... display Σ 0..1 string Text alternative for the resource
... authorizingPrescription S 0..* Reference(MedicationRequest) Medication order that authorizes the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier Σ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... whenPrepared ΣC 0..1 dateTime When product was packaged and reviewed
Constraints: workflow-abgabeDatumsFormat
... whenHandedOver SC 1..1 dateTime When product was given out
Constraints: workflow-abgabeDatumsFormat
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Abgabehinweise
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning
... substitution S 0..1 BackboneElement Whether a substitution was performed on the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted S 1..1 boolean Whether a substitution was or was not performed on the dispense

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationDispense.meta.​security Base extensible SecurityLabels 📦4.0.1 FHIR Std.
MedicationDispense.meta.​tag Base example Common Tags 📦4.0.1 FHIR Std.
MedicationDispense.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationDispense.status Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-status-vs Not State Unknown
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown
MedicationDispense.subject.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationDispense.performer.​function Base example Medication dispense performer function codes 📦4.0.1 FHIR Std.
MedicationDispense.performer.​actor.type Base extensible ResourceType 📍4.0.1 FHIR Std.
MedicationDispense.authorizingPrescription.​type Base extensible ResourceType 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
DosageDoseUnitSameCode error MedicationDispense.dosageInstruction Die Dosiereinheit muss über alle Dosierungen gleich sein. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( doseAndRate.exists() implies ( (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Quantity).code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).low.code | (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).doseAndRate.dose.ofType(Range).high.code ).distinct().count() = 1 )
DosageStructuredOrFreeTextWarning warning MedicationDispense.dosageInstruction Die Dosierungsangabe darf entweder nur als Freitext oder nur als vollständige strukturierte Information erfolgen — eine Mischung ist nicht erlaubt. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (text.exists() and timing.empty() and doseAndRate.empty()) or (text.empty() and (timing.exists() or doseAndRate.exists())) )
DosageStructuredRequiresBoth error MedicationDispense.dosageInstruction Wenn eine strukturierte Dosierungsangabe erfolgt, müssen sowohl timing als auch doseAndRate angegeben werden. (%resource.ofType(MedicationRequest).dosageInstruction | %resource.ofType(MedicationDispense).dosageInstruction | %resource.ofType(MedicationStatement).dosage).all( (timing.exists() implies doseAndRate.exists()) and (doseAndRate.exists() implies timing.exists()) )
DosageWarnungViererschemaInText warning MedicationDispense.dosageInstruction 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()
FreeTextSingleDosageOnlyWarning warning MedicationDispense.dosageInstruction 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 )
dom-2 error MedicationDispense If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationDispense If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error MedicationDispense If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationDispense A resource should have narrative for robust management text.`div`.exists()
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()
mdd-1 error MedicationDispense whenHandedOver cannot be before whenPrepared whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
workflow-abgabeDatumsFormat error MedicationDispense.whenPrepared, MedicationDispense.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-dosageExtensionBeiDosierung error MedicationDispense Wenn eine Dosierung angegeben wurde, muss der generierte Dosierungstext, sowie die Metainformationen zur Generierung angegeben werden. dosageInstruction.exists() implies extension.where(url = 'http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction').exists() and extension.where(url = 'http://ig.fhir.de/igs/medication/StructureDefinition/GeneratedDosageInstructionsMeta').exists()

This structure is derived from TIMedicationDispenseDgMP

Summary

Mandatory: 6 elements
Must-Support: 3 elements
Fixed: 2 elements
Prohibited: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of MedicationDispense.meta.profile (Closed)

 

Other representations of profile: CSV, Excel, Schematron