## 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.2.0' vs '1.3.1'
Information | StructureDefinition.date | Values for date differ: '2025-09-12' vs '2026-03-20'
Information | StructureDefinition.copyright | Values for copyright differ: 'gematik GmbH' vs 'gematik GmbH / Dieses Artefakt ist lizenziert unter [Apache License](./license.html), Version 2.0.'
Information | StructureDefinition.short | Values for short differ: 'Additional content defined by implementations' vs 'Extension'
Information | StructureDefinition.definition | Values for definition differ: 'May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.' vs 'An Extension'
Warning | MedicationDispense.extension | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.identifier | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.performer.actor | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.authorizingPrescription | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.authorizingPrescription.identifier | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.authorizingPrescription.display | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationDispense.substitution.wasSubstituted | 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 | gematik GmbH / Dieses Artefakt ist lizenziert unter [Apache License](./license.html), Version 2.0. | Values Differ
date | 2025-09-12 | 2026-03-20 | 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.2.0 | 1.3.1 | 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 |  | 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
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 |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | S | 0..* | Extension | Extension Slice: Unordered, Open by value:url | Elements differ in definition for mustSupport: 'false' vs 'true'
Slices for modifierExtension | ?! | 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 | S | 0..* | Identifier | External identifier Slice: Unordered, Open by pattern:$this | Elements differ in definition for mustSupport: 'false' vs 'true'
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 | 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. | 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. |
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
coding |  |  |  |  | S Σ | 0..* | Coding | Code defined by a terminology system | Added this element
text |  |  |  |  | Σ | 0..1 | string | Plain text representation of the concept | Added this element
medication[x] | S Σ | 1..1 | Reference(Medication) | What medication was supplied | S Σ | 1..1 | Reference(Medication) | What medication was supplied |
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
reference |  |  |  |  | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL | Added this element
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). | Added this element
identifier |  |  |  |  | S Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | Added this element
display |  |  |  |  | S Σ | 0..1 | string | Text alternative for the resource | Added this element
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 |  | 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 |  | 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 | S C | 1..1 | Reference(Organization | PractitionerRole) | Individual who was performing | Elements differ in definition for mustSupport: 'false' vs 'true'
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
reference |  |  |  |  | S Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL | Added this element
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). | Added this element
identifier |  |  |  |  | S Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | Added this element
display |  |  |  |  | S Σ | 0..1 | string | Text alternative for the resource | Added this element
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 | S C | 0..* | Reference(MedicationRequest) | Medication order that authorizes the dispense | Elements differ in definition for mustSupport: 'false' vs 'true'
id |  | 0..1 | string | Unique id for inter-element referencing |  | 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 |  | 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 | S Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | Elements differ in definition for mustSupport: 'false' vs 'true'
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
use |  |  |  |  | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: ?? (required): Identifies the purpose for this identifier, if known . | Added this element
type |  |  |  |  | S Σ | 0..1 | CodeableConcept | Description of identifier Binding: ?? (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | Added this element
system |  |  |  |  | S Σ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | Added this element
value |  |  |  |  | S Σ | 0..1 | string | The value that is unique Example General: 123456 | Added this element
period |  |  |  |  | Σ C | 0..1 | Period | Time period when id is/was valid for use | Added this element
assigner |  |  |  |  | Σ C | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | Added this element
display | Σ | 0..1 | string | Text alternative for the resource | S Σ | 0..1 | string | Text alternative for the resource | Elements differ in definition for mustSupport: 'false' vs 'true'
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..* | ?? | Hier werden Informationen zur Dosierung angegeben. | S | 0..* | ?? | Hier werden Informationen zur Dosierung angegeben. |
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
modifierExtension |  |  |  |  | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | Added this element
sequence |  |  |  |  | Σ | 0..0 |  | The order of the dosage instructions | Added this element
text |  |  |  |  | S Σ | 0..1 | string | Freitext-Dosierungsanweisungen, z. B. 'Maximal 3x täglich 1 Stück bei Bedarf' | Added this element
additionalInstruction |  |  |  |  | Σ | 0..0 |  | 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". | Added this element
patientInstruction |  |  |  |  | Σ | 0..0 |  | Patient or consumer oriented instructions | Added this element
timing |  |  |  |  | S Σ | 0..1 | ?? | A timing schedule that specifies an event that may occur multiple times | Added this element
asNeeded[x] |  |  |  |  | Σ | 0..0 |  | 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. | Added this element
site |  |  |  |  | Σ | 0..0 |  | Body site to administer to Binding: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. | Added this element
route |  |  |  |  | Σ | 0..0 |  | 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. | Added this element
method |  |  |  |  | Σ | 0..0 |  | Technique for administering medication Binding: ?? (example): A coded concept describing the technique by which the medicine is administered. | Added this element
doseAndRate |  |  |  |  | S Σ | 0..1 | Element | Menge des verabreichten Medikaments | Added this element
maxDosePerPeriod |  |  |  |  | Σ | 0..0 |  | Upper limit on medication per unit of time | Added this element
maxDosePerAdministration |  |  |  |  | Σ | 0..0 |  | Upper limit on medication per administration | Added this element
maxDosePerLifetime |  |  |  |  | Σ | 0..0 |  | Upper limit on medication per lifetime of the patient | Added 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 |  | 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 | S | 1..1 | boolean | Whether a substitution was or was not performed on the dispense | Elements differ in definition for mustSupport: 'false' vs 'true'
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