## Profile Comparison between https://gematik.de/fhir/epa-medication/StructureDefinition/epa-medication-dispense vs https://gematik.de/fhir/epa-medication/StructureDefinition/epa-medication-dispense

Left: | EPA MedicationDispense (https://gematik.de/fhir/epa-medication/StructureDefinition/epa-medication-dispense)
Right: | EPA MedicationDispense (https://gematik.de/fhir/epa-medication/StructureDefinition/epa-medication-dispense)

### Messages

Error | StructureDefinition.version | Values for version differ: '1.0.6-2' vs '1.3.0'
Information | StructureDefinition.date | Values for date differ: '2025-05-12' vs '2025-12-15'
Information | MedicationDispense.language | Example/preferred bindings differ at MedicationDispense.language using binding from EPAMedicationDispense
Information | StructureDefinition.short | Values for short differ: 'Type of medication dispense' vs 'Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin.'
Warning | MedicationDispense.category | Elements differ in definition for mustSupport: 'false' vs 'true'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationDispense |
copyright |  | gematik GmbH / Dieses Artefakt ist lizenziert unter [Apache License](./license.html), Version 2.0. | Added the item 'gematik GmbH / Dieses Artefakt ist lizenziert unter [Apache License](./license.html), Version 2.0.'
date | 2025-05-12 | 2025-12-15 | Values Differ
description | Defines the medication dispense resource for the Medication Service in the ePA system. |
experimental | false |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | urn:iso:std:iso:3166#DE |
kind | resource |
name | EPAMedicationDispense |
publisher | gematik GmbH |
purpose |  |
status | active |
title | EPA MedicationDispense |
type | MedicationDispense |
url | https://gematik.de/fhir/epa-medication/StructureDefinition/epa-medication-dispense |
version | 1.0.6-2 | 1.3.0 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense | Dispensing a medication to a named patient | C | 0..* | MedicationDispense | Dispensing a medication to a named patient |
id | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | S Σ | 0..1 | Meta | Metadata about the resource | S Σ | 0..1 | Meta | Metadata about the resource |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
versionId | S Σ | 0..1 | id | Version specific identifier | S Σ | 0..1 | id | Version specific identifier |
lastUpdated | S Σ | 0..1 | instant | When the resource version last changed | S Σ | 0..1 | instant | When the resource version last changed |
source | Σ | 0..1 | uri | Identifies where the resource comes from | Σ | 0..1 | uri | Identifies where the resource comes from |
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to |
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | Σ | 0..* | Coding | Security Labels applied to this resource Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
tag | Σ | 0..* | Coding | Tags applied to this resource Binding: ?? (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | Σ | 0..* | Coding | Tags applied to this resource Binding: ?? (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 | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
| Example/preferred bindings differ at MedicationDispense.language using binding from EPAMedicationDispense
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 |  | 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 |  | 0..* | Resource | Contained, inline Resources |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
Slices for modifierExtension | ?!N | 0..* | Extension | Extensions that cannot be ignored Slice: Unordered, Open by value:url | ?! | 0..* | Extension | Extensions that cannot be ignored Slice: Unordered, Open by value:url |
Slices for identifier |  | 0..* | Identifier | External identifier Slice: Unordered, Open by pattern:$this |  | 0..* | Identifier | External identifier Slice: Unordered, Open by pattern:$this |
partOf | C | 0..* | Reference(Procedure) | Event that dispense is part of | C | 0..* | Reference(Procedure) | Event that dispense is part of |
status | ?!S Σ | 1..1 | code | Status of medication dispense Binding: ?? (required): A coded concept specifying the state of the dispense event. | ?!S Σ | 1..1 | code | Status of medication dispense Binding: ?? (required) |
statusReason[x] |  | 0..1 | CodeableConcept, Reference(DetectedIssue) | Why a dispense was not performed Binding: ?? (example): A code describing why a dispense was not performed. |  | 0..1 | CodeableConcept, Reference(DetectedIssue) | Why a dispense was not performed Binding: ?? (example): A code describing why a dispense was not performed. |
category |  | 0..1 | CodeableConcept | Type of medication dispense Binding: ?? (preferred): A code describing where the dispensed medication is expected to be consumed or administered. | S | 0..1 | CodeableConcept | Fehlender oder nicht vorhandener Wert weist auf eine Abgabe mit Verschreibung hin. Binding: ?? (required): Definiert den Kontext einer Abgabe: mit oder ohne ärztliche Verschreibung. | Elements differ in definition for mustSupport: 'false' vs 'true'
medication[x] | S Σ | 1..1 | Reference(Medication) | What medication was supplied | S Σ | 1..1 | Reference(Medication) | What medication was supplied |
subject | S Σ C | 1..1 | Reference(Patient) | Who the dispense is for | S Σ C | 1..1 | Reference(Patient) | Who the dispense is for |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 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 | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL |
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). |
identifier | S Σ | 1..1 | ?? | Logical reference, when literal reference is not known | S Σ | 1..1 | ?? | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource | Σ | 0..1 | string | Text alternative for the resource |
context | C | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with event | C | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with event |
supportingInformation | C | 0..* | Reference(Resource) | Information that supports the dispensing of the medication | C | 0..* | Reference(Resource) | Information that supports the dispensing of the medication |
performer | S | 1..1 | BackboneElement | Who performed event | S | 1..1 | BackboneElement | Who performed event |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
function |  | 0..1 | CodeableConcept | Who performed the dispense and what they did Binding: ?? (example): A code describing the role an individual played in dispensing a medication. |  | 0..1 | CodeableConcept | Who performed the dispense and what they did Binding: ?? (example): A code describing the role an individual played in dispensing a medication. |
actor | C | 1..1 | Reference(Organization | PractitionerRole) | Individual who was performing | C | 1..1 | Reference(Organization | PractitionerRole) | Individual who was performing |
location | C | 0..1 | Reference(Location) | Where the dispense occurred | C | 0..1 | Reference(Location) | Where the dispense occurred |
authorizingPrescription | C | 0..* | Reference(MedicationRequest) | Medication order that authorizes the dispense | C | 0..* | Reference(MedicationRequest) | Medication order that authorizes the dispense |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 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 | 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: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (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 | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource | Σ | 0..1 | string | Text alternative for the resource |
type |  | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ?? (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc. |  | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ?? (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc. |
quantity | C | 0..1 | ?? | Amount dispensed | C | 0..1 | ?? | Amount dispensed |
daysSupply | C | 0..1 | ?? | Amount of medication expressed as a timing amount | C | 0..1 | ?? | Amount of medication expressed as a timing amount |
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed | Σ | 0..1 | dateTime | When product was packaged and reviewed |
whenHandedOver | S | 1..1 | dateTime | When product was given out | S | 1..1 | dateTime | When product was given out |
destination | C | 0..1 | Reference(Location) | Where the medication was sent | C | 0..1 | Reference(Location) | Where the medication was sent |
receiver | C | 0..* | Reference(Patient | Practitioner) | Who collected the medication | C | 0..* | Reference(Patient | Practitioner) | Who collected the medication |
note |  | 0..* | Annotation | Information about the dispense |  | 0..* | Annotation | Information about the dispense |
dosageInstruction | S | 0..* | Dosage | Hier werden Informationen zur Dosierung angegeben. | S | 0..* | ?? | Hier werden Informationen zur Dosierung angegeben. |
id |  | 0..1 | string | Unique id for inter-element referencing |  |  |  |  | Removed this element
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  |  |  |  | Removed this element
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |  |  |  |  | Removed this element
sequence | Σ | 0..1 | integer | The order of the dosage instructions |  |  |  |  | Removed this element
text | S Σ | 0..1 | string | Hier kann die Dosieranweisung in Form eines Freitextes abgebildet werden. |  |  |  |  | Removed this element
additionalInstruction | Σ | 0..* | CodeableConcept | Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" Binding: ?? (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". |  |  |  |  | Removed this element
patientInstruction | Σ | 0..1 | string | Patient or consumer oriented instructions |  |  |  |  | Removed this element
timing | Σ | 0..1 | Timing | When medication should be administered |  |  |  |  | Removed this element
asNeeded[x] | Σ | 0..1 | boolean, CodeableConcept | Take "as needed" (for x) Binding: ?? (example): A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc. |  |  |  |  | Removed this element
site | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. |  |  |  |  | Removed this element
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. |  |  |  |  | Removed this element
method | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: ?? (example): A coded concept describing the technique by which the medicine is administered. |  |  |  |  | Removed this element
doseAndRate | Σ | 0..* | Element | Amount of medication administered |  |  |  |  | Removed this element
maxDosePerPeriod | Σ C | 0..1 | Ratio | Upper limit on medication per unit of time |  |  |  |  | Removed this element
maxDosePerAdministration | Σ C | 0..1 | ?? | Upper limit on medication per administration |  |  |  |  | Removed this element
maxDosePerLifetime | Σ C | 0..1 | ?? | Upper limit on medication per lifetime of the patient |  |  |  |  | Removed this element
substitution | S | 0..1 | BackboneElement | Whether a substitution was performed on the dispense | S | 0..1 | BackboneElement | Whether a substitution was performed on the dispense |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension | N | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
wasSubstituted |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense |  | 1..1 | boolean | Whether a substitution was or was not performed on the dispense |
type |  | 0..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ?? (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. |  | 0..1 | CodeableConcept | Code signifying whether a different drug was dispensed from what was prescribed Binding: ?? (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription. |
reason |  | 0..* | CodeableConcept | Why was substitution made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |  | 0..* | CodeableConcept | Why was substitution made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |
responsibleParty | C | 0..* | Reference(Practitioner | PractitionerRole) | Who is responsible for the substitution | C | 0..* | Reference(Practitioner | PractitionerRole) | Who is responsible for the substitution |
detectedIssue | C | 0..* | Reference(DetectedIssue) | Clinical issue with action | C | 0..* | Reference(DetectedIssue) | Clinical issue with action |
eventHistory | C | 0..* | Reference(Provenance) | A list of relevant lifecycle events | C | 0..* | Reference(Provenance) | A list of relevant lifecycle events |
Documentation for this format