Respuesta corta: CDA te da un documento: un archivo XML firmado sobre un paciente en un momento dado, con una narrativa que una persona puede leer y entradas que una computadora puede leer, que debe permanecer íntegro e inalterado. FHIR te da recursos: un Paciente, cuarenta Observaciones, tres Condiciones, cada una con su propia URL, que se obtienen, buscan y actualizan de forma independiente a través de una API REST. FHIR también puede empaquetar recursos en un documento (un Bundle de tipo document liderado por una Composition), que es el equivalente directo de CDA. Elige CDA donde una regulación o un socio lo requiera; elige FHIR para APIs, aplicaciones y cualquier cosa que deba ser consultada en lugar de leída.
Las dos formas
CDA y FHIR tienen dos formas diferentes. CDA intercambia documentos XML completos construidos sobre tipos de datos HL7 v3, identificados por OIDs, con narrativa obligatoria, sin consultas, sin actualizaciones y firma de documento completo. FHIR intercambia recursos JSON o XML individuales o Bundles, identificados por URLs canónicas, con consultas REST integradas, actualizaciones versionadas y perfiles publicados en guías de implementación.
| CDA / C-CDA | FHIR | |
|---|---|---|
| Unidad de intercambio | Un documento completo | Un recurso, o un Bundle de recursos |
| Formato | XML, tipos de datos HL7 v3 | JSON o XML, tipos de datos FHIR |
| Identificación | OIDs para plantillas y sistemas de códigos | URLs (canónicas) para perfiles y sistemas de códigos |
| Parte legible por humanos | <text> obligatorio en cada sección |
Narrativa text.div opcional por recurso; obligatoria en documentos |
| Transporte | No definido; transportado por XDS, Direct, MLLP, correo electrónico | REST sobre HTTPS definido por el estándar; también mensajería y documentos |
| Consulta | No es posible dentro de un documento; los registros indexan la cabecera | Integrado: GET /Observation?patient=…&code=… |
| Actualización | Nunca; un nuevo documento reemplaza al anterior | Los recursos se versionan y actualizan in situ |
| Firma | Documento completo, XML-DSig | Bundle completo posible; recursos individuales rara vez firmados |
| Perfiles | Plantillas (templateId) por sección y entrada | Perfiles StructureDefinition por recurso, publicados en guías de implementación |
| Terminología | Códigos de sección LOINC, entradas SNOMED/ICD/RxNorm | Mismos sistemas de códigos, como CodeableConcept |
Lo que significa la diferencia en la práctica
En la práctica, la diferencia entre CDA y FHIR es que CDA se adapta a contenido escrito una vez y conservado íntegramente, como un resumen de alta firmado, mientras que FHIR se adapta a datos que crecen y se consultan, como una serie de mediciones de presión arterial. Un receptor de CDA puede mostrar pero debe reconciliar para importar; un receptor de FHIR obtiene recursos ya conformados como su propio registro.
Un resumen de alta es naturalmente un documento: se escribe una vez, lo firma un médico y debe ser reproducible años después exactamente como se leyó. Una serie de mediciones de presión arterial es naturalmente un conjunto de recursos: crece cada día, se grafica y filtra, y nadie lo firma. CDA maneja bien lo primero y mal lo segundo (reenviarías todo el documento por cada nueva lectura). FHIR maneja lo segundo de forma nativa y lo primero a través de su mecanismo de documentos.
La otra diferencia práctica es lo que el receptor puede hacer. Un receptor de CDA siempre puede mostrar el documento; importar sus entradas requiere reconciliación, sección por sección. Un receptor de FHIR obtiene recursos que ya tienen la forma de su propio registro; las preguntas difíciles se trasladan a la identidad (¿es este el mismo paciente?) y la procedencia (¿quién afirmó esto y cuándo?). Ver Coincidencia de pacientes.
Documentos FHIR: el punto de encuentro
Un documento FHIR es un Bundle con type: "document" cuya primera entrada es una Composition. La Composition desempeña el papel de la cabecera y la lista de secciones de CDA: tipo (LOINC), fecha, autor, sujeto, custodio, estado y section[] con un título, un código, texto narrativo y referencias a los recursos que contienen los datos.
{
"resourceType": "Bundle",
"type": "document",
"identifier": {"system": "urn:ietf:rfc:3986", "value": "urn:uuid:3f2d7a3e-…"},
"timestamp": "2026-03-14T10:15:00+01:00",
"entry": [
{"fullUrl": "urn:uuid:comp-1", "resource": {
"resourceType": "Composition", "status": "final",
"type": {"coding": [{"system": "http://loinc.org", "code": "60591-5", "display": "Patient summary Document"}]},
"subject": {"reference": "urn:uuid:pat-1"},
"date": "2026-03-14T10:15:00+01:00",
"author": [{"reference": "urn:uuid:prac-1"}],
"title": "Patient summary",
"section": [{
"title": "Allergies and intolerances",
"code": {"coding": [{"system": "http://loinc.org", "code": "48765-2"}]},
"text": {"status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>Penicillin: rash</p></div>"},
"entry": [{"reference": "urn:uuid:allergy-1"}]
}]
}},
{"fullUrl": "urn:uuid:pat-1", "resource": {"resourceType": "Patient", "id": "pat-1"}},
{"fullUrl": "urn:uuid:prac-1", "resource": {"resourceType": "Practitioner", "id": "prac-1"}},
{"fullUrl": "urn:uuid:allergy-1", "resource": {"resourceType": "AllergyIntolerance", "id": "allergy-1", "patient": {"reference": "urn:uuid:pat-1"}, "code": {"coding": [{"system": "http://snomed.info/sct", "code": "764146007", "display": "Penicillin"}]}}}
]
}
El Resumen Internacional del Paciente es exactamente esto: un perfil de documento FHIR, con un gemelo CDA para sistemas que aún lo necesitan. Ver también Bundle FHIR explicado.
Conversión entre ellos
La conversión entre CDA y FHIR funciona en ambas direcciones con límites. La guía de implementación HL7 C-CDA on FHIR mapea tipos de documentos, secciones y entradas a perfiles de Composition y recursos; las secciones de solo narrativa se convierten en texto sin datos. FHIR a CDA funciona para recursos que se ajustan a las plantillas C-CDA. En cualquier dirección, el original debe conservarse como un DocumentReference con Provenance.
- CDA → FHIR: la guía de implementación C-CDA on FHIR de HL7 mapea los tipos de documentos y secciones de EE. UU. a perfiles de Composition; las entradas se mapean a recursos (Problem Concern Act → Condition, Medication Activity → MedicationStatement, Result Observation → Observation). El mapeo es determinista para contenido de Nivel 3 bien plantillado y con pérdidas para secciones solo narrativas, que se convierten en texto sin datos.
- FHIR → CDA: posible para documentos cuyos recursos se ajustan a las plantillas C-CDA. Los recursos FHIR de formato libre que nunca se concibieron como un documento (un flujo de Observaciones de wearables) no se convierten en un CDA sensato.
- Mantén el original. Cualquiera que sea la dirección de la conversión, almacena la fuente tal como se recibió, como un DocumentReference, y deja que Provenance apunte desde los recursos convertidos hacia él. La conversión es una vista, no un reemplazo.
Cuándo CDA sigue siendo la respuesta correcta
CDA sigue siendo la respuesta correcta cuando la parte receptora lo requiere (transiciones de atención en EE. UU., resumen de paciente y prescripción electrónica de MyHealth@EU, varios registros de documentos nacionales), cuando el contenido es legalmente un documento que debe ser firmado y conservado íntegramente, o cuando la infraestructura del socio es IHE XDS, que indexa documentos en lugar de recursos. De lo contrario, comience con FHIR.
Cuando la parte receptora lo requiere (transiciones de atención en EE. UU., resumen y prescripción electrónica del paciente MyHealth@EU hoy en día, varios registros nacionales de documentos); cuando el contenido es legalmente un documento que debe ser firmado y conservado íntegramente; cuando la infraestructura del socio es IHE XDS, que indexa documentos y no recursos. En todos los demás casos, empieza con FHIR y produce un documento FHIR donde se necesite un documento.
Páginas relacionadas
- CDA y C-CDA explicados
- Bundle FHIR explicado
- El Resumen Internacional del Paciente
- HL7 vs FHIR
- DocumentReference vs DiagnosticReport vs Binary
- Coincidencia de pacientes
Fuentes
- HL7 FHIR R4: Documentos
- HL7 FHIR R4: Composition
- Guía de implementación HL7 C-CDA on FHIR
- HL7 FHIR: comparación con CDA (Apéndice)
- HL7 FHIR: Resumen Internacional del Paciente IG
Preguntas frecuentes
¿Es un documento FHIR solo CDA en JSON?
No. Comparte los principios (completo, firmado, legible por humanos, con una cabecera) pero su contenido son recursos FHIR ordinarios, por lo que la misma Observación puede vivir en un documento y ser servida por la API. En CDA, una entrada solo existe dentro de su documento.
¿Puedo firmar un documento FHIR?
Sí. Bundle.signature contiene una firma digital sobre el bundle, y las guías nacionales e IPS describen cómo hacerlo. En la práctica, muchas implementaciones dependen de la seguridad del transporte y la procedencia en lugar de las firmas.
¿Tiene FHIR templateId?
El equivalente es meta.profile, una lista de URLs canónicas de las StructureDefinitions a las que el recurso afirma conformarse. Los validadores comprueban la conformidad de la misma manera que los schematrons de CDA comprueban las plantillas.
¿Cuál debería elegir un nuevo programa nacional?
Los programas recientes (el formato de intercambio EHDS, las reglas de acceso de pacientes de EE. UU., el IPS) eligen FHIR, con documentos FHIR para resúmenes y cartas, y mantienen una ruta CDA solo para socios heredados.
Pruébalo gratis en el sandbox
Tu primera llamada FHIR en 5 minutos. Una API HL7 FHIR R4 con el consentimiento del paciente integrado: pruébala en el sandbox y luego conecta tu propia app o sistema de clínica.
Gratis · 30 pacientes sintéticos · sin tarjeta

