FHIR

FHIR DiagnosticReport explicado: como um painel de laboratório, um relatório de patologia ou um relatório de imagem agrupa os seus resultados

DiagnosticReport é o recurso FHIR para o relatório assinado: agrupa Observações num painel, transporta a conclusão e o PDF, e regista quem o emitiu e quando. Estados, categorias (laboratório, radiologia, patologia), a ligação ao ImagingStudy, um exemplo válido R4 e como difere do DocumentReference.

por Publicado 7 min de leitura

Resposta curta: DiagnosticReport é o recurso FHIR para um relatório: o conjunto de descobertas que um laboratório, um departamento de imagiologia ou um serviço de patologia emite em conjunto, com um estado, uma categoria, quem o emitiu e quando, uma conclusão, as Observações de resultado que agrupa, o imagingStudy que descreve e um presentedForm (o PDF assinado). Uma contagem sanguínea é um DiagnosticReport com uma dúzia de Observações; uma tomografia computadorizada é um DiagnosticReport com uma conclusão narrativa e uma ligação às imagens. Uma Observation é um valor único; um DiagnosticReport é o documento que entrega muitos deles.

Um exemplo válido de FHIR R4

Um DiagnosticReport FHIR R4 válido requer estado e código, e na prática também inclui o sujeito, categoria, hora de início, hora de emissão, o executante e as Observações de resultado que agrupa. O exemplo abaixo é um relatório final de hematologia para uma contagem sanguínea completa, codificado com um painel LOINC, ligando três Observações, uma conclusão com um código SNOMED CT e o PDF assinado.

{
  "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 em result tem o seu próprio código LOINC, valor, unidade e intervalo de referência, conforme descrito em FHIR Observation explicado.

Estado: o ciclo de vida do relatório

O estado de um DiagnosticReport FHIR segue o ciclo de vida de um relatório: registado quando encomendado, parcial à medida que os resultados chegam, preliminar quando completo mas não verificado, final quando assinado, depois alterado, corrigido ou adicionado se mudar posteriormente; cancelado e marcado como erro encerram-no de outra forma. Os utilizadores devem estar atentos a relatórios alterados e corrigidos, porque um valor final da semana passada pode ter mudado.

registered (pedido, nada ainda) → partial (alguns resultados em) → preliminary (todos em, não verificado) → final (assinado) → amended ou corrected (alterado após assinatura, com a razão numa nota) ou appended (mais adicionado). cancelled e entered-in-error fecham-no de outra forma. Os consumidores devem estar atentos a amended e corrected: um valor que era final na semana passada pode ter mudado, e o tempo issued do relatório avança.

Categoria e código

DiagnosticReport.category indica qual o serviço de diagnóstico que emitiu o relatório, utilizando códigos da tabela 0074 do HL7 v2, como LAB, HM hematologia, CH química, MB microbiologia, RAD radiologia e PAT patologia. DiagnosticReport.code indica o que é o relatório, normalmente um código de painel LOINC para relatórios de laboratório e um código de estudo LOINC de radiologia ou patologia, ou um código de procedimento local, para imagiologia e patologia.

category utiliza a tabela 0074 do HL7 v2, secção de serviço de diagnóstico: LAB, HM hematologia, CH química, MB microbiologia, RAD radiologia, PAT patologia, CG citogenética e outras; o US Core requer LAB para relatórios de laboratório. code diz o que é o relatório: para laboratórios, um código de painel LOINC (CBC 58410-2, painel metabólico abrangente 24323-8, painel de lípidos 57698-3); para imagiologia, um código de radiologia LOINC ou um código de procedimento local; para patologia, um código de estudo de patologia LOINC. Ver O que é um código LOINC?.

Relatórios de laboratório, imagiologia e patologia

Relatórios de laboratório, imagiologia e patologia utilizam o mesmo recurso FHIR DiagnosticReport com elementos diferentes. Um relatório de laboratório agrupa uma Observação por analito com recursos Specimen; um relatório de imagiologia contém a conclusão do radiologista, uma referência ao ImagingStudy e imagens chave; um relatório de patologia contém o texto do diagnóstico, observações de graduação e espécimes de tecido. Todos os três anexam um PDF assinado em presentedForm.

Laboratório Imagiologia Patologia
result Uma Observation por analito Geralmente nenhum; por vezes medições Observações para graduação, marcadores, margens
conclusion Comentário opcional A impressão do radiologista O texto do diagnóstico
imagingStudy — Referência ao ImagingStudy Imagens de lâmina inteira onde digital
media — Imagens chave Imagens representativas de lâmina
presentedForm PDF assinado PDF assinado PDF assinado
specimen Sangue, urina… Recursos Specimen — Recursos de Espécimes de Tecido

Para imagiologia, as imagens em si permanecem em DICOM; ver FHIR ImagingStudy vs DICOMweb. Para o significado destes relatórios para o paciente, ver Como ler os seus resultados de laboratório e Relatório de TAC explicado.

DiagnosticReport vs DocumentReference

Um DiagnosticReport FHIR é um relatório estruturado cujas descobertas são, ou podem ser, Observações codificadas, enquanto um DocumentReference é um ponteiro para um documento de qualquer tipo com metadados e o ficheiro. Resultados de laboratório estruturados tornam-se um DiagnosticReport; um PDF digitalizado sem dados estruturados torna-se um DocumentReference, e muitos sistemas criam ambos para o mesmo relatório.

Um DiagnosticReport é um relatório estruturado cujas descobertas são (ou podem ser) Observações codificadas; um DocumentReference é um ponteiro para um documento de qualquer tipo, com metadados e o ficheiro. Um relatório de laboratório que chega como HL7 v2 ORU torna-se um DiagnosticReport com Observações. Um PDF digitalizado de um relatório de outro país, sem dados estruturados, é um DocumentReference. Muitos sistemas criam ambos: o DiagnosticReport para os dados, com presentedForm ou um DocumentReference para o ficheiro assinado. Ver DocumentReference vs DiagnosticReport vs Binary.

Erros que quebram relatórios

Os erros que mais frequentemente quebram os DiagnosticReports FHIR são enviar Observações sem um relatório para as agrupar, marcar um relatório como final enquanto as suas Observações ainda estão preliminares, duplicar a conclusão numa Observação com um código inventado, omitir o carimbo de data/hora de emissão para que as correções não possam ser detetadas, e inventar códigos de painel locais onde já existe um painel LOINC.

  • Resultados escritos como Observações sem DiagnosticReport, pelo que um consumidor não consegue dizer quais os valores que foram emitidos em conjunto ou qual o relatório que foi alterado.
  • status: final num relatório cujas Observações ainda estão preliminary.
  • A conclusão duplicada numa Observation com um código inventado.
  • issued em falta, pelo que o consumidor não consegue encomendar relatórios ou detetar correções.
  • Códigos de painel inventados localmente quando existe um painel LOINC.

Em Anpheros

A Plataforma Anpheros transforma resultados de laboratório que chegam através do seu conector de laboratório, como HL7 v2 ORU, CSV ou JSON, em Observações FHIR agrupadas sob um DiagnosticReport, com o laboratório como executante e o ficheiro original como presentedForm onde disponível. Um relatório que uma pessoa digitaliza na aplicação é mantido como um único relatório com os seus resultados individuais e a imagem original.

O conector de laboratório documenta os formatos aceites. Como o original digitalizado é mantido com o relatório, um médico pode verificar qualquer valor em relação à fonte. Relatórios alterados mantêm o seu histórico através de versões de recursos.

Páginas relacionadas

Fontes

Perguntas frequentes

Preciso de um DiagnosticReport para um único teste?

Estritamente, uma única Observation pode existir por si só, e as medições caseiras geralmente o fazem. Qualquer coisa emitida por um laboratório é melhor encapsulada num DiagnosticReport, mesmo com um único resultado, para que o estado, o emissor e o formulário assinado viajem com ela.

Como represento um resultado alterado?

Atualize a Observation (a sua versão muda), defina o estado do DiagnosticReport para amended ou corrected, atualize issued e registe a razão numa nota. Nunca crie um segundo relatório com o mesmo identificador.

Onde vai o intervalo de referência?

Em cada Observation, em referenceRange, porque os intervalos diferem por analito e por laboratório. O relatório não tem um intervalo próprio.

Pode um DiagnosticReport conter outros relatórios?

Não diretamente em R4; relatórios relacionados referenciam-se mutuamente através de basedOn ou extensões, e os sub-painéis de um painel são geralmente modelados como Observações com hasMember. O R5 mantém a mesma abordagem.

Anpheros Platform

Experimente grátis no sandbox

Sua primeira chamada FHIR em 5 minutos. Uma API HL7 FHIR R4 com o consentimento do paciente integrado: experimente na sandbox e depois conecte a sua própria app ou sistema clínico.

Grátis · 30 pacientes sintéticos · sem cartão

Este guia é meramente informativo e não substitui aconselhamento médico. Para decisões sobre a sua saúde, fale com o seu médico. Em uma emergência, ligue para o número de emergência local (112 na Europa).
Escrito por
A equipa Anpheros

A Anpheros desenvolve um registo médico que o doente controla e pode partilhar com qualquer clínica, numa plataforma HL7 FHIR R4, sediada na UE. Estes guias ajudam-no a compreender e organizar a sua saúde; não substituem o seu médico.

Sobre a Anpheros →