C-CDA on FHIR, published by HL7 International / Cross-Group Projects. This guide is not an authorized publication; it is the continuous build for version 2.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/ccda-on-fhir/ and changes regularly. See the Directory of published versions
 FHIR US Core → C-CDA Mapping
  FHIR US Core → C-CDA Mapping
  While multiple vendors participated in CDA → FHIR mappings at a connectathon, only a single vendor (Cerner/Oracle) has participated in the FHIR → CDA mapping. We welcome feedback on these mappings which represent less than a multi-vendor consensus at this time.
This page provides a mapping from FHIR to CDA. For the CDA to FHIR mapping, please refer to Medications CDA → FHIR. For guidance on how to read the table below, see Reading the C-CDA ↔ FHIR Mapping Pages.
See guidance on timing mappings on Medications CDA → FHIR.
| FHIR MedicationRequest | C-CDA¹ Medication Activity substanceAdministration | Transform Steps | 
|---|---|---|
| .identifier | /id | CDA id ↔ FHIR identifier | 
| .status | /status | FHIR status → CDA statusCode | 
| .category | /code | CDA coding ↔ FHIR CodeableConcept code is not generally used in CDA | 
| .doNotPerform | /@negationInd | |
| .medicationCodeableConcept | /consumable/manufacturedProduct/manufacturedMaterial/code | CDA coding ↔ FHIR CodeableConcept | 
| .medicationReference | (see above) | CDA embeds medication codes directly inside medication activity | 
| .authoredOn | /author/time | CDA ↔ FHIR Time/Dates | 
| .requester | /assignedAuthor | CDA ↔ FHIR Provenance | 
| .performer | /performer | CDA ↔ FHIR Provenance | 
| .reasonCode | Indication /entryRelationship[@typeCode="RSON"]/observation/value | CDA coding ↔ FHIR CodeableConcept | 
| Annotation .note | Comment Activity /entryRelationship/act[code/@code="48767-8"]/text | |
| .dosageInstruction.text & .dosageInstruction.patientInstruction | Free text sig /entryRelationship/substanceAdministration[code/@code="76662-6"]/text | |
| .dosageInstruction.additionalInstruction | Instruction /entryRelationship[@typeCode="SUBJ"]/act/code | CDA coding ↔ FHIR CodeableConcept | 
| .dosageInstruction.timing.repeat.boundsPeriod.start | effectiveTime[1]/low | CDA ↔ FHIR Time/Dates Note: in XPath, [1]is the first instance; there is no[0]in XPath. | 
| .dosageInstruction.timing.repeat.boundsPeriod.end | effectiveTime[1]/high | CDA ↔ FHIR Time/Dates | 
| .dosageInstruction.timing.repeat.frequency & .dosageInstruction.timing.repeat.period & .dosageInstruction.timing.repeat.periodUnit | /effectiveTime[2]/… /@operator='A' /@xsi:type='PIVL_TS' /@institutionSpecified /period | Compare: C-CDA Common Medication Frequencies and FHIR Timing Data Type | 
| .dosageInstruction.timing.repeat.when & .dosageInstruction.timing.repeat.offset | /effectiveTime[2]/… /@operator='A' /@xsi:type='EIVL_TS' /event/@code /offset | FHIR when matches event/@code vocabulary CDA Offset is a PhysicalQuantity, while FHIR is an integer representing minutes. | 
| .dosageInstruction.site | /approachSiteCode | CDA coding ↔ FHIR CodeableConcept | 
| .dosageInstruction.route | /routeCode | CDA coding ↔ FHIR CodeableConcept | 
| .dosageInstruction.doseAndRate.doseQuantity | /doseQuantity | CDA ↔ FHIR Quantity | 
| .dosageInstruction.doseAndRate.rateQuantity | /rateQuantity | CDA ↔ FHIR Quantity | 
| .dosageInstruction.maxDosePerPeriod | /maxDoseQuantity | CDA ↔ FHIR Quantity | 
1. XPath abbrievated for C-CDA Medication Activity as: 
 ClinicalDocument/component/structuredBody/component/section[code/@code="10160-0"]/entry/substanceAdministration
Note that these mappings have only been implemented by a single vendor to date.
As reviewed in the methodology, a more comprehensive review was performed via spreadsheets. These spreadsheets have been consolidated and further revised in the tables above but are provided for reference here