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 Patient CDA → FHIR. For guidance on how to read the table below, see Reading the C-CDA ↔ FHIR Mapping Pages
| FHIR Patient | C-CDA¹ US Realm Header recordTarget | Transform Steps | 
|---|---|---|
| .extension.extension (race) url=http://hl7.org/fhir/us/core/STU4/StructureDefinition/us-core-race | /patientRole/patient/raceCode & /patientRole/patient/sdtc:raceCode | only one ombCategory extension goes in raceCode; other values go in sdtc:raceCode | 
| .extension.extension (ethnicity) url=http://hl7.org/fhir/us/core/STU4/StructureDefinition/us-core-ethnicity | /patientRole/patient/ethnicGroupCode & /patientRole/patient/sdtc:ethnicGroupCode | only one ombCategory extension goes in ethnicGroupCode; other values go in sdtc:ethnicGroupCode | 
| .extension.extension (birth sex) url=http://hl7.org/fhir/us/core/STU4/StructureDefinition/us-core-birthsex | Birth Sex | This is not in the header recordTarget in CDA | 
| .identifer | /patientRole/id | CDA id ↔ FHIR identifier | 
| .name | /patientRole/patient/name | CDA name ↔ FHIR name | 
| .telecom | /patientRole/telecom | CDA telecom ↔ FHIR telecom | 
| .gender | /patientRole/patient/administrativeGenderCode | FHIR gender → CDA administrativeGender | 
| .birthdate | /patientRole/patient/birthTime | CDA ↔ FHIR Time/Dates | 
| .deceasedBoolean | /patientRole/patient/sdtc:deceasedInd | If true, C-CDA also requires sdtc:deceasedTime to be present. Set its @nullFlavor="UNK" | 
| .deceasedDateTime | /patientRole/patient/sdtc:deceasedTime | CDA ↔ FHIR Time/Dates When setting deceasedTime to a value, also set sdtc:deceasedInd to true. | 
| .address | /patientRole/addr | CDA addr ↔ FHIR address | 
| .maritalStatus | /patientRole/patient/maritalStatus | CDA coding ↔ FHIR CodeableConcept | 
| .communication.language | /patientRole/patient/languageCommunication/languageCode | |
| .communication.preferred | /patientRole/patient/languageCommunication/preferenceInd | |
| .managingOrganization | /patientRole/providerOrganization | 
1. XPath abbrievated for C-CDA US Realm recordTarget as: 
 ClinicalDocument/recordTarget/
No examples available (of FHIR to C-CDA) at this time.
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