Implementation Guide
TIFlow - Verordnungen für Digitale Gesundheitsanwendungen (DiGA)
Version 2.0.0 - release

Resource Profile: GEM ERP PR MedicationDispense DiGA

Official URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_MedicationDispense_DiGA Version: 2.0.0
Active as of 2026-10-02 Computable Name: GEM_ERP_PR_MedicationDispense_DiGA

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

Dispensierung einer DiGA-Verordnung

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-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... meta SΣ 0..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
... 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
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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(Medication) What medication was supplied
.... Slices for extension Content/Rules for all slices
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/data-absent-reason"
...... value[x] 1..1 code Value of extension
Binding: DataAbsentReason (required)
Required Pattern: asked-declined
.... identifier SΣ 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... system SΣ 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value SΣ 1..1 string The value that is unique
Example General: 123456
.... display SΣ 0..1 string Name der DiGA-Verschreibungseinheit.
... 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 S 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
... whenHandedOver SC 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning

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
MedicationDispense.medication[x].​extension:data-absent-reason.​value[x] Base required DataAbsentReason 📦4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.use Base required IdentifierUse 📍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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.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-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... Slices for extension Content/Rules for all slices
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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
... medication[x] 1..1 Reference(Medication) What medication was supplied
.... Slices for extension Content/Rules for all slices
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... value[x] 1..1 code Value of extension
Required Pattern: asked-declined
.... identifier S 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... system S 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value S 1..1 string The value that is unique
.... display S 0..1 string Name der DiGA-Verschreibungseinheit.
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer
.... actor S 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... 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.
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenHandedOver C 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... destination 0..0 Where the medication was sent
... substitution 0..0 Whether a substitution was performed on the dispense
... 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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.exists())
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..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
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... 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
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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
... statusReason[x] 0..1 Why a dispense was not performed
Binding: MedicationDispense Status Reason Codes (example): A code describing why a dispense was not performed.
.... statusReasonCodeableConcept CodeableConcept
.... statusReasonReference Reference(DetectedIssue)
... 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(Medication) What medication was supplied
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... 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/StructureDefinition/data-absent-reason"
...... value[x] 1..1 code Value of extension
Binding: DataAbsentReason (required)
Required Pattern: asked-declined
.... 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Σ 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system SΣ 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value SΣ 1..1 string The value that is unique
Example General: 123456
..... 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)
.... display SΣ 0..1 string Name der DiGA-Verschreibungseinheit.
... 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 S 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
... quantity 0..1 SimpleQuantity Amount dispensed
... whenPrepared Σ 0..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Information about the dispense
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning

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.statusReason[x] Base example Medication dispense status reason codes 📦4.0.1 FHIR Std.
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown
MedicationDispense.medication[x].​extension:data-absent-reason.​value[x] Base required DataAbsentReason 📦4.0.1 FHIR Std.
MedicationDispense.medication[x].​type Base extensible ResourceType 📍4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
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.
MedicationDispense.substitution.​type Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.4
MedicationDispense.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.4

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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.exists())

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... meta SΣ 0..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
... 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
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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(Medication) What medication was supplied
.... Slices for extension Content/Rules for all slices
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... extension 0..0 Additional content defined by implementations
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/data-absent-reason"
...... value[x] 1..1 code Value of extension
Binding: DataAbsentReason (required)
Required Pattern: asked-declined
.... identifier SΣ 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... system SΣ 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value SΣ 1..1 string The value that is unique
Example General: 123456
.... display SΣ 0..1 string Name der DiGA-Verschreibungseinheit.
... 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 S 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
... whenHandedOver SC 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning

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
MedicationDispense.medication[x].​extension:data-absent-reason.​value[x] Base required DataAbsentReason 📦4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.use Base required IdentifierUse 📍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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.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-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... Slices for extension Content/Rules for all slices
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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
... medication[x] 1..1 Reference(Medication) What medication was supplied
.... Slices for extension Content/Rules for all slices
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... value[x] 1..1 code Value of extension
Required Pattern: asked-declined
.... identifier S 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... system S 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value S 1..1 string The value that is unique
.... display S 0..1 string Name der DiGA-Verschreibungseinheit.
... context 0..0 Encounter / Episode associated with event
... supportingInformation 0..0 Information that supports the dispensing of the medication
... performer
.... actor S 1..1 Reference(Organization | PractitionerRole) Individual who was performing
..... 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.
... daysSupply 0..0 Amount of medication expressed as a timing amount
... whenHandedOver C 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... destination 0..0 Where the medication was sent
... substitution 0..0 Whether a substitution was performed on the dispense
... 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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.exists())

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationDispense C 0..* TIMedicationDispenseDgMP Dispensing a medication to a named patient
Constraints: mdd-1, workflow-medicationdispense-redeemcode-1, workflow-medicationdispense-redeemcode-2, workflow-medicationdispense-redeemcode-3
... id Σ 0..1 id Logical id of this artifact
... meta SΣ 0..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
.... profile Σ 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
.... 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
.... extension:redeemCode 0..1 string Extension
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode
.... extension:deepLink 0..1 url Angabe eines Deep Links, der zum Öffnen der DiGA verwendet werden kann.
URL: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_DeepLink
... 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
... statusReason[x] 0..1 Why a dispense was not performed
Binding: MedicationDispense Status Reason Codes (example): A code describing why a dispense was not performed.
.... statusReasonCodeableConcept CodeableConcept
.... statusReasonReference Reference(DetectedIssue)
... 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(Medication) What medication was supplied
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... extension:data-absent-reason 0..1 (Complex) unknown | asked | temp | notasked | masked | unsupported | astext | error
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
...... 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/StructureDefinition/data-absent-reason"
...... value[x] 1..1 code Value of extension
Binding: DataAbsentReason (required)
Required Pattern: asked-declined
.... 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Σ 0..1 Identifier Eindeutige Identifikationsnummer für eine Verschreibungseinheit einer DiGA (PZN).
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system SΣ 1..1 uri The namespace for the identifier value
Fixed Value: http://fhir.de/CodeSystem/ifa/pzn
..... value SΣ 1..1 string The value that is unique
Example General: 123456
..... 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)
.... display SΣ 0..1 string Name der DiGA-Verschreibungseinheit.
... 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 S 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
... quantity 0..1 SimpleQuantity Amount dispensed
... whenPrepared Σ 0..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 1..1 dateTime Abgabedatum
Constraints: workflow-abgabeDatumsFormat
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Information about the dispense
... dosageInstruction SC 0..* DosageDE Hier werden Informationen zur Dosierung angegeben.
Constraints: DosageStructuredOrFreeTextWarning, DosageStructuredRequiresBoth, DosageDoseUnitSameCode, DosageWarnungViererschemaInText, FreeTextSingleDosageOnlyWarning

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.statusReason[x] Base example Medication dispense status reason codes 📦4.0.1 FHIR Std.
MedicationDispense.category Base required https://gematik.de/fhir/terminology/ValueSet/ti-medication-dispense-category-vs Not State Unknown
MedicationDispense.medication[x].​extension:data-absent-reason.​value[x] Base required DataAbsentReason 📦4.0.1 FHIR Std.
MedicationDispense.medication[x].​type Base extensible ResourceType 📍4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
MedicationDispense.medication[x].​identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
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.
MedicationDispense.substitution.​type Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.4
MedicationDispense.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.4

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.whenHandedOver Wert muss ein Datum in der Form: YYYY-MM-DD sein. toString().length()=10
workflow-medicationdispense-redeemcode-1 error MedicationDispense Eine Notiz wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies note.exists()
workflow-medicationdispense-redeemcode-2 error MedicationDispense Der Grund für fehlende Daten wurde nicht gefunden, ist jedoch obligatorisch, wenn kein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').empty() implies medication.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
workflow-medicationdispense-redeemcode-3 error MedicationDispense Name und Kennung der DiGA wurden nicht gefunden, sind jedoch obligatorisch, wenn ein Einlösecode angegeben wird. extension.where(url = 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_EX_RedeemCode').exists() implies (medication.display.exists() and medication.identifier.exists())

 

Other representations of profile: CSV, Excel, Schematron