HL7 FHIR® US Core Implementation Guide (Release 3.0.1 STU3 Update for Comment)

This page is part of the US Core (v3.0.1: STU3 Ballot 3) based on FHIR R4. The current version which supercedes this version is 5.0.1. For a full list of available versions, see the Directory of published versions

StructureDefinition-us-core-diagnosticreport-note

This profile sets minimum expectations for searching and fetching Diagnostic Reports and Notes using the DiagnosticReport resource. This profile identifies the mandatory core elements, extensions, vocabularies and value sets which SHALL be present in the DiagnosticReport when using this profile. Prior to reviewing this profile, implementers are encouraged to read the Clinical Notes Guidance to understand the overlap of US Core DiagnosticReport Profile for Report and Note exchange and US Core DocumentReference Profile.

Example Usage Scenarios:

The following are example usage scenarios for the Diagnostic Report profile:

  • Query for a specific Radiology note (e.g. 84178-3 Interventional Radiology Note)
  • Query for category of reports (e.g. all Cardiology reports)

Mandatory and Must Support Data Elements

The following data-elements are mandatory (i.e data MUST be present) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each Diagnostic Report must have:

  1. a status
  2. a category
  3. a code describing the type of report
  4. a patient
  5. date and time the report was created

Each Diagnostic Report must support:

  1. the encounter the report occurred within
  2. instant the report was released
  3. an author (actor) producing the report
  4. an image
  5. a reference to the full report (presentedForm)

Profile specific implementation guidance:

  • See Clinical Notes Guidance
  • The DiagnosticReport.category binding must support at a minimum the US Core DiagnosticReport Category Codes of Cardiology, Radiology, and Pathology. Other categories may be supported.
  • A server will return how a customer has categorized their reports at a particular site. Categorization of reports is not consistent across sites. (e.g. a system may categorize an orthopedic note as cardiology.)

Examples

Formal Views of Profile Content

Description of Profiles, Differentials, and Snapshots.

The official URL for this profile is: http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-note

Published on Tue May 21 00:00:00 EDT 2019 as active by the HL7 US Realm Steering Committee.

This profile builds on DiagnosticReport


DiagnosticReport

Summary of the Mandatory Requirements

  1. A code in DiagnosticReport.status with a required binding to DiagnosticReportStatus
  2. One or more CodeableConcepts in DiagnosticReport.category with an extensible binding to US Core DiagnosticReport Category
  3. A CodeableConcept in DiagnosticReport.code with an extensible binding to US Core Diagnosticreport Report And Note Codes
  4. A Patient Reference in DiagnosticReport.subject
  5. A dateTime in DiagnosticReport.effective[x]

Summary of the Must Support Requirements

  1. A Encounter Reference in DiagnosticReport.encounter
  2. An instant in DiagnosticReport.issued
  3. One or more Performer References in DiagnosticReport.performer
  4. One or more Medias in DiagnosticReport.media
  5. One or more Attachments in DiagnosticReport.presentedForm
NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport I0..*US Core Diagnostic Report Profile for Report and Note exchange
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness identifier for report
... basedOn 0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)What was requested
... status ?!SΣ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... category SΣ1..*CodeableConceptService category
Binding: US Core DiagnosticReport Category (extensible)
... code SΣ1..1CodeableConceptUS Core Report Code
Binding: US Core Diagnosticreport Report And Note Codes (extensible)
... subject SΣ1..1Reference(US Core Patient Profile)The subject of the report - usually, but not always, the patient
... encounter SΣ0..1Reference(US Core Encounter Profile)Health care event when test ordered
... effective[x] SΣ1..1Time of the report or note
.... effectiveDateTimedateTime
.... effectivePeriodPeriod
... issued SΣ0..1instantDateTime this version was made
... performer SΣ0..*Reference(US Core Practitioner Profile | US Core Organization Profile)Responsible Diagnostic Service
... resultsInterpreter Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam)Primary result interpreter
... specimen 0..*Reference(Specimen)Specimens this report is based on
... result 0..*Reference(Observation)Observations
... imagingStudy 0..*Reference(ImagingStudy)Reference to full details of imaging associated with the diagnostic report
... media SΣI0..*BackboneElementKey images associated with this report
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... comment 0..1stringComment about the image (e.g. explanation)
.... link Σ1..1Reference(Media)Reference to the image source
... conclusion 0..1stringClinical conclusion (interpretation) of test results
... conclusionCode 0..*CodeableConceptCodes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example)
... presentedForm S0..*AttachmentEntire report as issued

doco Documentation for this format

DiagnosticReport

Summary of the Mandatory Requirements

  1. A code in DiagnosticReport.status with a required binding to DiagnosticReportStatus
  2. One or more CodeableConcepts in DiagnosticReport.category with an extensible binding to US Core DiagnosticReport Category
  3. A CodeableConcept in DiagnosticReport.code with an extensible binding to US Core Diagnosticreport Report And Note Codes
  4. A Patient Reference in DiagnosticReport.subject
  5. A dateTime in DiagnosticReport.effective[x]

Summary of the Must Support Requirements

  1. A Encounter Reference in DiagnosticReport.encounter
  2. An instant in DiagnosticReport.issued
  3. One or more Performer References in DiagnosticReport.performer
  4. One or more Medias in DiagnosticReport.media
  5. One or more Attachments in DiagnosticReport.presentedForm

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DiagnosticReport I0..*US Core Diagnostic Report Profile for Report and Note exchange
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness identifier for report
... basedOn 0..*Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)What was requested
... status ?!SΣ1..1coderegistered | partial | preliminary | final +
Binding: DiagnosticReportStatus (required)
... category SΣ1..*CodeableConceptService category
Binding: US Core DiagnosticReport Category (extensible)
... code SΣ1..1CodeableConceptUS Core Report Code
Binding: US Core Diagnosticreport Report And Note Codes (extensible)
... subject SΣ1..1Reference(US Core Patient Profile)The subject of the report - usually, but not always, the patient
... encounter SΣ0..1Reference(US Core Encounter Profile)Health care event when test ordered
... effective[x] SΣ1..1Time of the report or note
.... effectiveDateTimedateTime
.... effectivePeriodPeriod
... issued SΣ0..1instantDateTime this version was made
... performer SΣ0..*Reference(US Core Practitioner Profile | US Core Organization Profile)Responsible Diagnostic Service
... resultsInterpreter Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam)Primary result interpreter
... specimen 0..*Reference(Specimen)Specimens this report is based on
... result 0..*Reference(Observation)Observations
... imagingStudy 0..*Reference(ImagingStudy)Reference to full details of imaging associated with the diagnostic report
... media SΣI0..*BackboneElementKey images associated with this report
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... comment 0..1stringComment about the image (e.g. explanation)
.... link Σ1..1Reference(Media)Reference to the image source
... conclusion 0..1stringClinical conclusion (interpretation) of test results
... conclusionCode 0..*CodeableConceptCodes for the clinical conclusion of test results
Binding: SNOMEDCTClinicalFindings (example)
... presentedForm S0..*AttachmentEntire report as issued

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron


Quick Start

Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.

  • See the General Guidance section for additional rules and expectations when a server requires status parameters.
  • See the General Guidance section for additional guidance on searching for multiple patients.

Mandatory Search Parameters:

The following search parameters, search parameter combinations SHALL be supported. Any listed search parameter modifiers, comparators, chains and composites SHALL also be supported UNLESS they are listed as “optional” in which case they SHOULD be supported.:

  1. SHALL support searching using the combination of the patient and code search parameters:
    • including optional support for composite OR search on code (e.g.code={[system]}|[code],{[system]}|[code],...)

    GET [base]/DiagnosticReport?patient=[reference]&code={[system]}|[code]{,{[system]}|[code],...}

    Example:

    1. GET [base]/DiagnosticReport?patient=1032702&code=http://loinc.org|24323-8

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and report code(s). SHOULD support search by multiple report codes. (how to search by reference and how to search by token)

Optional Search Parameters:

The following search parameters, search parameter combinations and search parameter modifiers, comparators, chains and composites SHOULD be supported.

  1. SHOULD support searching using the combination of the patient and status search parameters:
    • including support for composite OR search on status (e.g.status={[system]}|[code],{[system]}|[code],...)

    GET [base]/DiagnosticReport?patient=[reference]&status={[system]}|[code]{,{[system]}|[code],...}

    Example:

    1. GET [base]/DiagnosticReport?patient=1137192&status=completed

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and status (how to search by reference and how to search by token)

  2. SHOULD support searching using the combination of the patient and category search parameters:

    GET [base]/DiagnosticReport?patient=[reference]&category={[system]}|[code]

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&category=http://loinc.org|LP29684-5

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and a category code specified in US Core DiagnosticReport Category Codes (how to search by reference and how to search by token)

  3. SHOULD support searching using the combination of the patient and category and date search parameters:
    • including support for these date comparators: gt,lt,ge,le
    • including optional support for composite AND search on date (e.g.date=[date]&date=[date]]&...)

    GET [base]/DiagnosticReport?patient=[reference]&category={[system]}|[code]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&category=http://loinc.org|LP29684-5&date=ge2010-01-14

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and date and a category code specified in US Core DiagnosticReport Category Codes (how to search by reference and how to search by token and how to search by date)

  4. SHOULD support searching using the combination of the patient and code and date search parameters:
    • including optional support for composite OR search on code (e.g.code={[system]}|[code],{[system]}|[code],...)
    • including support for these date comparators: gt,lt,ge,le
    • including optional support for composite AND search on date (e.g.date=[date]&date=[date]]&...)

    GET [base]/DiagnosticReport?patient=[reference]&code={[system]}|[code]{,{[system]}|[code],...}&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DiagnosticReport?patient=f201&code=http://loinc.org|24323-8&date=ge2019-01-14

    Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and date and report code(s). SHOULD support search by multiple report codes. (how to search by reference and how to search by token and how to search by date)