Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SPINEDEM-3725 AC2 #1046

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Changes from all 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
19 changes: 11 additions & 8 deletions specification/personal-demographics.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -980,15 +980,9 @@ paths:
```
### Special considerations for removals ###

Please note that when applying patch updates to telecom objects under P9 authorisation (patient level updates), we apply a tighter criteria to prevent Patients
updating things they should not and patch operation test is on the whole object (see below). The criteria applied to telecom to allow patients to update is as
follows:
1) If the path contains 'telecom' and the system value equals 'phone', the only allowed use is 'mobile'
2) If the path contains 'telecom' and the system value equals 'email', any use is permitted.
3) If the path contains 'extension', the object must be checked and the url value must equal 'https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NominatedPharmacy'
If these conditions are not met, a permissions error and 4xx code is returned.
See the [Patient access section](#patient-access) for information on updating fields in Patient access mode.

Special care should be taken when performing multiple removals in the same list; as removing a particular index could affect all subsequent index positions. The next two examples perform **<u>exactly</u>** the same operation.
Special care should also be taken when performing multiple removals in the same list; as removing a particular index could affect all subsequent index positions. The next two examples perform **<u>exactly</u>** the same operation.

Choose a reason for hiding this comment

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

Add a recommendation here to perform updates to a list in reverse order to avoid this complication?

Copy link
Contributor

Choose a reason for hiding this comment

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

A bit further down this section it has such a recommendation:

Which is the intended outcome. Providing the patches with the indexes descending means that the list stays in a stable format the whole way through as the only changes to the index positions are items have been passed over already.


Using the following initial (simplified) data, with the intention of removing the names in index 1 (Irwin) and 2 (Bruce):

Expand Down Expand Up @@ -1488,9 +1482,18 @@ paths:

A user with Patient access will be able to update the following fields:
* Address
* Communication (communication language and interpreter required only)
* Emergency contact
* Pharmacy
* Place of birth
* Telecom (mobile and email only)

In Patient access mode, for all operations except `remove`, you must include the whole object in the patch to update the following fields:
* Communication (communication language and interpreter required only)
* Pharmacy
* Place of birth
* Telecom (mobile and email only)

## Sandbox test scenarios

You can test the following scenarios in our sandbox environment.
Expand Down
Loading