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

Review and Updates to Goal #1027

Merged
merged 3 commits into from
Dec 15, 2023
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 22 additions & 31 deletions content/millennium/dstu2/care-provision/goal.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ title: Goal | DSTU 2 API

## Overview

The Goal resource describes intended objectives for a patient. A Goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A Goal may address preventative health or mitigation of a diagnosis or problem. Goals can be non-health care related (e.g. dance at a wedding).
The Goal resource describes intended objectives for a patient. A goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A goal may address preventative health or mitigation of a diagnosis or problem. Goals can be nonhealthcare related (for example, dance at a wedding).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The Goal resource describes intended objectives for a patient. A goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A goal may address preventative health or mitigation of a diagnosis or problem. Goals can be nonhealthcare related (for example, dance at a wedding).
The Goal resource describes intended objectives for a patient. A goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A goal may address preventative health or mitigation of a diagnosis or problem. Goals can be non-healthcare related (for example, dance at a wedding).


The following fields are returned if valued:

* [id](http://hl7.org/fhir/dstu2/resource-definitions.html#Resource.id){:target="_blank"}
* [Goal ID](http://hl7.org/fhir/dstu2/resource-definitions.html#Resource.id){:target="_blank"}
* [Subject (patient)](http://hl7.org/fhir/DSTU2/goal-definitions.html#Goal.subject){:target="_blank"}
* [Start date](http://hl7.org/fhir/DSTU2/goal-definitions.html#Goal.start_x_){:target="_blank"}
* [Target date](http://hl7.org/fhir/DSTU2/goal-definitions.html#Goal.target_x_){:target="_blank"}
Comment on lines +16 to 19
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https-ify, please - check field links + trailing file links in both files.

Expand All @@ -24,13 +24,19 @@ The following fields are returned if valued:
* [Author](http://hl7.org/fhir/DSTU2/goal-definitions.html#Goal.author){:target="_blank"}
* [Note](http://hl7.org/fhir/DSTU2/goal-definitions.html#Goal.note){:target="_blank"}

<%= disclaimer %>

### Errors

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

## Terminology Bindings

<%= terminology_table(:goal, :dstu2) %>

## Search

Search for Goals that meet supplied query parameters:
Search for goals that meet supplied query parameters.

GET /Goal?:parameters

Expand All @@ -40,18 +46,18 @@ Search for Goals that meet supplied query parameters:

### Parameters

Name | Required? | Type | Description
-------------------|------------------------------------------|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
`_id` | This, or one of `patient`, or `subject`. | [`token`] | The logical resource id associated with the Goal. Example: `_id=7891`
`patient` | This, or one of `_id`, or `subject`. | [`reference`] | The patient who has the goal. Example: `patient=12345`
`subject:Patient` | This, or one of `_id`, or `patient`. | [`reference`] | The subject who this goal is intended for. Must represent a Patient resource. May use the `:Patient` modifier. Example: `subject=Patient/12345` or `subject:Patient=12345`
`targetdate` | N | [`date`] | A date or date range from which to find Goals. Example: `targetdate=ge2016-10-01&targetdate=le2016-12-01`
Name | Required? | Type | Description
-------------------|------------------|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
`_id` | Conditionally | [`token`] | The logical resource ID associated with the goal. This parameter is required if `patient` or `subject` are not used. Example: `_id=7891`
`patient` | Conditionally | [`reference`] | The patient who has the goal. This parameter is required if `_id` or `subject` are not used. Example: `patient=12345`
`subject:Patient` | Condtionally | [`reference`] | The subject who this goal is intended for. Must represent a Patient resource. May use the `:Patient` modifier. This parameter is required if `_id` or `patient` are not used. Example: `subject=Patient/12345` or `subject:Patient=12345`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should remove the modifier on the field name, since it is not required and is included in the description and examples.

also, pluralize "Example:"

`targetdate` | No | [`date`] | A date or date range from which to find goals. Example: `targetdate=ge2016-10-01&targetdate=le2016-12-01`

Notes:

- The `_id` parameter may not be provided at the same time as the `patient`, `subject`, or `targetdate` parameters.

- The `targetdate` parameter may be provided once with a prefix to imply a date range or without a prefix to search for goals at a specific date. Alternately it may be provided twice with `le`, `lt`, `ge`, or `gt` prefixes to search for goals within specific range. The date and prefix pairs must create a closed range.
* The `targetdate` parameter:
* May be provided once with a prefix to imply a date range or without a prefix to search for goals at a specific date.
* Alternatively, it may be provided twice with `le`, `lt`, `ge`, or `gt` prefixes to search for goals within a specific range. The date and prefix pairs must create a closed range.

### Headers

Expand All @@ -68,10 +74,7 @@ Notes:
<%= headers status: 200 %>
<%= json(:dstu2_goal_bundle) %>

<%= disclaimer %>


### Example Search by Id
### Example Search by ID

#### Request

Expand All @@ -82,17 +85,11 @@ Notes:
<%= headers status: 200 %>
<%= json(:dstu2_goal_bundle_by_id) %>

<%= disclaimer %>

### Errors

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

## Retrieve by id
## Retrieve by ID

List an individual Goal by its id:
List an individual goal by its ID.

GET /Goal/:id
GET /Goal/:ID

### Authorization Types

Expand All @@ -113,12 +110,6 @@ List an individual Goal by its id:
<%= headers status: 200 %>
<%= json(:dstu2_goal) %>

<%= disclaimer %>

### Errors

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

[`date`]: http://hl7.org/fhir/dstu2/search.html#date
[`reference`]: http://hl7.org/fhir/DSTU2/search.html#reference
[`token`]: http://hl7.org/fhir/DSTU2/search.html#token
Expand Down
102 changes: 37 additions & 65 deletions content/millennium/r4/clinical/care-provision/goal.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,22 @@ title: Goal | R4 API

## Overview

The Goal resource describes intended objectives for a patient. A Goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A Goal may address preventative health or mitigation of a diagnosis or problem. Goals can be non-health care related (e.g. dance at a wedding).
The Goal resource describes intended objectives for a patient. A goal is typically expressed as a desired outcome or health state to be achieved by a patient over a period or at a specific point in time. A goal may address preventative health or mitigation of a diagnosis or problem. Goals can be nonhealthcare related (for example, dance at a wedding).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same fix needed on both resources, as Aaron mentioned.
nonhealthcare -> non-healthcare


* The following [HL7® FHIR® US Core Implementation Guide STU 4.0.0](https://hl7.org/fhir/us/core/STU4/) Profiles are supported by this resource:
* This resource supports the following [HL7 FHIR US Core Implementation Guide STU 4.0.0](https://hl7.org/fhir/us/core/STU4/) profiles:

* [US Core Goal Profile](http://hl7.org/fhir/us/core/STU4/StructureDefinition-us-core-goal.html)

The following fields are returned if valued:

* [Goal id](http://hl7.org/fhir/r4/resource-definitions.html#Resource.id){:target="_blank"}
* [Goal ID](http://hl7.org/fhir/r4/resource-definitions.html#Resource.id){:target="_blank"}
* [Lifecycle Status](http://hl7.org/fhir/r4/goal-definitions.html#Goal.lifecycleStatus){:target="_blank"}
* [Achievement Status](http://hl7.org/fhir/r4/goal-definitions.html#Goal.achievementStatus){:target="_blank"}
* [Category](http://hl7.org/fhir/r4/goal-definitions.html#Goal.category){:target="_blank"}
* [Description](http://hl7.org/fhir/r4/goal-definitions.html#Goal.description){:target="_blank"}
* [Subject (patient)](http://hl7.org/fhir/r4/goal-definitions.html#Goal.subject){:target="_blank"}
* [Start Date](http://hl7.org/fhir/r4/goal-definitions.html#Goal.start_x_){:target="_blank"}
* [Target Due (Date only)](http://hl7.org/fhir/r4/goal-definitions.html#Goal.target.due_x_){:target="_blank"}
* [Target Due](http://hl7.org/fhir/r4/goal-definitions.html#Goal.target.due_x_){:target="_blank"}
* [Status Date](http://hl7.org/fhir/r4/goal-definitions.html#Goal.statusDate){:target="_blank"}
* [Expressed By](http://hl7.org/fhir/r4/goal-definitions.html#Goal.expressedBy){:target="_blank"}
* [Reference](http://hl7.org/fhir/r4/references.html#Reference){:target="_blank"} ([Patient](http://hl7.org/fhir/r4/patient.html){:target="_blank"} \| [Practitioner](http://hl7.org/fhir/r4/practitioner.html){:target="_blank"} \| [Related Person](http://hl7.org/fhir/r4/relatedperson.html){:target="_blank"})
Expand All @@ -35,13 +35,19 @@ The following fields are returned if valued:
* [Text](http://hl7.org/fhir/r4/datatypes-definitions.html#Annotation.text){:target="_blank"}
* [Time](http://hl7.org/fhir/r4/datatypes-definitions.html#Annotation.time){:target="_blank"}

<%= disclaimer %>

### Errors

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

## Terminology Bindings

<%= terminology_table(:goal, :r4) %>

## Search

Search for Goals that meet supplied query parameters:
Search for goals that meet supplied query parameters.

GET /Goal?:parameters

Expand All @@ -53,43 +59,37 @@ Search for Goals that meet supplied query parameters:

Name | Required? | Type | Description
-------------------|----------------------------|---------------|---------------------------------------------------------------------------------------------------------------
`_id` | This, or patient. | [`token`] | The logical resource id associated with the Goal. Example: `_id=7891`
`patient` | This, or _id. | [`reference`] | The patient who has the goal. Example: `patient=12345`
`target-date` | N | [`date`] | A date or date range from which to find Goals. Example: `target-date=ge2016-10-01&target-date=le2016-12-01`
`_id` | Conditionally | [`token`] | The logical resource ID associated with the goal. This parameter is required if `patient` is not used. Example: `_id=7891`
`patient` | Conditionally | [`reference`] | The patient who has the goal. This parameter is required if `_id` is not used. Example: `patient=12345`
`target-date` | No | [`date`] | A date or date range from which to find goals. Example: `target-date=ge2016-10-01&target-date=le2016-12-01`
`_revinclude` | No | [`token`] | Provenance resource entries to be returned as part of the bundle. Example:_revinclude=Provenance:target

Notes:

- The `_id` parameter may not be provided at the same time as the `patient` or `target-date`

- The `target-date` parameter may be provided once with a prefix to imply a date range or without a prefix to search for goals at a specific date. Alternately it may be provided twice with `le`, `lt`, `ge`, or `gt` prefixes to search for goals within specific range. The date and prefix pairs must create a closed range.

- 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=178866310&_revinclude=Provenance:target`

- When `_revinclude` is provided in a request to the closed endpoint, the OAuth2 token must include the scope corresponding to the Authorization Type, such as `user/Provenance.read`, `patient/Provenance.read` or `system/Provenance.read`.
* The `target-date` parameter:
* May be provided once with a prefix to imply a date range or without a prefix to search for goals at a specific date.
* Alternatively, it may be provided twice with `le`, `lt`, `ge`, or `gt` prefixes to search for goals within a specific range. The date and prefix pairs must create a closed range.
* The `_revinclude` parameter:
* May be provided once with the `Provenance:target` value. Example: `_revinclude=Provenance:target`
* May be provided with the `_id/patient` parameter. Example: `_id=178866310&_revinclude=Provenance:target`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

split _id and patient into two coded fields

* If 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; hence, `_revinclude` cannot be used for patient persona.


### Headers

<%= headers %>

### Example with RevInclude

### Authorization Types

<%= authorization_types(provider: true, system: true) %>
### Example Search by ID

#### Request

GET https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?_id=498290085&_revinclude=Provenance:target
GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?_id=187042107

#### Response

<%= headers status: 200 %>
<%= json(:r4_goal_revinclude_bundle) %>
<%= disclaimer %>
<%= json(:r4_goal_bundle_by_id) %>


### Example Search by Patient

Expand All @@ -102,34 +102,31 @@ Notes:
<%= headers status: 200 %>
<%= json(:r4_goal_bundle) %>

<%= disclaimer %>


### Example Search by Id
### Example Search by Patient and Target Date

#### Request

GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?_id=187042107
GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?patient=12724069&target-date=gt2021-01-12

#### Response

<%= headers status: 200 %>
<%= json(:r4_goal_bundle_by_id) %>
<%= json(:r4_goal_bundle_by_date) %>

<%= disclaimer %>
### Example with RevInclude

### Example Search by Patient and Target Date
### Authorization Types

<%= authorization_types(provider: true, system: true) %>

#### Request

GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?patient=12724069&target-date=gt2021-01-12
GET https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal?_id=498290085&_revinclude=Provenance:target
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's be consistent on open vs ehr


#### Response

<%= headers status: 200 %>
<%= json(:r4_goal_bundle_by_date) %>

<%= disclaimer %>
<%= json(:r4_goal_revinclude_bundle) %>

#### Patient Authorization Request

Expand All @@ -140,17 +137,11 @@ Notes:
<%= headers status: 200 %>
<%= json(:r4_goal_patient_bundle) %>

<%= disclaimer %>

### Errors

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

## Retrieve by id
## Retrieve by ID

List an individual Goal by its id:
List an individual goal by its ID.

GET /Goal/:id
GET /Goal/:ID
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is fine to be lowercase since it references the field value


### Authorization Types

Expand All @@ -171,19 +162,6 @@ List an individual Goal by its id:
<%= headers status: 200 %>
<%= json(:r4_goal) %>

<%= disclaimer %>

#### Patient Authorization Request

GET https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal/187042107

#### Response

<%= headers status: 200 %>
<%= json(:r4_goal) %>

<%= disclaimer %>

#### Patient Authorization Request For Entered in Error Status

GET https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Goal/187042111
Expand All @@ -193,12 +171,6 @@ List an individual Goal by its id:
<%= headers status: 200 %>
<%= json(:r4_goal_entered_in_error_status) %>

<%= disclaimer %>

### Errors

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

[`date`]: http://hl7.org/fhir/r4/search.html#date
[`reference`]: http://hl7.org/fhir/r4/search.html#reference
[`token`]: http://hl7.org/fhir/r4/search.html#token
Expand Down
Loading