This page is part of the FHIR Specification v6.0.0-ballot1: Release 6 Ballot (1st Draft) (see Ballot Notes). The current version is 5.0.0. For a full list of available versions, see the Directory of published versions
Orders and Observations Work Group | Maturity Level: 3 | Trial Use | Security Category: Patient | Compartments: Device, Encounter, Patient, Practitioner |
The findings and interpretation of diagnostic tests performed on patients, groups of patients, products, substances, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports. The report also includes non-clinical context such as batch analysis and stability reporting of products and substances.
This resource is an event resource from a FHIR workflow perspective - see Workflow. It is the intent of the Orders and Observation Workgroup to align this resource with the workflow pattern for event resources.
A diagnostic report is the set of information that is typically provided by a diagnostic service when investigations are complete. The information includes a mix of atomic results, text reports, images, and codes. The mix varies depending on the nature of the diagnostic procedure, and sometimes on the nature of the outcomes for a particular investigation. In FHIR, the report can be conveyed in a variety of ways including a Document, RESTful API, or Messaging framework. Included within each of these, would be the DiagnosticReport resource itself.
The DiagnosticReport resource has information about the diagnostic report itself, and about the subject and, in the case of laboratory tests, the specimen of the report. It can also refer to the request details and atomic observations details or image instances. Report conclusions can be expressed as a simple text blob, structured coded data or as an attached fully formatted report such as a PDF.
The DiagnosticReport resource is suitable for the following kinds of diagnostic reports:
The DiagnosticReport resource is not intended to support cumulative result presentation (tabular presentation of past and present results in the resource). The DiagnosticReport resource does not yet provide full support for detailed structured reports of sequencing; this is planned for a future release.
The words "tests", "results", "observations", "panels" and "batteries" are often used interchangeably when describing the various parts of a diagnostic report. This leads to much confusion. The naming confusion is worsened because of the wide variety of forms that the result of a diagnostic investigation can take, as described above. Languages other than English have their own variations on this theme.
This resource uses one particular set of terms. A practitioner "requests" a set of "tests". The diagnostic service returns a "report" which may contain a "narrative" - a written summary of the outcomes, and/or "results" - the individual pieces of atomic data which each are "observations". The results are assembled in "groups" which are nested structures of Observations (traditionally referred to as "panels" or " batteries" by laboratories) that can be used to represent relationships between the individual data items.
Note that many diagnostic processes are procedures that generate observations and diagnostic reports. In many cases, such an observation does not require an explicit representation of the procedure used to create the observation, but where there are details of interest about how the diagnostic procedure was performed, the Procedure resource is used to describe the activity.
In contrast to the Observation resource, the DiagnosticReport resource typically includes additional clinical context and some mix of atomic results, images, imaging reports, textual and coded interpretation, and formatted representations. Laboratory reports, pathology reports, and imaging reports should be represented using the DiagnosticReport resource. The Observation resource is referenced by the DiagnosticReport to provide the atomic results for a particular investigation.
If you have a highly structured report, then use DiagnosticReport - it has data and workflow support. Details about the request for a diagnostic investigation are captured in the various "request" resources (e.g., the ServiceRequest) and allow the report to connect to clinical workflows. For more narrative driven reports with less work flow (histology/mortuary, etc.), the Composition resource would be more appropriate.
Diagnostic studies, such as those involving radiologic images or genomic data, are referenced via the "study" element.
For image studies, the details and actual image instances can be referenced in the DiagnosticReport using the "media" element or through the "study" element to reference ImagingStudy resources which represent the content produced in a DICOM imaging study or set of DICOM Instances for a patient.
When a report includes genomic testing, the complex metadata about the analysis performed can be captured referenced through the "study" element to reference GenomicStudy resources.
As other complex laboratory areas develop resources to capture metadata about different types of studies, this attribute will be extended to reference those.
Image and media representations of the report and supporting images and data are referenced in the "media" element.
A DiagnosticReport has overlapping characteristics with DocumentReference. The DiagnosticReport is appropriate to reflect a set of discrete results (Observations) and associated contextual details for a specific report, and within those results any further structure within the Observation instances, while a DocumentReference typically reflects a non-FHIR object that is not a FHIR Document (e.g., an existing C-CDA document, a scan of a drivers license, or narrative note). There is some overlap potential such as a scan of a CBC report that can either be referenced by way of a DocumentReference, or included in a DiagnosticReport as a representedForm together with the structured, discrete data. Specific implementation guides would further clarify when one approach is more appropriate than another.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | TU | DomainResource | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports + Rule: When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business identifier for report |
basedOn | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | What was requested | |
status | ?!Σ | 1..1 | code | registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown Binding: Diagnostic Report Status (Required) |
category | Σ | 0..* | CodeableConcept | Service category Binding: Diagnostic Service Section Codes (Example) |
code | Σ | 1..1 | CodeableConcept | Name/Code for this diagnostic report Binding: LOINC Diagnostic Report Codes (Preferred) |
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location | Organization | Practitioner | Medication | Substance | BiologicallyDerivedProduct) | The subject of the report - usually, but not always, the patient |
encounter | Σ | 0..1 | Reference(Encounter) | Health care event when test ordered |
effective[x] | Σ | 0..1 | Clinically relevant time/time-period for report | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
issued | Σ | 0..1 | instant | DateTime this version was made |
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | 0..* | Reference(Specimen) | Specimens this report is based on | |
result | C | 0..* | Reference(Observation) | Observations |
note | 0..* | Annotation | Comments about the diagnostic report | |
study | 0..* | Reference(GenomicStudy | ImagingStudy) | Reference to full details of an analysis associated with the diagnostic report | |
supportingInfo | 0..* | BackboneElement | Additional information supporting the diagnostic report | |
type | 1..1 | CodeableConcept | Supporting information role code Binding: hl7VS-VS-observationType (Example) | |
reference | 1..1 | Reference(Procedure | Observation | DiagnosticReport | Citation) | Supporting information reference | |
media | Σ | 0..* | BackboneElement | Key images or data associated with this report |
comment | 0..1 | string | Comment about the image or data (e.g. explanation) | |
link | Σ | 1..1 | Reference(DocumentReference) | Reference to the image or data source |
composition | C | 0..1 | Reference(Composition) | Reference to a Composition resource for the DiagnosticReport structure |
conclusion | 0..1 | markdown | Clinical conclusion (interpretation) of test results | |
conclusionCode | 0..* | CodeableConcept | Codes for the clinical conclusion of test results Binding: SNOMED CT Clinical Findings (Example) | |
presentedForm | 0..* | Attachment | Entire report as issued | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<DiagnosticReport xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business identifier for report --></identifier> <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation| MedicationRequest|NutritionOrder|ServiceRequest) What was requested --></basedOn> <status value="[code]"/><!-- 1..1 registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown --> <category><!-- 0..* CodeableConcept Service category --></category> <code><!-- 1..1 CodeableConcept Name/Code for this diagnostic report --></code> <subject><!-- 0..1 Reference(BiologicallyDerivedProduct|Device|Group|Location| Medication|Organization|Patient|Practitioner|Substance) The subject of the report - usually, but not always, the patient --></subject> <encounter><!-- 0..1 Reference(Encounter) Health care event when test ordered --></encounter> <effective[x]><!-- 0..1 dateTime|Period Clinically relevant time/time-period for report --></effective[x]> <issued value="[instant]"/><!-- 0..1 DateTime this version was made --> <performer><!-- 0..* Reference(CareTeam|Organization|Practitioner| PractitionerRole) Responsible Diagnostic Service --></performer> <resultsInterpreter><!-- 0..* Reference(CareTeam|Organization|Practitioner| PractitionerRole) Primary result interpreter --></resultsInterpreter> <specimen><!-- 0..* Reference(Specimen) Specimens this report is based on --></specimen> <result><!-- I 0..* Reference(Observation) Observations --></result> <note><!-- 0..* Annotation Comments about the diagnostic report --></note> <study><!-- 0..* Reference(GenomicStudy|ImagingStudy) Reference to full details of an analysis associated with the diagnostic report --></study> <supportingInfo> <!-- 0..* Additional information supporting the diagnostic report --> <type><!-- 1..1 CodeableConcept Supporting information role code --></type> <reference><!-- 1..1 Reference(Citation|DiagnosticReport|Observation|Procedure) Supporting information reference --></reference> </supportingInfo> <media> <!-- 0..* Key images or data associated with this report --> <comment value="[string]"/><!-- 0..1 Comment about the image or data (e.g. explanation) --> <link><!-- 1..1 Reference(DocumentReference) Reference to the image or data source --></link> </media> <composition><!-- I 0..1 Reference(Composition) Reference to a Composition resource for the DiagnosticReport structure --></composition> <conclusion value="[markdown]"/><!-- 0..1 Clinical conclusion (interpretation) of test results --> <conclusionCode><!-- 0..* CodeableConcept Codes for the clinical conclusion of test results --></conclusionCode> <presentedForm><!-- 0..* Attachment Entire report as issued --></presentedForm> </DiagnosticReport>
JSON Template
{ "resourceType" : "DiagnosticReport", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier for report "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation| MedicationRequest|NutritionOrder|ServiceRequest) }], // What was requested "status" : "<code>", // R! registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown "category" : [{ CodeableConcept }], // Service category "code" : { CodeableConcept }, // R! Name/Code for this diagnostic report "subject" : { Reference(BiologicallyDerivedProduct|Device|Group|Location| Medication|Organization|Patient|Practitioner|Substance) }, // The subject of the report - usually, but not always, the patient "encounter" : { Reference(Encounter) }, // Health care event when test ordered // effective[x]: Clinically relevant time/time-period for report. One of these 2: "effectiveDateTime" : "<dateTime>", "effectivePeriod" : { Period }, "issued" : "<instant>", // DateTime this version was made "performer" : [{ Reference(CareTeam|Organization|Practitioner| PractitionerRole) }], // Responsible Diagnostic Service "resultsInterpreter" : [{ Reference(CareTeam|Organization|Practitioner| PractitionerRole) }], // Primary result interpreter "specimen" : [{ Reference(Specimen) }], // Specimens this report is based on "result" : [{ Reference(Observation) }], // I Observations "note" : [{ Annotation }], // Comments about the diagnostic report "study" : [{ Reference(GenomicStudy|ImagingStudy) }], // Reference to full details of an analysis associated with the diagnostic report "supportingInfo" : [{ // Additional information supporting the diagnostic report "type" : { CodeableConcept }, // R! Supporting information role code "reference" : { Reference(Citation|DiagnosticReport|Observation|Procedure) } // R! Supporting information reference }], "media" : [{ // Key images or data associated with this report "comment" : "<string>", // Comment about the image or data (e.g. explanation) "link" : { Reference(DocumentReference) } // R! Reference to the image or data source }], "composition" : { Reference(Composition) }, // I Reference to a Composition resource for the DiagnosticReport structure "conclusion" : "<markdown>", // Clinical conclusion (interpretation) of test results "conclusionCode" : [{ CodeableConcept }], // Codes for the clinical conclusion of test results "presentedForm" : [{ Attachment }] // Entire report as issued }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:DiagnosticReport; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier for report fhir:basedOn ( [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest|NutritionOrder| ServiceRequest) ] ... ) ; # 0..* What was requested fhir:status [ code ] ; # 1..1 registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown fhir:category ( [ CodeableConcept ] ... ) ; # 0..* Service category fhir:code [ CodeableConcept ] ; # 1..1 Name/Code for this diagnostic report fhir:subject [ Reference(BiologicallyDerivedProduct|Device|Group|Location|Medication|Organization|Patient| Practitioner|Substance) ] ; # 0..1 The subject of the report - usually, but not always, the patient fhir:encounter [ Reference(Encounter) ] ; # 0..1 Health care event when test ordered # effective[x] : 0..1 Clinically relevant time/time-period for report. One of these 2 fhir:effective [ a fhir:dateTime ; dateTime ] fhir:effective [ a fhir:Period ; Period ] fhir:issued [ instant ] ; # 0..1 DateTime this version was made fhir:performer ( [ Reference(CareTeam|Organization|Practitioner|PractitionerRole) ] ... ) ; # 0..* Responsible Diagnostic Service fhir:resultsInterpreter ( [ Reference(CareTeam|Organization|Practitioner|PractitionerRole) ] ... ) ; # 0..* Primary result interpreter fhir:specimen ( [ Reference(Specimen) ] ... ) ; # 0..* Specimens this report is based on fhir:result ( [ Reference(Observation) ] ... ) ; # 0..* I Observations fhir:note ( [ Annotation ] ... ) ; # 0..* Comments about the diagnostic report fhir:study ( [ Reference(GenomicStudy|ImagingStudy) ] ... ) ; # 0..* Reference to full details of an analysis associated with the diagnostic report fhir:supportingInfo ( [ # 0..* Additional information supporting the diagnostic report fhir:type [ CodeableConcept ] ; # 1..1 Supporting information role code fhir:reference [ Reference(Citation|DiagnosticReport|Observation|Procedure) ] ; # 1..1 Supporting information reference ] ... ) ; fhir:media ( [ # 0..* Key images or data associated with this report fhir:comment [ string ] ; # 0..1 Comment about the image or data (e.g. explanation) fhir:link [ Reference(DocumentReference) ] ; # 1..1 Reference to the image or data source ] ... ) ; fhir:composition [ Reference(Composition) ] ; # 0..1 I Reference to a Composition resource for the DiagnosticReport structure fhir:conclusion [ markdown ] ; # 0..1 Clinical conclusion (interpretation) of test results fhir:conclusionCode ( [ CodeableConcept ] ... ) ; # 0..* Codes for the clinical conclusion of test results fhir:presentedForm ( [ Attachment ] ... ) ; # 0..* Entire report as issued ]
Changes from both R4 and R4B
DiagnosticReport | |
DiagnosticReport.status |
|
DiagnosticReport.subject |
|
DiagnosticReport.note |
|
DiagnosticReport.study |
|
DiagnosticReport.supportingInfo |
|
DiagnosticReport.supportingInfo.type |
|
DiagnosticReport.supportingInfo.reference |
|
DiagnosticReport.media.link |
|
DiagnosticReport.composition |
|
DiagnosticReport.conclusion |
|
DiagnosticReport.imagingStudy |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DiagnosticReport | TU | DomainResource | A Diagnostic report - a combination of request information, atomic results, images, interpretation, as well as formatted reports + Rule: When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business identifier for report |
basedOn | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | What was requested | |
status | ?!Σ | 1..1 | code | registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown Binding: Diagnostic Report Status (Required) |
category | Σ | 0..* | CodeableConcept | Service category Binding: Diagnostic Service Section Codes (Example) |
code | Σ | 1..1 | CodeableConcept | Name/Code for this diagnostic report Binding: LOINC Diagnostic Report Codes (Preferred) |
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location | Organization | Practitioner | Medication | Substance | BiologicallyDerivedProduct) | The subject of the report - usually, but not always, the patient |
encounter | Σ | 0..1 | Reference(Encounter) | Health care event when test ordered |
effective[x] | Σ | 0..1 | Clinically relevant time/time-period for report | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
issued | Σ | 0..1 | instant | DateTime this version was made |
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Responsible Diagnostic Service |
resultsInterpreter | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam) | Primary result interpreter |
specimen | 0..* | Reference(Specimen) | Specimens this report is based on | |
result | C | 0..* | Reference(Observation) | Observations |
note | 0..* | Annotation | Comments about the diagnostic report | |
study | 0..* | Reference(GenomicStudy | ImagingStudy) | Reference to full details of an analysis associated with the diagnostic report | |
supportingInfo | 0..* | BackboneElement | Additional information supporting the diagnostic report | |
type | 1..1 | CodeableConcept | Supporting information role code Binding: hl7VS-VS-observationType (Example) | |
reference | 1..1 | Reference(Procedure | Observation | DiagnosticReport | Citation) | Supporting information reference | |
media | Σ | 0..* | BackboneElement | Key images or data associated with this report |
comment | 0..1 | string | Comment about the image or data (e.g. explanation) | |
link | Σ | 1..1 | Reference(DocumentReference) | Reference to the image or data source |
composition | C | 0..1 | Reference(Composition) | Reference to a Composition resource for the DiagnosticReport structure |
conclusion | 0..1 | markdown | Clinical conclusion (interpretation) of test results | |
conclusionCode | 0..* | CodeableConcept | Codes for the clinical conclusion of test results Binding: SNOMED CT Clinical Findings (Example) | |
presentedForm | 0..* | Attachment | Entire report as issued | |
Documentation for this format |
See the Extensions for this resource
XML Template
<DiagnosticReport xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business identifier for report --></identifier> <basedOn><!-- 0..* Reference(CarePlan|ImmunizationRecommendation| MedicationRequest|NutritionOrder|ServiceRequest) What was requested --></basedOn> <status value="[code]"/><!-- 1..1 registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown --> <category><!-- 0..* CodeableConcept Service category --></category> <code><!-- 1..1 CodeableConcept Name/Code for this diagnostic report --></code> <subject><!-- 0..1 Reference(BiologicallyDerivedProduct|Device|Group|Location| Medication|Organization|Patient|Practitioner|Substance) The subject of the report - usually, but not always, the patient --></subject> <encounter><!-- 0..1 Reference(Encounter) Health care event when test ordered --></encounter> <effective[x]><!-- 0..1 dateTime|Period Clinically relevant time/time-period for report --></effective[x]> <issued value="[instant]"/><!-- 0..1 DateTime this version was made --> <performer><!-- 0..* Reference(CareTeam|Organization|Practitioner| PractitionerRole) Responsible Diagnostic Service --></performer> <resultsInterpreter><!-- 0..* Reference(CareTeam|Organization|Practitioner| PractitionerRole) Primary result interpreter --></resultsInterpreter> <specimen><!-- 0..* Reference(Specimen) Specimens this report is based on --></specimen> <result><!-- I 0..* Reference(Observation) Observations --></result> <note><!-- 0..* Annotation Comments about the diagnostic report --></note> <study><!-- 0..* Reference(GenomicStudy|ImagingStudy) Reference to full details of an analysis associated with the diagnostic report --></study> <supportingInfo> <!-- 0..* Additional information supporting the diagnostic report --> <type><!-- 1..1 CodeableConcept Supporting information role code --></type> <reference><!-- 1..1 Reference(Citation|DiagnosticReport|Observation|Procedure) Supporting information reference --></reference> </supportingInfo> <media> <!-- 0..* Key images or data associated with this report --> <comment value="[string]"/><!-- 0..1 Comment about the image or data (e.g. explanation) --> <link><!-- 1..1 Reference(DocumentReference) Reference to the image or data source --></link> </media> <composition><!-- I 0..1 Reference(Composition) Reference to a Composition resource for the DiagnosticReport structure --></composition> <conclusion value="[markdown]"/><!-- 0..1 Clinical conclusion (interpretation) of test results --> <conclusionCode><!-- 0..* CodeableConcept Codes for the clinical conclusion of test results --></conclusionCode> <presentedForm><!-- 0..* Attachment Entire report as issued --></presentedForm> </DiagnosticReport>
JSON Template
{ "resourceType" : "DiagnosticReport", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business identifier for report "basedOn" : [{ Reference(CarePlan|ImmunizationRecommendation| MedicationRequest|NutritionOrder|ServiceRequest) }], // What was requested "status" : "<code>", // R! registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown "category" : [{ CodeableConcept }], // Service category "code" : { CodeableConcept }, // R! Name/Code for this diagnostic report "subject" : { Reference(BiologicallyDerivedProduct|Device|Group|Location| Medication|Organization|Patient|Practitioner|Substance) }, // The subject of the report - usually, but not always, the patient "encounter" : { Reference(Encounter) }, // Health care event when test ordered // effective[x]: Clinically relevant time/time-period for report. One of these 2: "effectiveDateTime" : "<dateTime>", "effectivePeriod" : { Period }, "issued" : "<instant>", // DateTime this version was made "performer" : [{ Reference(CareTeam|Organization|Practitioner| PractitionerRole) }], // Responsible Diagnostic Service "resultsInterpreter" : [{ Reference(CareTeam|Organization|Practitioner| PractitionerRole) }], // Primary result interpreter "specimen" : [{ Reference(Specimen) }], // Specimens this report is based on "result" : [{ Reference(Observation) }], // I Observations "note" : [{ Annotation }], // Comments about the diagnostic report "study" : [{ Reference(GenomicStudy|ImagingStudy) }], // Reference to full details of an analysis associated with the diagnostic report "supportingInfo" : [{ // Additional information supporting the diagnostic report "type" : { CodeableConcept }, // R! Supporting information role code "reference" : { Reference(Citation|DiagnosticReport|Observation|Procedure) } // R! Supporting information reference }], "media" : [{ // Key images or data associated with this report "comment" : "<string>", // Comment about the image or data (e.g. explanation) "link" : { Reference(DocumentReference) } // R! Reference to the image or data source }], "composition" : { Reference(Composition) }, // I Reference to a Composition resource for the DiagnosticReport structure "conclusion" : "<markdown>", // Clinical conclusion (interpretation) of test results "conclusionCode" : [{ CodeableConcept }], // Codes for the clinical conclusion of test results "presentedForm" : [{ Attachment }] // Entire report as issued }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:DiagnosticReport; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier for report fhir:basedOn ( [ Reference(CarePlan|ImmunizationRecommendation|MedicationRequest|NutritionOrder| ServiceRequest) ] ... ) ; # 0..* What was requested fhir:status [ code ] ; # 1..1 registered | partial | preliminary | modified | final | amended | corrected | appended | cancelled | entered-in-error | unknown fhir:category ( [ CodeableConcept ] ... ) ; # 0..* Service category fhir:code [ CodeableConcept ] ; # 1..1 Name/Code for this diagnostic report fhir:subject [ Reference(BiologicallyDerivedProduct|Device|Group|Location|Medication|Organization|Patient| Practitioner|Substance) ] ; # 0..1 The subject of the report - usually, but not always, the patient fhir:encounter [ Reference(Encounter) ] ; # 0..1 Health care event when test ordered # effective[x] : 0..1 Clinically relevant time/time-period for report. One of these 2 fhir:effective [ a fhir:dateTime ; dateTime ] fhir:effective [ a fhir:Period ; Period ] fhir:issued [ instant ] ; # 0..1 DateTime this version was made fhir:performer ( [ Reference(CareTeam|Organization|Practitioner|PractitionerRole) ] ... ) ; # 0..* Responsible Diagnostic Service fhir:resultsInterpreter ( [ Reference(CareTeam|Organization|Practitioner|PractitionerRole) ] ... ) ; # 0..* Primary result interpreter fhir:specimen ( [ Reference(Specimen) ] ... ) ; # 0..* Specimens this report is based on fhir:result ( [ Reference(Observation) ] ... ) ; # 0..* I Observations fhir:note ( [ Annotation ] ... ) ; # 0..* Comments about the diagnostic report fhir:study ( [ Reference(GenomicStudy|ImagingStudy) ] ... ) ; # 0..* Reference to full details of an analysis associated with the diagnostic report fhir:supportingInfo ( [ # 0..* Additional information supporting the diagnostic report fhir:type [ CodeableConcept ] ; # 1..1 Supporting information role code fhir:reference [ Reference(Citation|DiagnosticReport|Observation|Procedure) ] ; # 1..1 Supporting information reference ] ... ) ; fhir:media ( [ # 0..* Key images or data associated with this report fhir:comment [ string ] ; # 0..1 Comment about the image or data (e.g. explanation) fhir:link [ Reference(DocumentReference) ] ; # 1..1 Reference to the image or data source ] ... ) ; fhir:composition [ Reference(Composition) ] ; # 0..1 I Reference to a Composition resource for the DiagnosticReport structure fhir:conclusion [ markdown ] ; # 0..1 Clinical conclusion (interpretation) of test results fhir:conclusionCode ( [ CodeableConcept ] ... ) ; # 0..* Codes for the clinical conclusion of test results fhir:presentedForm ( [ Attachment ] ... ) ; # 0..* Entire report as issued ]
Changes from both R4 and R4B
DiagnosticReport | |
DiagnosticReport.status |
|
DiagnosticReport.subject |
|
DiagnosticReport.note |
|
DiagnosticReport.study |
|
DiagnosticReport.supportingInfo |
|
DiagnosticReport.supportingInfo.type |
|
DiagnosticReport.supportingInfo.reference |
|
DiagnosticReport.media.link |
|
DiagnosticReport.composition |
|
DiagnosticReport.conclusion |
|
DiagnosticReport.imagingStudy |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | ValueSet | Type | Documentation |
---|---|---|---|
DiagnosticReport.status | DiagnosticReportStatus | Required | The status of the diagnostic report. |
DiagnosticReport.category | DiagnosticServiceSectionCodes (a valid code from diagnosticServiceSectionId ) | Example | This value set includes all the codes in HL7 V2 table 0074. |
DiagnosticReport.code | LOINCDiagnosticReportCodes (a valid code from LOINC ) | Preferred | This value set includes LOINC codes that relate to Diagnostic Observations. |
DiagnosticReport.supportingInfo.type | Hl7VSVSObservationType (a valid code from observationType ) | Example | Value Set of codes that specify types of observations to enable systems to distinguish between observations sent along with an order, versus observations sent as the result to an order. |
DiagnosticReport.conclusionCode | SNOMEDCTClinicalFindings | Example | This value set includes all the "Clinical finding" SNOMED CT codes - concepts where concept is-a 404684003 (Clinical finding (finding)). |
UniqueKey | Level | Location | Description | Expression |
dgr-1 | Rule | (base) | When a Composition is referenced in `Diagnostic.composition`, all Observation resources referenced in `Composition.entry` must also be referenced in `Diagnostic.entry` or in the references Observations in `Observation.hasMember` | composition.exists() implies (composition.resolve().section.entry.reference.where(resolve() is Observation) in (result.reference|result.reference.resolve().hasMember.reference)) |
type
element that may be used to distinguish the identifiers assigned by the requester and the performer of the request (known as the 'Placer' and 'Filler' in the HL7 Version 2 Messaging Standard). Use the identifier type code "PLAC" for the Placer Identifier and "FILL" for the Filler identifier as is shown in the example below:
<!-- Placer identifier--> <identifier> <type> <coding> <system value="http://terminology.hl7.org/CodeSystem/v2-0203"/> <code value="PLAC"/> </coding> <text value="Placer"/> </type> <system value="urn:oid:1.3.4.5.6.7"/> <value value="2345234234234"/> </identifier> <!-- Filler identifier--> <identifier> <type> <coding> <system value="http://terminology.hl7.org/CodeSystem/v2-0203"/> <code value="PLAC"/> </coding> <text value="Placer"/> </type> <system value="http://terminology.hl7.org/CodeSystem/v2-0203"/> <value value="567890"/> </identifier>
If the diagnostic procedure was performed on the patient directly, the effective[x] element is a dateTime, the time it was performed. If specimens were taken, the clinically relevant time of the report can be derived from the specimen collection times, but since detailed specimen information is not always available, and nor is the clinically relevant time always exactly the specimen collection time (e.g. complex timed tests), the reports SHALL always include an effective[x] element. Note that HL7 V2 messages often carry a diagnostically relevant time without carrying any specimen information.
ImagingStudy and the media
element are somewhat overlapping - typically, the list of image references in the media element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.
Typically, a report is either: all data, no narrative (e.g. Core lab) or a mix of data with some concluding narrative (e.g. Structured Pathology Report, Bone Density), or all narrative (for example a typical imaging report, histopathology). This resource provides for these 3 different presentations:
Note that the conclusion and the coded diagnoses are part of the atomic data and SHOULD be duplicated in the narrative and in the presented form if the latter is present. The narrative and the presented form serve the same function: a representation of the report for a human. The presented form is included since diagnostic service reports often contain presentation features that are not easy to reproduce in the HTML narrative. Whether or not the presented form is included, the narrative must be a clinically safe view of the diagnostic report; at a minimum, this could be fulfilled by a note indicating that the narrative is not proper representation of the report, and that the presented form must be used, or a generated view from the atomic data. However, consumers of the report will best be served if the narrative contains clinically relevant data from the form. Commonly, the following patterns are used:
Note that the nature of reports from the various disciplines that provide diagnostic reports are changing quickly, as expert systems provide improved narrative reporting in high volume reports, structured reporting brings additional data to areas that have classically been narrative based, and the nature of the imaging and laboratory procedures are merging. Therefore, these patterns described above are only examples of how a diagnostic report can be used.
Genomic reporting makes heavy use of the DiagnosticReport and Observation resources to capture the genomic data in a highly structured and computable way. An implementation guide describing how to represent genetic results can be found here .
Beyond the structured, computable data available in DiagnosticReport and Observation, metadata about the analysis performed is captured in the GenomicStudy resource. GenomicStudy aims at delineating relevant information of a genomic study. A genomic study might comprise one or more analyses, each serving a specific purpose. These analyses may vary in method (e.g., karyotyping, CNV, or SNV detection), performer, software, devices used, or regions targeted.
Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
based-on | reference | Reference to the service request. | DiagnosticReport.basedOn (CarePlan, MedicationRequest, NutritionOrder, ServiceRequest, ImmunizationRecommendation) | |
category | token | Which diagnostic discipline/department created the report | DiagnosticReport.category | |
code | token | The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result | DiagnosticReport.code | 22 Resources |
conclusion | token | A coded conclusion (interpretation/impression) on the report | DiagnosticReport.conclusionCode | |
date | date | The clinically relevant time of the report | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | 26 Resources |
encounter | reference | The Encounter when the order was made | DiagnosticReport.encounter (Encounter) | 29 Resources |
identifier | token | An identifier for the report | DiagnosticReport.identifier | 65 Resources |
issued | date | When the report was issued | DiagnosticReport.issued | |
media | reference | A reference to the image source. | DiagnosticReport.media.link (DocumentReference) | |
patient | reference | The subject of the report if a patient | DiagnosticReport.subject.where(resolve() is Patient) (Patient) | 66 Resources |
performer | reference | Who is responsible for the report | DiagnosticReport.performer (Practitioner, Organization, CareTeam, PractitionerRole) | |
result | reference | Link to an atomic result (observation resource) | DiagnosticReport.result (Observation) | |
results-interpreter | reference | Who was the source of the report | DiagnosticReport.resultsInterpreter (Practitioner, Organization, CareTeam, PractitionerRole) | |
specimen | reference | The specimen details | DiagnosticReport.specimen (Specimen) | |
status | token | The status of the report | DiagnosticReport.status | |
study | reference | Studies associated with the diagnostic report | DiagnosticReport.study (GenomicStudy, ImagingStudy) | |
subject | reference | The subject of the report | DiagnosticReport.subject (Practitioner, Group, Organization, BiologicallyDerivedProduct, Device, Medication, Patient, Substance, Location) |