Skip to main content

C-CDA

Medplum provides support for C-CDA (Consolidated Clinical Document Architecture) handling in accordance with the ONC Certification criteria (g)(7), (g)(9) and (b)(1) as well as developer utilities for working with C-CDA documents in the context of FHIR.

caution

Medplum is currently in the process of obtaining ONC Certification for (g)(7), (g)(9) and (b)(1), check back frequently for updates. This feature set is available for those with ONC Certification enabled.

Overview

Medplum provides the following functionality for C-CDA handling.

  • A C-CDA viewer that allows uploaded documents to be viewed in the Medplum App or in a react component.
  • The ability to Export C-CDA in the Medplum app or via API
  • An SDK for FHIR to C-CDA conversion.

C-CDA Viewer

To access the C-CDA viewer, upload a C-CDA file as a FHIR Binary. The viewer will render the data for viewing in the application.

Export C-CDA

To export patient data as C-CDA, navigate to https://app.medplum.com/Patient/<PATIENT_ID>/export in the Medplum App. There are several options for export, and exporting as C-CDA will create and download the XML file to the desktop.

FHIR Server Integration

In addition to the core conversion functions, Medplum provides FHIR server operations for seamless C-CDA export:

  • Patient/{id}/$ccda-export: Exports a patient's data as a C-CDA document.

This operation is documented in the Medplum FHIR operations documentation.

Developer Utilities

The @medplum/ccda package enables seamless conversion between C-CDA and FHIR, leveraging the International Patient Summary (IPS) format as a bridge. This approach ensures standardized representation of clinical data and facilitates interoperability with various healthcare systems.

Key Features:

  • C-CDA to FHIR: Convert a C-CDA document to a FHIR Composition bundle using the convertCcdaToFhir function.
  • FHIR to C-CDA: Convert a FHIR Composition bundle to a C-CDA document using the convertFhirToCcda function.
  • XML Parsing: Load a C-CDA document from an XML string using the convertXmlToCcda function.
  • XML Serialization: Serialize a C-CDA document to an XML string using the convertCcdaToXml function.

Usage

import {
convertCcdaToFhir,
convertFhirToCcda,
convertXmlToCcda,
convertCcdaToXml,
} from '@medplum/ccda';

// Convert C-CDA to FHIR
const bundle = convertCcdaToFhir(ccda);

// Convert FHIR to C-CDA
const ccda = convertFhirToCcda(bundle);

// Load C-CDA from XML
const ccda = convertXmlToCcda(xml);

// Serialize C-CDA to XML
const xml = convertCcdaToXml(ccda);

Strategy and Alignment

This library is designed to elegantly integrate the following standards and specifications:

  • FHIR R4: The underlying data model for representing healthcare resources.
  • US Core: A set of FHIR profiles and extensions for US healthcare interoperability.
  • USCDI: The United States Core Data for Interoperability, defining a standardized set of health data classes and elements.
  • International Patient Summary (IPS): A FHIR-based standard for exchanging patient summaries.
  • HL7 C-CDA: A widely used standard for clinical document exchange.
  • C-CDA R2.1 for USCDI v3: A specific implementation of C-CDA aligned with the USCDI v3 standard.

By aligning with these standards, this library ensures that C-CDA documents can be effectively converted to and from FHIR, enabling interoperability with modern healthcare systems and applications.

Additional Notes

  • This library is actively maintained and updated to support the latest versions of FHIR, US Core, and C-CDA standards.