hl7ch / cda-fhir-maps

Maps (FHIR Mapping Language) to transform documents from CDA to FHIR and back
Apache License 2.0
19 stars 8 forks source link
cda fhir fml

Implementation Guide CDA FHIR Maps

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.

Supported document types

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

Specification

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:

Setup

To transform the documents from CDA to FHIR and back and maybe add your own maps, you should prepare the following setup:

Editor

Docker

docker run --rm -i -t --name matchbox -p 8080:8080 -v /ABSOLUTEPATH/TO/DIR:/config eu.gcr.io/fhir-ch/matchbox:v220

GitHub Desktop (optional)

Development

Clone this project https://github.com/hl7ch/cda-fhir-maps

Open it with Visual Studio Code (REST Client extension is needed).

Transform documents between CDA and FHIR and back

Transform eMedication documents between CDA and FHIR and back