DiagnosticReport — Compte-rendu d'examen
Le conteneur FHIR qui regroupe résultats, conclusion et données techniques d'un examen diagnostique : biologie, anatomopathologie, génomique, imagerie.
Objet de la ressource
DiagnosticReport agrège l'ensemble des résultats d'un examen diagnostique, leur interprétation et les métadonnées de l'acte. C'est l'entité « rapport » coté lecteur — médecin référent ou patient — par opposition aux Observations individuelles qui portent chaque mesure unitaire.
Concrètement : un hémogramme complet (CBC) génère un
DiagnosticReport qui référence cinq à vingt Observations (globules blancs, globules
rouges, hémoglobine, hématocrite, plaquettes, formule leucocytaire). Un scanner
abdominal génère un DiagnosticReport qui pointe vers les images DICOM (via
ImagingStudy) et porte le rapport radiologique en texte structuré
(presentedForm ou conclusion).
Champs clés
| Champ | Type | Cardinalité | Rôle |
|---|---|---|---|
identifier | Identifier[] | 0..* | Identifiant filler local (n° de dossier biologie / radiologie). |
basedOn | Reference(ServiceRequest | …)[] | 0..* | Demande à l'origine du rapport. |
status | code | 1..1 | registered, partial, preliminary, modified, final, amended, corrected, appended, cancelled, entered-in-error, unknown. |
category | CodeableConcept[] | 0..* | Classification (Hematology, Microbiology, Radiology, Pathology…). Table v2-0074. |
code | CodeableConcept | 1..1 | Code de l'examen demandé. LOINC pour la biologie. |
subject | Reference(Patient | Group | Device | Location | Organization | Practitioner | Medication | Substance | BiologicallyDerivedProduct) | 0..1 | Sujet de l'examen. |
encounter | Reference(Encounter) | 0..1 | Visite associée. |
effective[x] | dateTime | Period | 0..1 | Date/période de l'acte (prélèvement, prise de cliché). |
issued | instant | 0..1 | Date de signature/diffusion du rapport. |
performer | Reference(Practitioner | PractitionerRole | Organization | CareTeam)[] | 0..* | Exécutant (laboratoire, radiologue interprétateur). |
resultsInterpreter | Reference(Practitioner | PractitionerRole | Organization | CareTeam)[] | 0..* | Médecin interprète, distinct du performer technique. |
specimen | Reference(Specimen)[] | 0..* | Échantillons analysés. |
result | Reference(Observation)[] | 0..* | Observations atomiques qui composent le rapport. |
study | Reference(GenomicStudy | ImagingStudy)[] | 0..* | Études associées (imagerie, génomique). |
conclusion | markdown | 0..1 | Conclusion textuelle. |
conclusionCode | CodeableConcept[] | 0..* | Codes diagnostic associés (CIM-10, SNOMED CT). |
presentedForm | Attachment[] | 0..* | PDF du rapport signé, image, format propriétaire. |
Pattern Event (status)
DiagnosticReport suit le pattern Event du workflow FHIR. La machine à états
autour de status :
registered— dossier ouvert, examen non débuté.partial— quelques résultats disponibles, d'autres en attente.preliminary— résultats préliminaires (urgents, non validés).final— résultat validé, signé.amended— résultat corrigé aprèsfinalavec ajout d'information clinique.corrected— résultat erroné dans la versionfinal, désormais corrigé.cancelled— examen annulé.entered-in-error— saisi par erreur.
Exemple JSON
Rapport CBC final pour Patient « example », en réponse à la
ServiceRequest/lab-cbc :
{
"resourceType": "DiagnosticReport",
"id": "cbc-result",
"basedOn": [{ "reference": "ServiceRequest/lab-cbc" }],
"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": "Complete blood count panel"
}]
},
"subject": { "reference": "Patient/example" },
"encounter": { "reference": "Encounter/example" },
"effectiveDateTime": "2026-05-14T08:30:00+01:00",
"issued": "2026-05-14T10:45:00+01:00",
"performer": [{ "reference": "Organization/lab-acme" }],
"specimen": [{ "reference": "Specimen/blood-001" }],
"result": [
{ "reference": "Observation/wbc" },
{ "reference": "Observation/rbc" },
{ "reference": "Observation/hgb" },
{ "reference": "Observation/hct" },
{ "reference": "Observation/plt" }
],
"conclusion": "Numération normale. Aucune anomalie significative."
} basedOnpointe vers la ServiceRequest d'origine — le placer order.status=finalindique un rapport validé, prêt à être facturé et archivé.categoryHematology (HM) selon v2-0074.effectiveDateTime= date du prélèvement ;issued= date de signature du rapport — l'écart documente la latence du laboratoire.resultliste les 5 Observations atomiques (WBC, RBC, HGB, HCT, PLT).conclusionen texte libre porte l'interprétation synthétique.
API REST
GET /DiagnosticReport?subject=Patient/example&status=final— rapports finalisés d'un patient.GET /DiagnosticReport?based-on=ServiceRequest/lab-cbc— rapport correspondant à une demande spécifique.POST /DiagnosticReport— créer un nouveau rapport (typiquement par le LIS).GET /DiagnosticReport?_include=DiagnosticReport:result&_include=DiagnosticReport:specimen— inclure les Observations et Specimen.GET /DiagnosticReport?code=58410-2&date=ge2026-01-01— recherche par code LOINC + date.GET /DiagnosticReport/cbc-result/$document— opération composite qui renvoie un Bundle de type document contenant le rapport + ses Observations.
Profils nationaux
| Profil | Régulateur | Restrictions |
|---|---|---|
| US Core DiagnosticReport for Laboratory | HL7 US Realm — ONC EHR | Doit porter category, code LOINC, effective[x], result. |
| US Core DiagnosticReport Note | USCDI v3 | Profil pour les comptes-rendus narratifs (radiologie, pathologie) avec presentedForm. |
| IPS DiagnosticReport | HL7 + CEN/TC 251 | Pour le résumé patient international. |
| FR Core DiagnosticReport | ANS | LOINC FR + slicing sur conclusion. |
| AU Core DiagnosticReport | HL7 Australia | Pour My Health Record pathologie. |
Pièges courants
- Confondre
effective[x]etissued—effectiveest la date de l'événement clinique (prélèvement, IRM) ;issuedest la date administrative de signature/diffusion. Mélanger les deux fausse les indicateurs de délai diagnostic. - Oubli du lien vers
specimen— sans Specimen référencé, impossible de tracer l'échantillon source, ce qui complique la rétro-investigation (mauvais tube, échantillon dégradé). - Observation orpheline — chaque
resultdoit pointer vers une Observation existante. Référencer une Observation supprimée ou inexistante invalide le rapport côté serveur strict. - Status régressé — passer de
finalàpreliminaryest interdit. Pour corriger un final, utiliseramendedoucorrected. - Imagerie sans
study— un compte-rendu de scanner doit pointer vers unImagingStudyportant la référence DICOM (UID d'étude, série, instances), sans quoi le viewer PACS ne peut pas faire le lien.
Ressources liées
- ServiceRequest — demande à l'origine du rapport.
- Observation — résultats atomiques composant le rapport.
- Specimen — échantillon analysé.
- ImagingStudy — étude DICOM associée.
- GenomicStudy — étude de génomique (R5).
- Media — pièces jointes images (échographies, photos).
- HL7 v2 ORU^R01 — équivalent legacy.