US Core Implementation Guide, published by HL7 International / Cross-Group Projects. This guide is not an authorized publication; it is the continuous build for version 8.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/US-Core/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-lab | Version: 8.0.0 | |||
Standards status: Trial-use | Computable Name: USCoreDiagnosticReportProfileLaboratoryReporting | |||
Other Identifiers: OID:2.16.840.1.113883.4.642.40.2.42.20 | ||||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License |
The US Core DiagnosticReport Profile for Laboratory Results Reporting inherits from the FHIR DiagnosticReport resource; refer to it for scope and usage definitions. Laboratory results are grouped and summarized using the DiagnosticReport resource, which typically references Observation resource(s). Each Observation resource represents an individual laboratory test and result value or component result values or a nested panel (such as a microbial susceptibility panel) that references other observations. Laboratory results can also be presented in report form or as free text. This profile sets minimum expectations for the DiagnosticReport resource to record, search, and fetch laboratory results associated with a patient. It specifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.
Example Usage Scenarios:
The following are example usage scenarios for the US Core DiagnosticReport Profile for Laboratory Results Reporting:
The following data elements must always be present (Mandatory definition) 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 Views below provides the formal summary, definitions, and terminology requirements.
Each DiagnosticReport Must Have:
*These elements have the following constraints: SHALL be present if status is 'partial', 'preliminary', 'final', 'amended', 'corrected', or 'appended'.
Each DiagnosticReport Must Support:
* see guidance below
Profile Specific Implementation Guidance:
*The profile elements DiagnosticReport.performer and DiagnosticReport.resultsInterpreter
communicate the individual level provenance author data corresponding to the U.S. Core Data for Interoperability (USCDI) Provenance Author Data Elements.
Meta.lastUpdated
SHOULD reflect:
Usage:
Changes since version 7.0.0:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.
Servers providing access to laboratory data SHALL support these US Core SMART Scopes:
<patient|user|system>/DiagnosticReport.rs
The following search parameters and search parameter combinations SHALL be supported:
SHALL support searching for all diagnosticreports for a patient using the patient
search parameter:
GET [base]/DiagnosticReport?patient={Type/}[id]
Example:
Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient (how to search by reference)
SHALL support searching using the combination of the patient
and category
search parameters:
GET [base]/DiagnosticReport?patient={Type/}[id]&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB
Example:
Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and a category code = LAB
(how to search by reference and how to search by token)
patient
and code
search parameters:
code
(e.g.code={system|}[code],{system|}[code],...
)GET [base]/DiagnosticReport?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}
Example:
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)
patient
and category
and date
search parameters:
date
comparators: gt,lt,ge,le
date
(e.g.date=[date]&date=[date]]&...
)GET [base]/DiagnosticReport?patient={Type/}[id]&category=http://terminology.hl7.org/CodeSystem/v2-0074|LAB&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and date and a category code = LAB
(how to search by reference and how to search by token and how to search by date)
The following search parameter combinations SHOULD be supported:
patient
and status
search parameters:
status
(e.g.status={system|}[code],{system|}[code],...
)GET [base]/DiagnosticReport?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}
Example:
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)
patient
and code
and date
search parameters:
code
(e.g.code={system|}[code],{system|}[code],...
)date
comparators: gt,lt,ge,le
date
(e.g.date=[date]&date=[date]]&...
)GET [base]/DiagnosticReport?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
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)
patient
and category
and _lastUpdated
search parameters:
_lastUpdated
comparators: gt,lt,ge,le
_lastUpdated
(e.g._lastUpdated=[date]&_lastUpdated=[date]]&...
)GET [base]/DiagnosticReport?patient={Type/}[id]&category={system|}[code]&_lastUpdated={gt|lt|ge|le}[date]{&_lastUpdated={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all DiagnosticReport resources for the specified patient and a category code = LAB
and _lastUpdated. See the US Core General Guidance page for Searching Using lastUpdated. (how to search by reference and how to search by token and how to search by date)