Respuesta corta: DiagnosticReport es el recurso FHIR para un informe: el conjunto de hallazgos que emiten conjuntamente un laboratorio, un departamento de imagenología o un servicio de patología, con un estado, una categoría, quién lo emitió y cuándo, una conclusión, las Observaciones de resultado que agrupa, el imagingStudy que describe y una presentedForm (el PDF firmado). Un hemograma completo es un DiagnosticReport con una docena de Observaciones; una tomografía computarizada es un DiagnosticReport con una conclusión narrativa y un enlace a las imágenes. Una Observation es un valor único; un DiagnosticReport es el documento que entrega muchos de ellos.
Un ejemplo válido de FHIR R4
Un DiagnosticReport válido de FHIR R4 requiere estado y código, y en la práctica también incluye el sujeto, la categoría, la hora efectiva, la hora de emisión, el intérprete y las Observations de resultados que agrupa. El ejemplo a continuación es un informe de hematología final para un hemograma completo, codificado con un panel LOINC, que vincula tres Observations, una conclusión con un código SNOMED CT y el PDF firmado.
{
"resourceType": "DiagnosticReport",
"id": "cbc-2026-03-14",
"identifier": [{"system": "https://lab.example.org/reports", "value": "RPT-2026-77812"}],
"basedOn": [{"reference": "ServiceRequest/order-778812"}],
"status": "final",
"category": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/v2-0074", "code": "HM", "display": "Hematology"}]}],
"code": {"coding": [{"system": "http://loinc.org", "code": "58410-2", "display": "CBC panel - Blood by Automated count"}]},
"subject": {"reference": "Patient/example"},
"encounter": {"reference": "Encounter/visit-2026-03-14"},
"effectiveDateTime": "2026-03-14T08:40:00+01:00",
"issued": "2026-03-14T13:05:00+01:00",
"performer": [{"reference": "Organization/central-lab"}],
"resultsInterpreter": [{"reference": "Practitioner/haematologist-7"}],
"specimen": [{"reference": "Specimen/edta-1"}],
"result": [
{"reference": "Observation/hgb-2026-03-14"},
{"reference": "Observation/wbc-2026-03-14"},
{"reference": "Observation/plt-2026-03-14"}
],
"conclusion": "Mild normocytic anaemia; other parameters within reference ranges.",
"conclusionCode": [{"coding": [{"system": "http://snomed.info/sct", "code": "271737000", "display": "Anemia"}]}],
"presentedForm": [{"contentType": "application/pdf", "url": "https://lab.example.org/reports/RPT-2026-77812.pdf", "title": "CBC report"}]
}
Cada Observation referenciada en result tiene su propio código LOINC, valor, unidad y rango de referencia, como se describe en FHIR Observation explicado.
Estado: el ciclo de vida del informe
El estado de un DiagnosticReport de FHIR sigue el ciclo de vida de un informe: registrado cuando se solicita, parcial a medida que llegan los resultados, preliminar cuando está completo pero no verificado, final cuando se firma, y luego enmendado, corregido o agregado si cambia posteriormente; cancelado y marcado como erróneo lo cierran de lo contrario. Los consumidores deben estar atentos a los informes enmendados y corregidos, porque un valor final de la semana pasada puede haber cambiado.
registered (solicitado, nada aún) → partial (algunos resultados incluidos) → preliminary (todos incluidos, no verificados) → final (firmado) → amended o corrected (cambiado después de firmar, con la razón en una nota) o appended (se añade más). cancelled y entered-in-error lo cierran de lo contrario. Los consumidores deben estar atentos a amended y corrected: un valor que era final la semana pasada puede haber cambiado, y la hora de issued del informe se mueve.
Categoría y código
DiagnosticReport.category indica qué servicio de diagnóstico emitió el informe, utilizando códigos de la tabla 0074 de HL7 v2 como LAB, HM hematología, CH química, MB microbiología, RAD radiología y PAT patología. DiagnosticReport.code indica qué es el informe, normalmente un código de panel LOINC para informes de laboratorio y un código de estudio de radiología o patología LOINC, o un código de procedimiento local, para imágenes y patología.
category utiliza la tabla 0074 de HL7 v2, sección de servicio de diagnóstico: LAB, HM hematología, CH química, MB microbiología, RAD radiología, PAT patología, CG citogenética y otros; US Core requiere LAB para informes de laboratorio. code indica de qué trata el informe: para laboratorios, un código de panel LOINC (CBC 58410-2, panel metabólico completo 24323-8, panel de lípidos 57698-3); para imagenología, un código de radiología LOINC o un código de procedimiento local; para patología, un código de estudio de patología LOINC. Ver ¿Qué es un código LOINC?.
Informes de laboratorio, imagenología y patología
Los informes de laboratorio, imágenes y patología utilizan el mismo recurso FHIR DiagnosticReport con diferentes elementos. Un informe de laboratorio agrupa una Observation por analito con recursos Specimen; un informe de imágenes contiene la conclusión del radiólogo, una referencia al ImagingStudy y las imágenes clave; un informe de patología contiene el texto del diagnóstico, Observations de calificación y especímenes de tejido. Los tres adjuntan un PDF firmado en presentedForm.
| Laboratorio | Imagenología | Patología | |
|---|---|---|---|
| result | Una Observation por analito | Generalmente ninguno; a veces mediciones | Observaciones para calificación, marcadores, márgenes |
| conclusion | Comentario opcional | La impresión del radiólogo | El texto del diagnóstico |
| imagingStudy | — | Referencia al ImagingStudy | Imágenes de portaobjetos completos donde son digitales |
| media | — | Imágenes clave | Imágenes representativas de portaobjetos |
| presentedForm | PDF firmado | PDF firmado | PDF firmado |
| specimen | Sangre, orina… Recursos de Specimen | — | Recursos de Specimen de tejido |
Para imagenología, las imágenes en sí permanecen en DICOM; ver FHIR ImagingStudy vs DICOMweb. Para el significado de estos informes para el paciente, ver Cómo leer sus resultados de laboratorio y Informe de tomografía computarizada explicado.
DiagnosticReport vs DocumentReference
Un FHIR DiagnosticReport es un informe estructurado cuyos hallazgos son, o pueden ser, Observations codificadas, mientras que un DocumentReference es un puntero a un documento de cualquier tipo con metadatos y el archivo. Los resultados de laboratorio estructurados se convierten en un DiagnosticReport; un PDF escaneado sin datos estructurados se convierte en un DocumentReference, y muchos sistemas crean ambos para el mismo informe.
Un DiagnosticReport es un informe estructurado cuyos hallazgos son (o pueden ser) Observations codificadas; un DocumentReference es un puntero a un documento de cualquier tipo, con metadatos y el archivo. Un informe de laboratorio que llega como HL7 v2 ORU se convierte en un DiagnosticReport con Observations. Un PDF escaneado de un informe de otro país, sin datos estructurados, es un DocumentReference. Muchos sistemas crean ambos: el DiagnosticReport para los datos, con presentedForm o un DocumentReference para el archivo firmado. Ver DocumentReference vs DiagnosticReport vs Binary.
Errores que rompen los informes
Los errores que con mayor frecuencia rompen los DiagnosticReports de FHIR son enviar Observations sin un informe que las agrupe, marcar un informe como final mientras sus Observations aún están preliminares, duplicar la conclusión en una Observation con un código inventado, omitir la marca de tiempo de emisión para que las correcciones no se puedan detectar, e inventar códigos de panel locales donde ya existe un panel LOINC.
- Resultados escritos como Observations sin DiagnosticReport, por lo que un consumidor no puede saber qué valores se emitieron juntos o qué informe fue modificado.
status: finalen un informe cuyas Observations siguen siendopreliminary.- La conclusión duplicada en una Observation con un código inventado.
- Falta
issued, por lo que el consumidor no puede ordenar informes ni detectar correcciones. - Códigos de panel inventados localmente cuando existe un panel LOINC.
En Anpheros
Anpheros Platform convierte los resultados de laboratorio que llegan a través de su conector de laboratorio, como HL7 v2 ORU, CSV o JSON, en Observations de FHIR agrupadas bajo un DiagnosticReport, con el laboratorio como intérprete y el archivo original como presentedForm cuando está disponible. Un informe que una persona escanea en la aplicación se mantiene como un solo informe con sus resultados individuales y la imagen original.
El conector de laboratorio documenta los formatos aceptados. Dado que el original escaneado se conserva con el informe, un médico puede verificar cualquier valor con la fuente. Los informes enmendados conservan su historial a través de versiones de recursos.
Páginas relacionadas
- FHIR Observation explicado
- DocumentReference vs DiagnosticReport vs Binary
- FHIR ImagingStudy vs DICOMweb
- Conector de laboratorio: HL7 v2, CSV o JSON a FHIR
- ¿Qué es un código LOINC?
- Ejemplo de DiagnosticReport en el sitio para desarrolladores
Fuentes
- HL7 FHIR R4: DiagnosticReport
- HL7 Terminology: v2-0074 diagnostic service section
- HL7 US Core: DiagnosticReport para resultados de laboratorio
- HL7 IPS: Perfil DiagnosticReport
- LOINC: paneles y formularios
Preguntas frecuentes
¿Necesito un DiagnosticReport para una sola prueba?
Estrictamente, una sola Observation puede ser independiente, y las mediciones en casa suelen serlo. Cualquier cosa emitida por un laboratorio es mejor encapsularla en un DiagnosticReport, incluso con un solo resultado, para que el estado, el emisor y el formulario firmado viajen con él.
¿Cómo represento un resultado modificado?
Actualice la Observation (su versión cambia), establezca el estado del DiagnosticReport en amended o corrected, actualice issued y registre la razón en una nota. Nunca cree un segundo informe con el mismo identificador.
¿Dónde va el rango de referencia?
En cada Observation, en referenceRange, porque los rangos difieren por analito y por laboratorio. El informe no tiene un rango propio.
¿Puede un DiagnosticReport contener otros informes?
No directamente en R4; los informes relacionados se referencian mutuamente a través de basedOn o extensiones, y los sub-paneles de un panel suelen modelarse como Observations con hasMember. R5 mantiene el mismo enfoque.
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

