Estándares

CDA vs FHIR: documentos frente a recursos, cuándo usar cada uno y cómo convertir entre ellos

CDA: documento XML firmado e íntegro. FHIR: recursos pequeños y direccionables vía API. Descubre cómo los documentos FHIR (Composition en Bundle) unen ambos, cuándo usar CDA y la conversión.

por Publicado 7 min de lectura

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

Fuentes

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.

Anpheros Platform

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

Esta guía es informativa y no sustituye la consulta médica. Para decisiones sobre tu salud, habla con tu médico. En una emergencia, llama al número de emergencias local (112 en Europa).
Escrito por
El equipo de Anpheros

Anpheros crea un historial médico que el paciente controla y puede compartir con cualquier clínica, en una plataforma HL7 FHIR R4, con sede en la UE. Estas guías te ayudan a entender y organizar tu salud; no reemplazan a tu médico.

Sobre Anpheros →