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
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¹ 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/
The consensus mapping example developed through multiple vendors are available below:
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