Skip to content
This repository has been archived by the owner on May 7, 2024. It is now read-only.

Commit

Permalink
Diagnostic report r4 docs migrate (#991)
Browse files Browse the repository at this point in the history
  • Loading branch information
kckeim authored Oct 30, 2023
1 parent 4e55c79 commit 4081090
Show file tree
Hide file tree
Showing 2 changed files with 105 additions and 55 deletions.
70 changes: 45 additions & 25 deletions content/millennium/r4/clinical/diagnostics/diagnostic-report.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,12 @@ title: DiagnosticReport | R4 API
{:toc}

## Overview
The DiagnosticReport resource typically provides a textual set of information and interpretation after performing a diagnostic service or procedure such as a Radiology or Pathology or Cardiology report. 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 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. 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 provides a set of information and interpretation following a diagnostic service or procedure such as a Radiology, Pathology, or Cardiology report. The DiagnosticReport resource will produce information about the diagnostic report itself, about the subject, and about the specimen of the report in the case of Laboratory tests. The information produced can include a mix of atomic results, textual reports, images, and codes, depending on the type(s) of diagnostic services being retrieved.

Report conclusions can be expressed as a simple text blob, structured coded data, or as an attached fully formatted report (such as a PDF).
This resource can retrieve reports of various `Status` types which may need to be considered for filtering purposes if only `Final` or `Corrected` results are desired for retrieval, or to exclude any results that were `Entered-in-Error`. See the `Status` field below for more detail.

In cases where results without textual reports are desired, such as General Laboratory or Vital Signs results, the [`Observation`](http://fhir.cerner.com/millennium/r4/clinical/diagnostics/observation/) resource should be used instead.

* The following [HL7® FHIR® US Core Implementation Guide STU 4.0.0](https://hl7.org/fhir/us/core/STU4/){:target="_blank"} Profiles are supported by this resource:

Expand Down Expand Up @@ -51,6 +56,11 @@ The following fields are returned if valued:

## Search

Search for DiagnosticReports that meet supplied query parameters:

GET /DiagnosticReport/?:parameters


### Authorization Types

<%= authorization_types(provider: true, patient: true, system: true) %>
Expand All @@ -61,47 +71,44 @@ The following fields are returned if valued:
------------------|-------------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------
`_id` | This or `patient` | [`token`] | The logical resource id associated with the resource. Example: `12345`
`patient` | This or `_id` | [`reference`] | The subject of the report if a patient. Example: `12345`
`encounter` | N | [`reference`] | The Encounter when the order was made. Must represent an Encounter resource. May include a single or comma separated list of references. Example: `encounter=1621910`
`date` | N | [`date`] | Date range into which the diagnostic report falls (effectiveDateTime). Either 1 or 2 date/time can be given. Example: `date=lt2017-01-5`
`_count` | N | [`number`] | The maximum number of results to return. Defaults to `10` and maximum `100` documents can be returned.
`category` | N | [`token`] | The diagnostic discipline/department created the report. Example: `{{*[http://loinc.org\\\|P7839-6* or +*LAB*(For micro/Gen lab reports)+}}\\|http://loinc.org/]`
`code` | N | [`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. Example: `*[http://loinc.org\\\|630-4*\\|http://loinc.org/]`
`_revinclude` | No | [`token`] | Provenance resource entries to be returned as part of the bundle. Example: `_revinclude=Provenance:target`
`encounter` | N | [`reference`] | The Encounter when the order was made. Must represent an Encounter resource. Example: `encounter=1621910`
`date` | N | [`date`] | Date range into which the diagnostic report falls (effectiveDateTime). Either 1 or 2 date/times can be given. Example: `date=ge2020-01-01T08:00:00.000Z&date=le2020-01-31T17:00:00.000Z`
`_count` | N | [`number`] | The maximum number of results to return. Defaults to `10` and a maximum of `100` documents can be returned.
`category` | N | [`token`] | The diagnostic discipline/department which created the report. Example: `http://terminology.hl7.org/CodeSystem/v2-0074|LAB` or `http://loinc.org|LP29684-5`
`code` | N | [`token`] | The specific code for describing the report. Example: `http://loinc.org|24323-8`
`_revinclude` | N | [`token`] | Provenance resource entries to be returned as part of the bundle. Example: `_revinclude=Provenance:target`

_Implementation Notes_

* When searching with the `date` parameter:
* It must be provided once or twice, with or without prefixes.
* If time is provided, it must be provided consistently.
* For a single `date` occurrence:
* It can be provided with a prefix to imply a date range, or without a prefix to search for report(s) last updated at a specific date/time.
* The `time` component is optional.
* For two `date` occurences:
* It must be provided with `le` or `lt` and `ge` or `gt` prefixes to search for report(s) within a specific range.
* The `time` component is required for both parameters.

* When searching with the `encounter` parameter:
* Patient level documents are filtered out from responses when the encounter id is zero/blank.
* May include a single value or comma separated list of references. Example `encounter=12345,67890`

* The `_revinclude` parameter may be provided once with the value `Provenance:target`. Example: `_revinclude=Provenance:target`

* The `_revinclude` parameter may be provided with the `_id/patient` parameter. Example: `_id=214938095&_revinclude=Provenance:target`
* When searching with the `_revinclude` parameter
* It may be provided once with the value `Provenance:target`. Example: `_revinclude=Provenance:target`
* It may be provided with the `_id` or `patient` parameters. Example: `_id=214938095&_revinclude=Provenance:target`

* When `_revinclude` is provided in a request to the closed endpoint, the OAuth2 token must include the `user/Provenance.read` scope. Currently `patient/Provenance.read` is not supported and hence `_revinclude` cannot be utilised for patient persona.

The common [errors] and [OperationOutcomes] may be returned.

[`token`]: https://hl7.org/fhir/R4/search.html#token
[`reference`]: https://hl7.org/fhir/R4/search.html#reference
[`date`]: https://hl7.org/fhir/R4/search.html#date
[`number`]: https://hl7.org/fhir/R4/search.html#number
[errors]: ../../#client-errors
[OperationOutcomes]: ../../#operation-outcomes
[Update documentation]: https://www.hl7.org/fhir/r4/http.html#update

### Headers

<%= headers %>

### Example
### Example Search by Patient with Category

#### Request

GET https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport?patient=12724066
GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport?patient=12724066&category=http://terminology.hl7.org/CodeSystem/v2-0074|RAD

#### Response

Expand All @@ -111,7 +118,7 @@ The common [errors] and [OperationOutcomes] may be returned.
<%= disclaimer %>


### Example with RevInclude
### Example Search by _id with RevInclude


### Authorization Types
Expand All @@ -137,7 +144,12 @@ The common [errors] and [OperationOutcomes] may be returned.

The common [errors] and [OperationOutcomes] may be returned.

## Retrieve by id
## Retrieve by ID

Retrieve an individual DiagnosticReport by its ID:

GET /DiagnosticReport/:ID


### Authorization Types

Expand All @@ -148,7 +160,7 @@ The common [errors] and [OperationOutcomes] may be returned.

<%= headers %>

### Example
### Example Single Retrieve by _ID

#### Request

Expand All @@ -164,3 +176,11 @@ The common [errors] and [OperationOutcomes] may be returned.
### Errors

The common [errors] and [OperationOutcomes] may be returned.

[`token`]: https://hl7.org/fhir/R4/search.html#token
[`reference`]: https://hl7.org/fhir/R4/search.html#reference
[`date`]: https://hl7.org/fhir/R4/search.html#date
[`number`]: https://hl7.org/fhir/R4/search.html#number
[errors]: ../../#client-errors
[OperationOutcomes]: ../../#operation-outcomes
[Update documentation]: https://www.hl7.org/fhir/r4/http.html#update
90 changes: 60 additions & 30 deletions lib/resources/example_json/r4_examples_diagnostic_report.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,38 +4,45 @@ module Cerner
module Resources
R4_DIAGNOSTIC_REPORT_SEARCH_BY_ID ||= {
"resourceType": 'Bundle',
"id": '2bae404f-007d-4abf-8552-6e540f0226b6',
"id": '4e95721b-490b-4c57-84f5-7d055a8a5dec',
"type": 'searchset',
"link": [
{
"relation": 'self',
"url": 'https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport?patient=12724066'
"url": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport?patient=12724066&category=http%3A%2F%2Fterminology.hl7.org%2FCodeSystem%2Fv2-0074%7CRAD'
},
{
"relation": 'next',
"url": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport?patient=12724066&category=http%3A%2F%2Fterminology.hl7.org%2FCodeSystem%2Fv2-0074%7CRAD&-pageContext=eJwdyk0KwjAURtG9fOME8jTNT8GJbqBQcVpCmtaCJJImKJTu3eLwHu4Gn2osaEkwjGFy9XXEBl_zmjJa3Lqclofsr59lpq7eSy8vYHi6dYjhe7wl18DwdnMYfIrlb2hO9mxISG61aLgkIbihMHIySupJKU3WYd9_FHYmXg%3D%3D&-pageDirection=NEXT'
}
],
"entry": [
{
"fullUrl": 'https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport/197480987',
"fullUrl": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport/197369077',
"resource": {
"resourceType": 'DiagnosticReport',
"id": '197480987',
"id": '197369077',
"meta": {
"versionId": '1',
"lastUpdated": '2021-05-11T18:17:17.000Z'
"lastUpdated": '2020-08-13T19:36:06.000Z'
},
"text": {
"status": 'generated',
"div": '<div xmlns="http://www.w3.org/1999/xhtml"><p><b>Diagnostic Report</b></p>'\
'<p><b>Patient</b>: Smart, Nancyu Nha Eeeeee</p><p><b>Status</b>: Partial</p>'\
'<p><b>Code</b>: Abdominal Ultrasound</p><p>'\
'<b>Effective End Date</b>: May 11, 2021 6:16 P.M. UTC</p></div>'
"div": '<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Diagnostic Report</b></p>'\
'<p><b>Patient</b>: Smart II, Nancy</p>'\
'<p><b>Document Title</b>: Some Title 4x</p>'\
'<p><b>Status</b>: Final</p>'\
'<p><b>Code</b>: Radiology Reports</p>'\
'<p><b>Effective End Date</b>: Aug 13, 2020 7:36 P.M. UTC</p>'\
'<p><b>Verifying Provider</b>: Portal, Portal</p></div>'
},
"identifier": [
{
"system": 'https://fhir.cerner.com/ceuuid',
"value": 'CE87caf4b7-9397-4667-9897-702218017c9e-197480987-2021051118171700'
"value": 'CE87caf4b7-9397-4667-9897-702218017c9e-197369077-2020081319360600'
}
],
"status": 'partial',
"status": 'final',
"category": [
{
"coding": [
Expand All @@ -52,40 +59,59 @@ module Resources
"coding": [
{
"system": 'https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72',
"code": '2820643',
"display": 'Abdominal Ultrasound',
"code": '63293819',
"display": 'Radiology Reports',
"userSelected": true
},
{
"system": 'http://loinc.org',
"code": '24558-9',
"code": '75490-3',
"userSelected": false
}
],
"text": 'Abdominal Ultrasound'
"text": 'Radiology Reports'
},
"subject": {
"reference": 'Patient/12724066',
"display": 'Smart, Nancyu Nha Eeeeee'
"display": 'Smart II, Nancy'
},
"encounter": {
"reference": 'Encounter/97953477'
},
"effectivePeriod": {
"end": '2021-05-11T18:16:00.000Z'
"end": '2020-08-13T19:36:00.000Z'
},
"issued": '2021-05-11T18:17:17Z',
"issued": '2020-08-13T19:36:06Z',
"performer": [
{
"reference": 'Practitioner/1',
"display": 'SYSTEM, SYSTEM Cerner'
"reference": 'Practitioner/12742069',
"display": 'Portal, Portal'
}
],
"resultsInterpreter": [
{
"reference": 'Practitioner/12742069',
"display": 'Portal, Portal'
}
],
"presentedForm": [
{
"extension": [
{
"valueCode": 'unsupported',
"url": 'http://hl7.org/fhir/StructureDefinition/data-absent-reason'
}
]
"contentType": 'application/pdf',
"url": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Binary/XR-197369077',
"title": 'Some Title 4x',
"creation": '2020-08-13T19:36:00.000Z'
},
{
"contentType": 'application/xml',
"url": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Binary/XML-197369077',
"title": 'Some Title 4x',
"creation": '2020-08-13T19:36:00.000Z'
},
{
"contentType": 'text/html',
"url": 'https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Binary/TR-197369077',
"title": 'Some Title 4x',
"creation": '2020-08-13T19:36:00.000Z'
}
]
},
Expand Down Expand Up @@ -165,12 +191,14 @@ module Resources
"issued": '2017-01-06T20:09:17Z',
"performer": [
{
"reference": 'Practitioner/11648064'
"reference": 'Practitioner/11648064',
"display": 'Model, User 437 Cerner'
}
],
"resultsInterpreter": [
{
"reference": 'Practitioner/11648064'
"reference": 'Practitioner/11648064',
"display": 'Model, User 437 Cerner'
}
],
"presentedForm": [
Expand Down Expand Up @@ -271,12 +299,14 @@ module Resources
"issued": '2017-01-06T20:09:17Z',
"performer": [
{
"reference": 'Practitioner/11648064'
"reference": 'Practitioner/11648064',
"display": 'Model, User 437 Cerner'
}
],
"resultsInterpreter": [
{
"reference": 'Practitioner/11648064'
"reference": 'Practitioner/11648064',
"display": 'Model, User 437 Cerner'
}
],
"presentedForm": [
Expand Down

0 comments on commit 4081090

Please sign in to comment.