From 53fba86f3eec4bbfd1509d8b51fae5ba5e288985 Mon Sep 17 00:00:00 2001 From: Aaron McGinn Date: Thu, 14 Dec 2023 16:25:06 -0600 Subject: [PATCH 1/4] formatting and stnadard updates --- .../millennium/r4/base/individuals/patient.md | 165 ++++++++---------- lib/resources/r4/patient.yaml | 24 +-- 2 files changed, 80 insertions(+), 109 deletions(-) diff --git a/content/millennium/r4/base/individuals/patient.md b/content/millennium/r4/base/individuals/patient.md index c75430f2a..13915ff15 100644 --- a/content/millennium/r4/base/individuals/patient.md +++ b/content/millennium/r4/base/individuals/patient.md @@ -9,34 +9,39 @@ title: Patient | R4 API ## Overview -The Patient Resource provides general demographic information about a person receiving health care services from a specific organization. Common demographic fields include patient id, patient name, gender, date of birth, address, phone, primary language and marital status. Additional concepts returned as extensions and not part of the base resource include time of birth, preferred contact, race, ethnicity and birth sex. Cerner Millennium is a patient centric application: thus, many of the other resources will include the patient id in their queries. A person receiving care from multiple organizations may have data available in multiple patient resources in multiple FHIR servers. +The Patient Resource provides general demographic information about a person receiving health care services from a specific organization. Common demographic fields include patient ID, patient name, gender, date of birth, address, phone, primary language and marital status. Additional concepts returned as extensions and not part of the base resource include time of birth, preferred contact, race, ethnicity and birth sex. Cerner Millennium is a patient centric application: thus, many of the other resources will include the patient ID in their queries. A person receiving care from multiple organizations may have data available in multiple patient resources in multiple FHIR servers. -* 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: +* The following [US Core Implementation Guide](https://hl7.org/fhir/us/core/STU4/){:target="_blank"} profiles are supported by this resource: - * [US Core Patient Profile](http://hl7.org/fhir/us/core/STU4/StructureDefinition-us-core-patient.html){:target="_blank"} + * [US Core Patient Profile](https://hl7.org/fhir/us/core/STU4/StructureDefinition-us-core-patient.html){:target="_blank"} The following fields are returned if valued: -* [Patient id](https://hl7.org/fhir/R4/resource-definitions.html#Resource.id){:target="_blank"} -* [Patient Identifier](https://hl7.org/fhir/R4/patient-definitions.html#Patient.identifier){:target="_blank"} +* [Patient ID](https://hl7.org/fhir/R4/resource-definitions.html#Resource.id){:target="_blank"} +* [Identifiers](https://hl7.org/fhir/R4/patient-definitions.html#Patient.identifier){:target="_blank"} * [Active](https://hl7.org/fhir/R4/patient-definitions.html#Patient.active){:target="_blank"} -* [Patient name](https://hl7.org/fhir/R4/patient-definitions.html#Patient.name){:target="_blank"} -* [Telecom Information (may include phone and email)](https://hl7.org/fhir/R4/patient-definitions.html#Patient.telecom){:target="_blank"} -* [Gender (administrative)](https://hl7.org/fhir/R4/patient-definitions.html#Patient.gender){:target="_blank"} -* [Extensions including birth time, preferred contact, birth sex, ethnicity, communication preference and race](#extensions){:target="_blank"} +* [Name](https://hl7.org/fhir/R4/patient-definitions.html#Patient.name){:target="_blank"} +* [Telecom](https://hl7.org/fhir/R4/patient-definitions.html#Patient.telecom){:target="_blank"} +* [Gender](https://hl7.org/fhir/R4/patient-definitions.html#Patient.gender){:target="_blank"} +* [Extensions](#extensions) * [Date of Birth]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.birthDate){:target="_blank"} * [Deceased]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.deceased_x_){:target="_blank"} - * [Boolean](https://hl7.org/fhir/R4/datatypes.html#boolean){:target="_blank"} - * [dateTime](https://hl7.org/fhir/R4/datatypes.html#dateTime){:target="_blank"} * [Address]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.address){:target="_blank"} * [Marital status]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.maritalStatus){:target="_blank"} -* [Multiple Birth Information]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.multipleBirth_x_){:target="_blank"} - * [Boolean](https://hl7.org/fhir/R4/datatypes.html#boolean){:target="_blank"} - * [Integer](https://hl7.org/fhir/R4/datatypes.html#integer){:target="_blank"} -* [Contact person (guardian, parent or emergency)]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.contact){:target="_blank"} -* [Communication (preferred language)]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.communication){:target="_blank"} +* [Multiple Birth information]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.multipleBirth_x_){:target="_blank"} +* [Contact person](https://hl7.org/fhir/R4/patient-definitions.html#Patient.contact){:target="_blank"} +* [Communication]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.communication){:target="_blank"} * [Primary Care Providers]( https://hl7.org/fhir/R4/patient-definitions.html#Patient.generalPractitioner){:target="_blank"} - * [Reference](http://hl7.org/fhir/r4/references.html#Reference){:target="_blank"} ([Practitioner](http://hl7.org/fhir/r4/practitioner.html){:target="_blank"}) + +_Notes_ + +* Direct secure email will not be returned. + +<%= disclaimer %> + +### Errors + +The common [errors] and [OperationOutcomes] may be returned. In addition, a `422 - Unprocessable Entity` will be returned when more than 1,000 patients qualify for the search criteria. ## Terminology Bindings @@ -57,52 +62,44 @@ Search for Patients that meet supplied query parameters: GET /Patient?:parameters -_Implementation Notes_ - -* Direct secure email will not be returned. -* [Patient.identifier.use](https://hl7.org/fhir/R4/datatypes-definitions.html#Identifier.use){:target="_blank"} will have a value of 'usual' - ### Authorization Types <%= authorization_types(provider: true, patient: true, system: true) %> ### Parameters - Name | Required? | Type | Description -----------------------|----------------------------------------------|------------|-------------------------------------------------------------------------- - `_id` | This, or any other required search parameter | [`token`] | The logical resource id associated with the resource. - `identifier` | This and/or any other search param, or `_id` | [`token`] | A patient identifier. Example: `urn:oid:1.1.1.1.1.1|1022228` - `name` | This and/or any other search param, or `_id` | [`string`] | The start of either family or given name of the patient. Example: `John` - `family` | This and/or any other search param, or `_id` | [`string`] | The start of the family name of the patient. Example: `Smith` - `given` | This and/or any other search param, or `_id` | [`string`] | The start of the given name of the patient. Example: `John` - `birthdate` | This and/or any other search param, or `_id` | [`date`] | The patient's date of birth. Example: `1990-01-01` - `phone` | This and/or any other search param, or `_id` | [`token`] | The patient's phone number. Example: `1234567891` - `email` | This and/or any other search param, or `_id` | [`token`] | The patient's email address. Example: `example@example.com` - `address-postalcode` | This and/or any other search param, or `_id` | [`string`] | The postal code in the address details of the patient. Example: `12345` - `gender` | No | [`token`] | The gender of the patient. Example: `male` - [`_count`] | No | [`number`] | The maximum number of results to return. Defaults to `20`. - `_revinclude` | No | [`token`] | Provenance resource entries to be returned as part of the bundle. Example:_revinclude=Provenance:target +| Name | Required? | Type | Description | +|----------------------|---------------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `_id` | Conditionally | [`token`] | The logical resource ID associated with the resource. This parameter is required if at least one of `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, `email`, or `address-postalcode` is not used. Example: `11111111` | +| `identifier` | Conditionally | [`token`] | A patient identifier. This parameter is required if `_id`, `name`, `family`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `urn:oid:1.1.1.1.1.1\|1022228` | +| `name` | Conditionally | [`string`] | The start of either family or given name of the patient.This parameter is required if `_id`, `identifier`, `family`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Pete` | +| `family` | Conditionally | [`string`] | The start of the family name of the patient. This parameter is required if `_id`, `identifier`, `name`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Adam` | +| `given` | Conditionally | [`string`] | The start of the given name of the patient. This parameter is required if `_id`, `identifier`, `name`, `family`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Tim` | +| `birthdate` | Conditionally | [`date`] | The patient's date of birth. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `phone`, `email`, and `address-postalcode` are not used. Example: `1961-01-16` | +| `phone` | Conditionally | [`token`] | The patient's phone number. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `birthdate`, `email`, and `address-postalcode` are not used. Example: `1111111111` | +| `email` | Conditionally | [`token`] | The patient's email address. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, and `address-postalcode` are not used. Example: `example@example.com` | +| `address-postalcode` | Conditionally | [`string`] | The postal code in the address details of the patient. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, and `email` are not used. Example: `11111` | +| `gender` | No | [`token`] | The administrative gender of the patient. Example: `male` | +| [`_count`] | No | [`number`] | The maximum number of results to return. Defaults to `20`. | +| `_revinclude` | No | [`token`] | Provenance resource entries to be returned as part of the bundle. Example:`_revinclude=Provenance:target` | Notes: -* Either the `_id`, or a combination of `identifier` , `birthdate`, `name`, `given`, `family`, `address-postalcode`, `phone`, or `email` parameters must be provided. -* The `gender` parameter may only be provided if at least one of `identifier` , `birthdate`, `name`, `given`, `family`, `address-postalcode`, `phone`, or `email` parameters is provided. -* The `name`, `family`, and `given` parameters support the ':exact' modifier and will search for current names only. -* It is not recommended to combine `family` or `given` parameters with `name` parameter when searching for a patient. Whenever possible use the ':exact' modifier. +* A `422 - Unprocessable Entity` will be returned when more than 1,000 patients qualify for the search criteria. +* The `name`, `family`, and `given` parameters support the [`:exact`] modifier and will search for current names only, based on the name's `period`. +* It is not recommended to combine `family` or `given` parameters with the `name` parameter when searching for a patient. Whenever possible use the `:exact` modifier. * The `identifier`, `name`, `family`, `given`, `phone`, `email`, `address-postalcode`, or `gender` parameters may be provided exactly once and may have only a single value. * The `birthdate` parameter - * May be provided twice using the prefixes `le` and `ge` to indicate a date range * May be provided once using one of the following prefixes to imply a date range: `ge`, `le`, `gt`, `lt`, `eq` + * May be provided twice to indicate a date range and must contain one prefix each of `le` and `ge`. Example: `birthdate=ge2001-03-13&birthdate=le2001-05-01` * Must not be provided with a time component * The `identifier` parameter - * Code details are required. System is optional. If system is not provided, search is performed across all systems supported by the - Patient resource. - * When valid system is provided, search is performed against the specific system. - -* The `_revinclude` parameter may be provided once with the value `Provenance:target`. Example: `_revinclude=Provenance:target` -* The `_revinclude` parameter may be provided with any required search param. Example: `_id=629928&_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`. -* FHIR does not return the SSN. It can be passed in as a query parameter but it won't come back in the JSON response. + * Requires a code, but the system is optional. If the system is not provided, the search is performed across all systems supported by the Patient resource. + * Searches against the specific system, if it is provided. + * Accepts a Social Security Number (SSN), but the value will not be returned in a matching response. +* The `_revinclude` parameter + * May be provided once with the value `Provenance:target`. Example: `_revinclude=Provenance:target` + * Requires the OAuth2 token to include the Provenance scope corresponding to the current Patient scope, such as `user/Provenance.read`, `patient/Provenance.read` or `system/Provenance.read`. ### Headers @@ -112,7 +109,7 @@ Notes: #### Request - GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Patient?_id=12724067 + GET https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Patient?family=smart&given=joe&birthdate=1990-09-15 #### Response @@ -133,23 +130,13 @@ Notes: <%= headers status: 200 %> <%= json(:r4_patient_revinclude_bundle) %> -<%= disclaimer %> -### Errors - -The common [errors] and [OperationOutcomes] may be returned. In addition, a `422 Unprocessable Entity` will be returned when too many (>1000) patients qualify for the search criteria. +## Retrieve by ID -## Retrieve by id - -List an individual Patient by its id: +List an individual patient by their ID: GET /Patient/:id -_Implementation Notes_ - -* Direct secure email will not be returned. -* [Patient.identifier.use](https://hl7.org/fhir/R4/datatypes-definitions.html#Identifier.use){:target="_blank"} will have a value of 'usual' - ### Authorization Types <%= authorization_types(provider: true, patient: true, system: true) %> @@ -171,12 +158,10 @@ _Implementation Notes_ ### Patient Combines Example -Cerner Millennium supports the ability to logically merge a patient record into another patient record when both records are describing the same patient. This is known -as a "patient combine". If necessary, this merging can later be undone by performing a "patient uncombine". When the requested patient record has been combined into another -record, an inactive Patient entry will be returned which has a link to the current Patient entry. Entries for combined patients will only be returned when retrieving -the entries directly by id. They will not be returned when searching with other parameters. - -The ability to perform patient combine or uncombine operations is not available through the Cerner Ignite platform. +Oracle Health Millennium Platform supports the ability to logically merge a patient record into another patient record when both records are describing the same patient. This is known +as a patient combine. If necessary, this merging can later be undone by performing a patient uncombine. When the requested patient record has been combined into another +record, an inactive patient entry will be returned, which has a link to the current patient entry. Entries for combined patients will only be returned when retrieving +the entries directly by ID. They will not be returned when searching with other parameters. #### Request @@ -187,21 +172,12 @@ The ability to perform patient combine or uncombine operations is not available <%= headers status: 200 %> <%= json(:r4_combined_patient_entry) %> -### Errors - -The common [errors] and [OperationOutcomes] may be returned. - ## Create -Create a new Patient. +Create a new patient. POST /Patient -_Implementation Notes_ - -* Only the body fields mentioned below are supported. Unsupported fields will be ignored. -* Modifier fields should not be provided, and will cause the transaction to fail. - ### Authorization Types <%= authorization_types(provider: true, system: true) %> @@ -211,9 +187,9 @@ _Implementation Notes_ <%= headers head: {Authorization: '<OAuth2 Bearer Token>', Accept: 'application/fhir+json', 'Content-Type': 'application/fhir+json'} %> ### Body Fields +_Notes_ -Notes: - +* Only the body fields mentioned below are supported. Unsupported fields are ignored. * Birth Sex, Ethnicity, and Race may be recorded as extensions. <%= definition_table(:patient, :create, :r4) %> @@ -240,26 +216,24 @@ Etag: W/"0" Location: https://fhir-ehr-code.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Patient/5786010 Last-Modified: Wed, 27 Mar 2019 17:23:14 GMT Vary: Origin -X-Request-Id: 11111111111111111111111111111111 +X-Request-Id: 6aa99cae-2ee5-4529-8cb2-1aa73f818207 +opc-request-id: /4B7BCF043117301F1B647EF553C7F250/A326F573558AD7570F63BFC19D88739A The `ETag` response header indicates the current `If-Match` version to use on subsequent updates. -### Errors - -The common [errors] and [OperationOutcomes] may be returned. - ## Patch Patch an existing Patient. PATCH /Patient/:id -_Implementation Notes_ +_Notes_ -* This implementation follows the [JSON PATCH](https://tools.ietf.org/html/rfc6902) spec. +* This implementation follows RFC 6902 [JSON Patch](https://tools.ietf.org/html/rfc6902). * Only operations on the paths listed below are supported. -* When a path includes `{index}`, it refers to the index of the element in the list of elements. The indexes here are 0 based. +* When a path includes `{index}`, it refers to the index of the element in the list of elements. +* All indexes are 0 based. ### Authorization Types @@ -295,15 +269,12 @@ Date: Wed, 27 Mar 2019 17:23:14 GMT Etag: W/"1" Last-Modified: Wed, 27 Mar 2019 17:23:14 GMT Vary: Origin -X-Request-Id: 81c05ba01b2c19e5bf421449ff8e97eb +X-Request-Id: 02352eda-9574-4f23-9ab7-5915d5b09627 +opc-request-id: /4B7BCF043117301F1B647EF553C7F250/A326F573558AD7570F63BFC19D88739A The `ETag` response header indicates the current `If-Match` version to use on subsequent updates. -### Errors - -The common [errors] and [OperationOutcomes] may be returned. - ## Operation: $health-cards-issue Issues Health Cards for an existing Patient. @@ -312,11 +283,11 @@ Issues Health Cards for an existing Patient. See [Health Cards] documentation for more details about this operation. -[`_count`]: http://hl7.org/fhir/R4/search.html#count +[`_count`]: https://hl7.org/fhir/R4/search.html#count [`date`]: https://hl7.org/fhir/R4/search.html#date -[`number`]: http://hl7.org/fhir/R4/search.html#number +[`number`]: https://hl7.org/fhir/R4/search.html#number [`string`]: https://hl7.org/fhir/R4/search.html#string -[`token`]: http://hl7.org/fhir/R4/search.html#token +[`token`]: https://hl7.org/fhir/R4/search.html#token [errors]: ../../../#client-errors [OperationOutcomes]: ../../../#operation-outcomes [Patient Birth Time]: https://hl7.org/fhir/R4/extension-patient-birthtime.html @@ -325,4 +296,4 @@ See [Health Cards] documentation for more details about this operation. [US Core Ethnicity]: https://hl7.org/fhir/us/core/StructureDefinition-us-core-ethnicity.html [US Core Birth Sex]: https://hl7.org/fhir/us/core/StructureDefinition-us-core-birthsex.html [Communication Preference]: https://fhir-ehr.cerner.com/r4/StructureDefinition/communication-preference?_format=json -[Health Cards]: /millennium/r4/foundation/other/health-cards/ +[Health Cards]: ../../foundation/other/health-cards diff --git a/lib/resources/r4/patient.yaml b/lib/resources/r4/patient.yaml index b8ea0bbfd..5efbf0096 100644 --- a/lib/resources/r4/patient.yaml +++ b/lib/resources/r4/patient.yaml @@ -11,7 +11,7 @@ fields: - name: type type: CodeableConcept description: The type for the identifier that can be used to determine which identifier to use for a specific purpose. - url: http://hl7.org/fhir/r4/datatypes-definitions.html#Identifier.type + url: https://hl7.org/fhir/r4/datatypes-definitions.html#Identifier.type action: terminology binding: description: The type used to determine which identifier to use for a specific purpose. @@ -102,7 +102,7 @@ fields: "resourceType": "Patient" } note: resourceType must be Patient. - url: http://hl7.org/fhir/R4/json.html#resources + url: https://hl7.org/fhir/R4/json.html#resources - name: identifier required: 'Yes' @@ -150,7 +150,7 @@ fields: - url: http://hl7.org/fhir/R4/datatypes.html#Identifier + url: https://hl7.org/fhir/R4/datatypes.html#Identifier - name: active required: 'No' @@ -162,7 +162,7 @@ fields: "active": true } note: If set, value must be true. - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.active + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.active - name: name required: 'Yes' @@ -212,7 +212,7 @@ fields:
  • The `family` field has a character limit of 100.
  • Each value for the `given`, `prefix`, and `suffix` fields has a character limit of 100.
  • - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.name + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.name - name: telecom required: 'No' @@ -246,7 +246,7 @@ fields:
  • When specifying an `extension`, the `system` field must be 'phone'.
  • When specifying an `extension`, the `extension.url` field must be 'http://hl7.org/fhir/StructureDefinition/contactpoint-extension'.
  • - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.telecom + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.telecom - name: gender required: 'No' @@ -257,7 +257,7 @@ fields: { "gender": "male" } - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.gender + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.gender - name: birthDate required: 'No' @@ -268,7 +268,7 @@ fields: { "birthDate": "1990-09-15" } - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.birthDate + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.birthDate - name: address required: 'No' @@ -305,7 +305,7 @@ fields:
  • The `city`, `district`, `state`, and `country` fields have a character limit of 100.
  • The `postalCode` field has a character limit of 25.
  • - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.address + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.address - name: maritalStatus required: 'No' @@ -325,7 +325,7 @@ fields: "text": "Never Married" } } - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.maritalStatus + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.maritalStatus - name: communication required: 'No' @@ -351,7 +351,7 @@ fields: ] } note: Only one communication may be provided. - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.communication + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.communication - name: generalPractitioner required: 'No' @@ -367,7 +367,7 @@ fields: ] } note: Must only include references to Practitioners. - url: http://hl7.org/fhir/R4/patient-definitions.html#Patient.generalPractitioner + url: https://hl7.org/fhir/R4/patient-definitions.html#Patient.generalPractitioner - name: US Core Birth Sex Extension required: 'No' From 0a8ade1524a443274e4716a5420519da02fa70ff Mon Sep 17 00:00:00 2001 From: Aaron McGinn Date: Thu, 14 Dec 2023 16:56:00 -0600 Subject: [PATCH 2/4] removed duplicate note; added 'rank' on patch telecom-add, per request --- content/millennium/r4/base/individuals/patient.md | 2 +- lib/resources/r4/patient_patch.yaml | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/content/millennium/r4/base/individuals/patient.md b/content/millennium/r4/base/individuals/patient.md index 13915ff15..84fe4aca2 100644 --- a/content/millennium/r4/base/individuals/patient.md +++ b/content/millennium/r4/base/individuals/patient.md @@ -41,7 +41,7 @@ _Notes_ ### Errors -The common [errors] and [OperationOutcomes] may be returned. In addition, a `422 - Unprocessable Entity` will be returned when more than 1,000 patients qualify for the search criteria. +The common [errors] and [OperationOutcomes] may be returned. ## Terminology Bindings diff --git a/lib/resources/r4/patient_patch.yaml b/lib/resources/r4/patient_patch.yaml index c2e6fccfc..a08b3dd34 100644 --- a/lib/resources/r4/patient_patch.yaml +++ b/lib/resources/r4/patient_patch.yaml @@ -42,7 +42,7 @@ operations: description: Test the value of the `Identifier.id` of the identifier at the given {index} in the list of patient identifiers. example: | { - "path": "/identifier/1/id", + "path": "/identifier/0/id", "op": "test", "value": "CI-9926250-1" } @@ -85,7 +85,7 @@ operations: description: Replace the `Identifier.value` of the identifier at the given {index} in the list of patient identifiers. example: | { - "path": "/identifier/1/value", + "path": "/identifier/0/value", "op": "replace", "value": "<unique identifier>" } @@ -194,7 +194,7 @@ operations: description: Replace the `HumanName.suffix` of the name at the given {index} in the list of patient names. example: | { - "path": "/name/0/suffix", + "path": "/name/2/suffix", "op": "replace", "value": "Jr." } @@ -240,6 +240,7 @@ operations: "system": "phone", "value": "8168229121", "use": "home", + "rank": 1, "extension": [ { "valueString": "12345", @@ -336,7 +337,7 @@ operations:
  • Requires a test operation to be provided for the `ContactPoint.id` of the telecom whose `extension` value is intended to be replaced.
  • The `system` field of the telecom whose `extension` is intended to be replaced must be 'phone'.
  • If no `valueString` is provided, the phone extension will be unset.
  • -
  • The url must be 'http://hl7.org/fhir/StructureDefinition/contactpoint-extension'.
  • +
  • The `url` value must be `http://hl7.org/fhir/StructureDefinition/contactpoint-extension`.
  • - name: replace-telecom-period path: /telecom/{index}/period From 9343fa68213d4f6b67fd885c6d00df6738388a8e Mon Sep 17 00:00:00 2001 From: casey deitrich <146774806+cldeitrich@users.noreply.github.com> Date: Tue, 19 Dec 2023 13:04:05 -0600 Subject: [PATCH 3/4] OHAIUAD-205307: Style edits. --- .../millennium/r4/base/individuals/patient.md | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/content/millennium/r4/base/individuals/patient.md b/content/millennium/r4/base/individuals/patient.md index 84fe4aca2..6b44d97ff 100644 --- a/content/millennium/r4/base/individuals/patient.md +++ b/content/millennium/r4/base/individuals/patient.md @@ -9,9 +9,9 @@ title: Patient | R4 API ## Overview -The Patient Resource provides general demographic information about a person receiving health care services from a specific organization. Common demographic fields include patient ID, patient name, gender, date of birth, address, phone, primary language and marital status. Additional concepts returned as extensions and not part of the base resource include time of birth, preferred contact, race, ethnicity and birth sex. Cerner Millennium is a patient centric application: thus, many of the other resources will include the patient ID in their queries. A person receiving care from multiple organizations may have data available in multiple patient resources in multiple FHIR servers. +The Patient Resource provides general demographic information about a person receiving healthcare services from a specific organization. Common demographic fields include patient ID, patient name, gender, date of birth, address, phone, primary language, and marital status. Additional concepts returned as extensions and not part of the base resource include time of birth, preferred contact, race, ethnicity, and birth sex. Millennium is a patient-centric application; thus, many other resources include the patient ID in their queries. A person receiving care from multiple organizations may have information available in multiple patient resources in multiple FHIR servers. -* The following [US Core Implementation Guide](https://hl7.org/fhir/us/core/STU4/){:target="_blank"} profiles are supported by this resource: +* This resource supports the following [US Core Implementation Guide](https://hl7.org/fhir/us/core/STU4/){:target="_blank"} profiles: * [US Core Patient Profile](https://hl7.org/fhir/us/core/STU4/StructureDefinition-us-core-patient.html){:target="_blank"} @@ -35,7 +35,7 @@ The following fields are returned if valued: _Notes_ -* Direct secure email will not be returned. +* Direct secure email is not returned. <%= disclaimer %> @@ -58,7 +58,7 @@ The common [errors] and [OperationOutcomes] may be returned. ## Search -Search for Patients that meet supplied query parameters: +Search for patients who meet supplied query parameters. GET /Patient?:parameters @@ -70,9 +70,9 @@ Search for Patients that meet supplied query parameters: | Name | Required? | Type | Description | |----------------------|---------------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `_id` | Conditionally | [`token`] | The logical resource ID associated with the resource. This parameter is required if at least one of `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, `email`, or `address-postalcode` is not used. Example: `11111111` | +| `_id` | Conditionally | [`token`] | The logical resource ID associated with the resource. This parameter is required if at least one of the following parameters is not used: `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, `email`, or `address-postalcode`. Example: `11111111` | | `identifier` | Conditionally | [`token`] | A patient identifier. This parameter is required if `_id`, `name`, `family`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `urn:oid:1.1.1.1.1.1\|1022228` | -| `name` | Conditionally | [`string`] | The start of either family or given name of the patient.This parameter is required if `_id`, `identifier`, `family`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Pete` | +| `name` | Conditionally | [`string`] | The start of the family or given name of the patient. This parameter is required if `_id`, `identifier`, `family`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Pete` | | `family` | Conditionally | [`string`] | The start of the family name of the patient. This parameter is required if `_id`, `identifier`, `name`, `given`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Adam` | | `given` | Conditionally | [`string`] | The start of the given name of the patient. This parameter is required if `_id`, `identifier`, `name`, `family`, `birthdate`, `phone`, `email`, and `address-postalcode` are not used. Example: `Tim` | | `birthdate` | Conditionally | [`date`] | The patient's date of birth. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `phone`, `email`, and `address-postalcode` are not used. Example: `1961-01-16` | @@ -81,25 +81,25 @@ Search for Patients that meet supplied query parameters: | `address-postalcode` | Conditionally | [`string`] | The postal code in the address details of the patient. This parameter is required if `_id`, `identifier`, `name`, `family`, `given`, `birthdate`, `phone`, and `email` are not used. Example: `11111` | | `gender` | No | [`token`] | The administrative gender of the patient. Example: `male` | | [`_count`] | No | [`number`] | The maximum number of results to return. Defaults to `20`. | -| `_revinclude` | No | [`token`] | Provenance resource entries to be returned as part of the bundle. Example:`_revinclude=Provenance:target` | +| `_revinclude` | No | [`token`] | The Provenance resource entries to be returned as part of the bundle. Example:`_revinclude=Provenance:target` | -Notes: +_Notes_ -* A `422 - Unprocessable Entity` will be returned when more than 1,000 patients qualify for the search criteria. -* The `name`, `family`, and `given` parameters support the [`:exact`] modifier and will search for current names only, based on the name's `period`. -* It is not recommended to combine `family` or `given` parameters with the `name` parameter when searching for a patient. Whenever possible use the `:exact` modifier. +* A `422 (Unprocessable Entity)` status code is returned when more than 1000 patients qualify for the search criteria. +* The `name`, `family`, and `given` parameters support the [`:exact`] modifier and search for current names only, based on the name's `period`. +* Oracle Cerner does not recommend combining the `family` or `given` parameters with the `name` parameter when searching for a patient. Whenever possible, use the `:exact` modifier. * The `identifier`, `name`, `family`, `given`, `phone`, `email`, `address-postalcode`, or `gender` parameters may be provided exactly once and may have only a single value. -* The `birthdate` parameter - * May be provided once using one of the following prefixes to imply a date range: `ge`, `le`, `gt`, `lt`, `eq` +* The `birthdate` parameter: + * May be provided once using one of the following prefixes to imply a date range: `ge`, `le`, `gt`, `lt`, or `eq`. * May be provided twice to indicate a date range and must contain one prefix each of `le` and `ge`. Example: `birthdate=ge2001-03-13&birthdate=le2001-05-01` - * Must not be provided with a time component -* The `identifier` parameter + * Must not be provided with a time component. +* The `identifier` parameter: * Requires a code, but the system is optional. If the system is not provided, the search is performed across all systems supported by the Patient resource. * Searches against the specific system, if it is provided. - * Accepts a Social Security Number (SSN), but the value will not be returned in a matching response. -* The `_revinclude` parameter - * May be provided once with the value `Provenance:target`. Example: `_revinclude=Provenance:target` - * Requires the OAuth2 token to include the Provenance scope corresponding to the current Patient scope, such as `user/Provenance.read`, `patient/Provenance.read` or `system/Provenance.read`. + * Accepts a Social Security Number (SSN), but the value is not returned in a matching response. +* The `_revinclude` parameter: + * May be provided once with the `Provenance:target` value. Example: `_revinclude=Provenance:target` + * Requires the OAuth2 token to include the Provenance scope corresponding with the current Patient scope, such as `user/Provenance.read`, `patient/Provenance.read`, or `system/Provenance.read`. ### Headers @@ -133,7 +133,7 @@ Notes: ## Retrieve by ID -List an individual patient by their ID: +List an individual patient by their ID. GET /Patient/:id @@ -156,12 +156,12 @@ List an individual patient by their ID: <%= headers status: 200 %> <%= json(:r4_patient_entry) %> -### Patient Combines Example +### Patient Combine Example -Oracle Health Millennium Platform supports the ability to logically merge a patient record into another patient record when both records are describing the same patient. This is known -as a patient combine. If necessary, this merging can later be undone by performing a patient uncombine. When the requested patient record has been combined into another -record, an inactive patient entry will be returned, which has a link to the current patient entry. Entries for combined patients will only be returned when retrieving -the entries directly by ID. They will not be returned when searching with other parameters. +Millennium supports the ability to logically merge a patient record into another patient record when both records are describing the same patient. This action is known +as a patient combine. If necessary, you can perform a patient uncombine to undo this merging. When the requested patient record is combined into another +record, an inactive patient entry is returned with a link to the current patient entry. Entries for combined patients are only returned when retrieving +the entries directly by ID. They are not returned when searching with other parameters. #### Request @@ -224,7 +224,7 @@ The `ETag` response header indicates the current `If-Match` version to use on su ## Patch -Patch an existing Patient. +Patch an existing patient. PATCH /Patient/:id @@ -277,7 +277,7 @@ The `ETag` response header indicates the current `If-Match` version to use on su ## Operation: $health-cards-issue -Issues Health Cards for an existing Patient. +Issues health cards for an existing patient. POST /Patient/:id/$health-cards-issue From b2b105df24e2cdede4e1aaabe32895f9e514d4af Mon Sep 17 00:00:00 2001 From: Aaron McGinn Date: Tue, 2 Jan 2024 13:55:52 -0600 Subject: [PATCH 4/4] fix PR issues --- .../millennium/r4/base/individuals/patient.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/content/millennium/r4/base/individuals/patient.md b/content/millennium/r4/base/individuals/patient.md index 6b44d97ff..480daa92c 100644 --- a/content/millennium/r4/base/individuals/patient.md +++ b/content/millennium/r4/base/individuals/patient.md @@ -85,21 +85,21 @@ Search for patients who meet supplied query parameters. _Notes_ -* A `422 (Unprocessable Entity)` status code is returned when more than 1000 patients qualify for the search criteria. +* A `422 Unprocessable Content` status code is returned when more than 1,000 patients qualify for the search criteria. * The `name`, `family`, and `given` parameters support the [`:exact`] modifier and search for current names only, based on the name's `period`. -* Oracle Cerner does not recommend combining the `family` or `given` parameters with the `name` parameter when searching for a patient. Whenever possible, use the `:exact` modifier. +* We do not recommend combining the `family` or `given` parameters with the `name` parameter when searching for a patient. Whenever possible, use the `:exact` modifier. * The `identifier`, `name`, `family`, `given`, `phone`, `email`, `address-postalcode`, or `gender` parameters may be provided exactly once and may have only a single value. -* The `birthdate` parameter: +* The `birthdate` parameter * May be provided once using one of the following prefixes to imply a date range: `ge`, `le`, `gt`, `lt`, or `eq`. * May be provided twice to indicate a date range and must contain one prefix each of `le` and `ge`. Example: `birthdate=ge2001-03-13&birthdate=le2001-05-01` * Must not be provided with a time component. -* The `identifier` parameter: +* The `identifier` parameter * Requires a code, but the system is optional. If the system is not provided, the search is performed across all systems supported by the Patient resource. * Searches against the specific system, if it is provided. * Accepts a Social Security Number (SSN), but the value is not returned in a matching response. -* The `_revinclude` parameter: - * May be provided once with the `Provenance:target` value. Example: `_revinclude=Provenance:target` - * Requires the OAuth2 token to include the Provenance scope corresponding with the current Patient scope, such as `user/Provenance.read`, `patient/Provenance.read`, or `system/Provenance.read`. +* The `_revinclude` parameter + * May be provided once with the value of `Provenance:target`. Example: `_revinclude=Provenance:target` + * Requires the OAuth2 token to include the Provenance scope corresponding to the current Patient scope, such as `user/Provenance.read`, `patient/Provenance.read`, or `system/Provenance.read`. ### Headers @@ -277,7 +277,7 @@ The `ETag` response header indicates the current `If-Match` version to use on su ## Operation: $health-cards-issue -Issues health cards for an existing patient. +Issues Health Cards for an existing patient. POST /Patient/:id/$health-cards-issue