C-CDA on FHIR
1.2.0 - STU 1 United States of America flag

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 1.2.0 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

C-CDA to FHIR Patient

This page provides a mapping from CDA to FHIR. For the FHIR to CDA mapping, please refer to Patient FHIR → CDA. For guidance on how to read the table below, see Reading the C-CDA ↔ FHIR Mapping Pages



C-CDA to FHIR

C-CDA¹
US Realm Header recordTarget
FHIR
Patient
Transform Steps
/patientRole/id .identifier CDA id ↔ FHIR identifier
/patientRole/addr .address CDA addr ↔ FHIR address
/patientRole/telecom .telecom CDA telecom ↔ FHIR telecom
/patientRole/patient/name .name CDA name ↔ FHIR name
/patientRole/patient/administrativeGenderCode .gender CDA coding ↔ FHIR CodeableConcept
CDA administrativeGender → FHIR gender
/patientRole/patient/birthTime .birthDate CDA ↔ FHIR Time/Dates
Note: the FHIR birthDate element is less precise than the CDA birthtime element. Precision can be preserved by also using the extension patient-birthTime.
/patientRole/patient/sdtc:deceasedInd .deceasedBoolean Note: Only one of deceasedBoolean or deceasedDateTime may exist. If both are present in CDA, use deceasedDateTime.
/patientRole/patient/sdtc:deceasedTime .deceasedDateTime CDA ↔ FHIR Time/Dates
/patientRole/patient/maritalStatusCode .maritalStatus CDA coding ↔ FHIR CodeableConcept
/patientRole/patient/raceCode .extension:us-core-race: ombCategory CDA coding ↔ FHIR CodeableConcept
This should be a category and map to the ombCategory sub-extension. But if it is a detailed race, then it should go in the detailed sub-extension.
/patientRole/patient/sdtc:raceCode .extension:us-core-race CDA coding ↔ FHIR CodeableConcept
If code is in OMB category, use us-core-race: ombCategory; else use us-core-race: detailed.
If the detailed race is under a different OMB category that the non-sdtc:raceCode element, then an additional OMB category sub-extension should be included as well.
/patientRole/patient/ethnicGroupCode .extension:us-core-ethnicity CDA coding ↔ FHIR CodeableConcept
This should be a category and map to the ombCategory sub-extension. But if it is a detailed race, then it should go in the detailed sub-extension.
/patientRole/patient/sdtc:ethnicGroupCode .extension:us-core-ethnicity : detailed CDA coding ↔ FHIR CodeableConcept
Used for detailed ethnicity
/patientRole/patient/languageCommunication/languageCode .communication.language  
/patientRole/patient/languageCommunication/preferenceInd .communication.preferred  
/patientRole/providerOrganization .managingOrganization  

1. XPath abbrievated for C-CDA US Realm recordTarget as:
ClinicalDocument/recordTarget/

Illustrative example

An illustrative example with highlighting is shown above based on the consensus of mapping and guidance. Not all possible elements in CDA or FHIR may be represented. To access the content for the above example, click on the links below.


The consensus mapping example developed through multiple vendors are available below:

Prior work and Expanded Spreadsheets

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