This Implementation Guide provides maps to transform documents between CDA and FHIR and back. This manual describes for which exchange formats the transformation can be used and how it is executed.
This description focuses on how to execute the transformation in the local development environment. You can also add your own maps in this context.
The transformation as a micro service is described here.
The maps are intended for the transformation of documents, especially eMedication documents, in the context of the Swiss EPR.
Note: The scope is based on the eMedication case study; there is as yet no final mapping of data types, templates and documents.
The following document types are supported and examples of these are shown in these directories:
Document type | CDA examples | FHIR examples | Map CDA to FHIR | Map FHIR to CDA |
---|---|---|---|---|
Swiss EPR document | input\cda-ch | input\ch-core | input\maps\CdaChToBundle.map | input\maps\BundleToCdaCh.map |
Medication Card document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed MedicationCardDocumentToBundle.map | input\maps\BundleToCdaChEmed MedicationCardDocument.map |
Medication Prescription document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed MedicationPrescriptionDocumentToBundle.map | input\maps\BundleToCdaChEmed MedicationPrescriptionDocument.map |
Medication Dispense document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed MedicationDispenseDocumentToBundle.map | input\maps\BundleToCdaCh EmedMedicationDispenseDocument.map |
Medication List document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed MedicationListDocumentToBundle.map | - |
Pharmaceutical Advice document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed PharmaceuticalAdviceDocumentToBundle.map | input\maps\BundleToCdaCh EmedPharmaceuticalAdviceDocument.map |
Medication Treatment Plan document | input\cda-ch-emed | input\ch-emed | input\maps\CdaChEmed MedicationTreatmentPlanDocumentToBundle.map | input\maps\BundleToCdaCh EmedMedicationTreatmentPlanDocument.map |
Table 1: Document types with examples and maps
The example documents are structured according to the CDA/FHIR specifications for the exchange formats. The specification of the eMedication depends on the specification of the Swiss EPR exchange format.
Documents in the context of the Swiss EPR:
eMedication Documents:
Art-Decor CDA-CH-EMED eMedication
FHIR Implementation Guide CH EMED
To transform the documents from CDA to FHIR and back and maybe add your own maps, you should prepare the following setup:
docker run --rm -i -t --name matchbox -p 8080:8080 -v /ABSOLUTEPATH/TO/DIR:/config eu.gcr.io/fhir-ch/matchbox:v220
Clone this project https://github.com/hl7ch/cda-fhir-maps
git clone https://github.com/hl7ch/cda-fhir-maps.git
Open it with Visual Studio Code (REST Client extension is needed).