| Official URL: https://gematik.de/fhir/erp-t-prescription/StructureMap/ERPTPrescriptionStructureMapMedicationDispense | Version: 1.1.0-ballot-1 | |||
| Draft as of 2025-07-07 | Computable Name: ERPTPrescriptionStructureMapMedicationDispense | |||
Mapping-Anweisungen zur Transformation von gematik ERP MedicationDispense zu BfArM T-Prescription MedicationDispense
map "https://gematik.de/fhir/erp-t-prescription/StructureMap/ERPTPrescriptionStructureMapMedicationDispense" = "ERPTPrescriptionStructureMapMedicationDispense" // Mapping-Anweisungen zur Transformation von gematik ERP MedicationDispense zu BfArM T-Prescription MedicationDispense uses "http://hl7.org/fhir/StructureDefinition/MedicationDispense" alias gematikMedicationDispense as source uses "https://gematik.de/fhir/erp-t-prescription/StructureDefinition/erp-tprescription-medication-dispense" alias bfarmMedicationDispense as target // Mapping-Anweisungen zur Transformation von gematik ERP MedicationDispense zu BfArM T-Prescription MedicationDispense group ERPTPrescriptionStructureMapMedicationDispense(source gematikMedicationDispense : gematikMedicationDispense, target bfarmMedicationDispense : bfarmMedicationDispense) { gematikMedicationDispense.dosageInstruction as dosageInstructionVar -> bfarmMedicationDispense.dosageInstruction = dosageInstructionVar "medicationDispenseDosageInstruction"; // Übernimmt die Dosierungsanweisungen aus der ursprünglichen Abgabe für den digitalen Durchschlag gematikMedicationDispense.whenHandedOver as whenHandedOverVar -> bfarmMedicationDispense.whenHandedOver = whenHandedOverVar "medicationDispenseWhenHandedOver"; // Kopiert das Abgabedatum zur Dokumentation des Zeitpunkts der Medikamentenausgabe gematikMedicationDispense.medication as medicationVar -> bfarmMedicationDispense.medication = medicationVar "medicationReference"; // Kopiert die Medikamentenreferenz - das referenzierte Medication wird separat gemappt gematikMedicationDispense.status as gematikMedicationDispenseStatus -> bfarmMedicationDispense.status = 'completed' "medicationDispenseStatus"; // Setzt den Status auf 'completed' da die Abgabe bereits erfolgt ist (digitaler Durchschlag) gematikMedicationDispense.quantity as quantityVar -> bfarmMedicationDispense.quantity = quantityVar "medicationDispenseQuantity"; // Übernimmt die abgegebene Menge zur Dokumentation der tatsächlich ausgehändigten Medikamentenmenge gematikMedicationDispense.performer as srcPerformerVar -> bfarmMedicationDispense.performer as tgtPerformerVar then { srcPerformerVar.actor as srcPerformerActorVar -> tgtPerformerVar.actor as tgtPerformerActorVar then { srcPerformerActorVar.identifier as srcPerformerActorIdentifierVar then { srcPerformerActorIdentifierVar.value as srcPerformerActorIdentifierValueVar -> tgtPerformerActorVar.reference = append('Organization/', srcPerformerActorIdentifierValueVar) "medicationDispensePerformerActorIdentifierValue"; // Wandelt Apotheken-Identifier in Organization-Referenz um (Organization/<telematik-id>) } "medicationDispensePerformerActorIdentifier"; // Extrahiert den Identifier der abgebenden Apotheke } "medicationDispensePerformerActor"; // Verarbeitet den Actor (abgebende Apotheke) des Performers } "medicationDispensePerformer"; // Transformiert Apotheken-Identifier zu Organization-Referenz für eindeutige Zuordnung der abgebenden Apotheke }