Seiteninhalt:
Dieser Implementation Guide verwendet die Schlüsselwörter MUSS, DARF NICHT, SOLL NICHT und KANN als deutsche Pendants des [RFC 2119], um Anforderungen als Ausdruck normativer Festlegungen zu kennzeichnen. Anforderungen werden im Implementation Guide wie folgt dargestellt:
<IG-ID-Version> - <Titel der Anforderung>
Text / Beschreibung
[<=]
[base]/epa/medication/api/v1/fhir/
[base]/epa/medication/render/
[base]
einem gültigen Pfadnamen eines VAU-Kanals nach folgendem Schema entsprechen muss:
http://epa4all
Code | Beschreibung | Error Code | Anmerkung |
---|---|---|---|
423 | If the insurant objected to the medication process or objected to the submission of prescription and dispensation data into the ePA system, the Medication Service is locked. | locked |
Das heißt, das potentielle “Nachkommastellen” mit einem Komma und insbesondere nicht mit einem Punkt abgetrennt werden sollen. Ein entsprechender Hinweis kann in einer Hilfeseite, unter der Eingabezeile oder auf anderem Wege angebracht werden, der sich gut in die Ergonomie des Primärsystems integriert.
Die folgenden Rahmenbedingungen hinsichtlich der FHIR-Spezifikation sind für den Medication Service festgelegt.
Wichtig: Gelöschte Instanzen bleiben über die FHIR-Versionshistorie weiterhin abrufbar, da keine physikalische Löschung erfolgt.
Hinweis: Dies betrifft Situationen, in denen Daten, die die Repräsentation einer Dezimalzahl darstellen, als Text ausgegeben werden. Dezimalzahlen in Freitextfeldern sind davon nicht betroffen.
Die zentrale De-Duplizierung bei inhaltlich identischen Ressourcen im Medication Service ist von entscheidender Bedeutung, um sowohl den Nutzen als auch die Qualität der Daten im Medication Service zu gewährleisten. Durch den nachstehenden Ansatz wird vermieden, dass ePA-Clients eigene, möglicherweise unterschiedliche Aggregierungsalgorithmen dezentral implementieren, was zu Inkonsistenzen in den Daten des Medication Service führen könnte. Zusätzlich verbessert eine zentrale De-Duplizierung die Verknüpfbarkeit und Integration der vorhandenen FHIR-Ressourcen.
Zur eindeutigen Identifizierung werden im Rahmen einer Verschreibung und ihr zugeordnete Dispensierinformationen die folgenden Identifier erzeugt und den notwendigen FHIR-Ressourcen hinzugefügt:
Beispiel-Extension für die Ressourcen Medication und MedicationDispense
"extension" : [
{
"url" : "https://gematik.de/fhir/epa-medication/StructureDefinition/rx-prescription-process-identifier-extension",
"valueIdentifier" : {
"system" : "https://gematik.de/fhir/epa-medication/sid/rx-prescription-process-identifier",
"value" : "160.153.303.257.459_20250122"
}
}
],
Beispiel-Identifier für die Ressource MedicationRequest
"identifier" : [
{
"system" : "https://gematik.de/fhir/epa-medication/sid/rx-prescription-process-identifier",
"value" : "160.153.303.257.459_20250122"
}
],
Beispiel
"identifier" : [
{
"system" : "https://gematik.de/fhir/epa-medication/sid/rx-originator-process-identifier",
"value" : "dc810e53-c26b-47bc-8c78-c7f79ea5f7ae_160.153.303.257.459"
}
],
Dieser im Medication Service erzeugte Identifier an Medication-Ressourcen stellt die Eindeutigkeit anhand von Hashwerten über Pharmazentralnummer (PZN), Wirkstoff oder Freitext sicher. Von der Hashwertbildung ausgenommen sind die FHIR-Elemente id, identifier, meta, amount, batch sowie status.
Beispiel:
"identifier" : [
{
"system" : "https://gematik.de/fhir/epa-medication/sid/epa-medication-unique-identifier",
"value" : "A632B2AB4232C9787E0731E3824942350070FB492EB1005A4AFA00F4BACD8AA1"
}
],
Eine Beispielimplementierung für die Generierung eines SHA-256-basierten Hash-Werts ist auf [Medication_Unique_Identifier_Tool] veröffentlicht und steht als Referenz zur Verfügung.
GET [base]/epa/medication/api/v1/fhir/metadata
implementieren. Diese Funktionalität stellt sicher, dass bei einem Aufruf von /metadata
das FHIR CapabilityStatement des Servers mit dem Namen EPAMedicationServiceServer zurückgegeben wird. Dieses Capability Statement bietet eine detaillierte Beschreibung der Fähigkeiten des Medication Service und ist entscheidend für das Verständnis der unterstützten FHIR-Funktionalitäten.
Operation API | OperationId |
---|---|
Operation API: Verschreibungsdaten einstellen | providePrescription_MedicationSvc |
Operation API: Verschreibungsdaten stornieren | cancelPrescription_MedicationSvc |
Operation API: Dispensierinformationen einstellen | provideDispensation_MedicationSvc |
Operation API: Dispensierinformationen stornieren | cancelDispensation_MedicationSvc |
Beispiel für die Nutzung von OperationOutcome.issue.diagnostics zur Beschreibung des Validierungsfehlers
{
"resourceType" : "OperationOutcome",
"id" : "0a30eb5d-289f-44cf-a0bd-ec4ec38edaa8",
"meta" : {
"profile" : [
🔗 "https://gematik.de/fhir/epa-medication/StructureDefinition/epa-ms-operation-outcome"
]
},
"issue" : [
{
"severity" : "error",
"code" : "structure",
"details" : {
"coding" : [
{
"system" : "https://gematik.de/fhir/epa-medication/CodeSystem/epa-ms-operation-outcome-details",
"code" : "MEDSVC_NO_VALID_STRUCTURE",
"display" : "Invalid Data Structure in Medication Service"
}
]
},
"diagnostics" : "Parameters.parameter[0] | Slice 'Parameters.parameter:rxPrescription.part:authoredOn': minimum required = 1, but only found 0 (from https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-provide-prescription-erp-input-parameters|1.1.5);\nParameters.parameter[0] | Parameters.parameter:rxPrescription.part: minimum required = 6, but only found 5 (from https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-provide-prescription-erp-input-parameters|1.1.5);"
}
]
}
<OperationOutcome xmlns="http://hl7.org/fhir">
<id value="0a30eb5d-289f-44cf-a0bd-ec4ec38edaa8"/>
<meta>
<profile
value="https://gematik.de/fhir/epa-medication/StructureDefinition/epa-ms-operation-outcome"/>
</meta>
<issue>
<severity value="error"/>
<code value="structure"/>
<details>
<coding>
<system
value="https://gematik.de/fhir/epa-medication/CodeSystem/epa-ms-operation-outcome-details"/>
<code value="MEDSVC_NO_VALID_STRUCTURE"/>
<display value="Invalid Data Structure in Medication Service"/>
</coding>
</details>
<diagnostics
value="Parameters.parameter[0] | Slice 'Parameters.parameter:rxPrescription.part:authoredOn': minimum required = 1, but only found 0 (from https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-provide-prescription-erp-input-parameters|1.1.5);
Parameters.parameter[0] | Parameters.parameter:rxPrescription.part: minimum required = 6, but only found 5 (from https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-provide-prescription-erp-input-parameters|1.1.5);"/>
</issue>
</OperationOutcome>
Operation API | OperationId |
---|---|
Operation API: Verschreibungsdaten einstellen | providePrescription_MedicationSvc |
Operation API: Verschreibungsdaten stornieren | cancelPrescription_MedicationSvc |
Operation API: Dispensierinformationen einstellen | provideDispensation_MedicationSvc |
Operation API: Dispensierinformationen stornieren | cancelDispensation_MedicationSvc |
Hinweis: Gemäß der Anforderung [IG_TICommon#IG-TI90315JPK] schreibt der Medication Service nach Validierung und Ausführung der entsprechenden Geschäftslogik das FHIR-Element meta.profile selbst.
Hinweis: Die vom E-Rezept-Fachdienst übergebenen Ressourcen von MedicationRequest und MedicationDispense sollen nicht validiert werden, da die Korrektheit der aufbereitete Dosierungsdarstellung vom E-Rezept-Fachdienst sichhergestellt wird.
Beispiel für OperationOutcome bei Verstoß gegen DosageDgMP-Textregeln
{
"resourceType" : "OperationOutcome",
"id" : "1a5a1db0-7bab-4d25-a43d-3ad1efb29cb5",
"meta" : {
"profile" : [
🔗 "https://gematik.de/fhir/epa-medication/StructureDefinition/epa-ms-operation-outcome"
]
},
"issue" : [
{
"severity" : "error",
"code" : "structure",
"details" : {
"coding" : [
{
"system" : "https://gematik.de/fhir/epa-medication/CodeSystem/epa-ms-operation-outcome-details",
"code" : "MEDSVC_DOSAGE_INVALID",
"display" : "Invalid dosage structure or content"
}
]
}
}
]
}
<OperationOutcome xmlns="http://hl7.org/fhir">
<id value="1a5a1db0-7bab-4d25-a43d-3ad1efb29cb5"/>
<meta>
<profile
value="https://gematik.de/fhir/epa-medication/StructureDefinition/epa-ms-operation-outcome"/>
</meta>
<issue>
<severity value="error"/>
<code value="structure"/>
<details>
<coding>
<system
value="https://gematik.de/fhir/epa-medication/CodeSystem/epa-ms-operation-outcome-details"/>
<code value="MEDSVC_DOSAGE_INVALID"/>
<display value="Invalid dosage structure or content"/>
</coding>
</details>
</issue>
</OperationOutcome>