Skip to content

Bring support of conditional updates into alignment with the R4 spec #3231

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

Closed
dmuylwyk opened this issue Dec 9, 2021 · 0 comments · Fixed by #4602
Closed

Bring support of conditional updates into alignment with the R4 spec #3231

dmuylwyk opened this issue Dec 9, 2021 · 0 comments · Fixed by #4602
Assignees
Labels

Comments

@dmuylwyk
Copy link
Collaborator

dmuylwyk commented Dec 9, 2021

Describe the bug

Support for conditional updates is not in alignment with the R4 spec.

R4 conditional updates should issue a 400 where one match is found, and a resource ID is provided but does not match the resource found. Instead, we are simply ignoring resource IDs in the body of the resource (in line with the STU3 spec).

We presently support the STU3 spec for conditional updates:

Compare with the R4 spec:

Please bring support of conditional updates into alignment with the R4 spec.

To Reproduce

Steps to reproduce the behavior:

  1. POST a resource to the repository as a create operation. Note the server-assigned resource ID.
  2. POST a Bundle of type transaction that includes an entry with a conditional update operation for the same resource. Ensure this entry includes a resource ID that differs from the server-assigned resource ID in step 1 above.

Observed behavior

The resource is conditionally updated without issue.

Expected behavior

The operation should result in a 400.

Cc. @jamesagnew, since we just talked about this. A letter with a vague threat of consequences should this not be resolved in a reasonable amount of time has been issued to the mayor.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants