Qualification Scripts - Empty searchset Bundle with Operation Outcome should be allowed
Description
Verduidelijking van Impact
Proposed solution (NL)
Diverse TestScript asserts die testen op een lege Bundle aanpassen zodat het meesturen van een OperationOutcome wordt toegestaan.
Proposed solution (EN)
Release notes (NL)
All TestScripts checking for an empty searchset Bundle have been edited to allow for an otherwise empty Bundle with an OperationOutcome present.
Release notes (EN)
Attachments
is related to
Activity

Jorn Duwel November 17, 2021 at 3:09 PM
Dear ,
This change will be implemented during our next patch release on November 30.
We had some discussion about changing the assertions checking .fullUrl and .id and our outcome is that we will not be changing them. http://hl7.org/fhir/bundle.html#bundle-unique states that every Bundle.entry needs to have a fullUrl, and no exception is made for OperationOutcome. Changing this has been brought up (https://chat.fhir.org/#narrow/stream/179166-implementers/topic/Validator.20Errors.20For.20Bundle.20With.20OperationOutcome ) but no change request has been logged (or approved). Until this happens, an entry.fullUrl (probably containing an urn:uuid) will be expected.
Regards,
Jorn Duwel

Brian Swinkels September 30, 2021 at 7:14 PM
Hi ,
Thanks for the thorough answer! An example test patient for our Mesker patient (using scenario 1.2) is available here: https://touchstone.aegis.net/touchstone/scriptexecution?exec=202109191507593013641712&qn=/FHIRSandbox/Nictiz/FHIR3-0-2-MM202001-Test/BgZ-3-0/XIS-Server/medmij-bgz-xis-1-2-serve-bgz-json#WAITING_OPER
We also have a fairly recent example for our Helleman patient here (although we're still updating some test patient configuration):
https://touchstone.aegis.net/touchstone/execution?exec=202109170432423394313271
Met vriendelijke groet,
Brian

Jorn Duwel September 30, 2021 at 9:00 AM
Dear ,
It looks like the STU3 spec on OperationOutcome (http://hl7.org/fhir/stu3/operationoutcome.html) is not really clear on this type of use of the resource, where the R4 spec is: https://hl7.org/fhir/operationoutcome.html "As part of a search's Bundle response containing information about the search". I personally kind of like it, but we have to discuss it some more within our team to review all implications of accepting this. I am going to change this ticket to a 'Wijzigingsverzoek' for our next patch release to allow your solution.
Can you maybe send some links to your TouchStone executions? That would help us (and maybe for you in the future is easier than sending screenshots).
Upon trying to answer your remaining questions, we stumbled upon the complete lack of documentation of why 1.3 exists and what is expected upon executing it. The ticket to solve this, , has been lying dormant for some time now, so we'll revive it. We'll make sure to take your remarks into account when resolving both these issues.
When you send in your materials for qualification, I would recommend testing against 1.1 and 1.2, as only these two are documented on the qualification page (https://informatiestandaarden.nictiz.nl/wiki/MedMij:V2020.01/BgZ_Beschikbaarstellen) and refer to this ticket in an explanation on why the test fails incorrectly.
If you have any further questions, please let me know.
Regards,
Jorn Duwel

Brian Swinkels September 28, 2021 at 7:16 PMEdited
Hi Former user,
In our FHIR response, the searchset Bundle does explicitly indicate that there are 0 results to be returned:
The entry serves the purpose of providing additional contextual information to the requesting application – in this case indicating that the search is valid, but no data is available to be returned. This additional information can then be used by the application to determine how to appropriate indicate the status to the end user.
Looking further however, it looks like the 1.3 script allows for this case, but 1.2 doesn’t:
1.2
1.3
So I believe our remaining questions are actually:
What is the difference in scripts 1.2 and 1.3 for the Mesker patient, if one allows OperationOutcome and one does not?
Should we only be testing against 1.2 or 1.3, or are both required?
If 1.3 allows for OperationOutcomes, can the additional errors be updated to account for/not fail on OperationOutcome resources, as they will not include a FHIR ID as non-persistent resources?
We do believe that the extra context for why no responses were returned is valuable.
Appreciate your assistance!

Eduard de Rijcke September 27, 2021 at 3:23 PM
Dear
Thank you for sharing the screenshot.
We are expecting that an empty bundle will be returned: https://informatiestandaarden.nictiz.nl/wiki/MedMij:V2020.01/FHIR_IG#Search
For example for the 1.2 Mesker Problem scenario we are expecting the following response:
I hope this will answer your question.
Best Regards,
Eduard de Rijcke
Details
Assignee
Jorn DuwelJorn DuwelReporter
Brian SwinkelsBrian SwinkelsClassification
Patch (Z)Informatiestandaard onderdelen
Kwalificatie- en testmaterialenInformation standard
Alle 2020.01Alle 2020.02Priority
High
Details
Details
Assignee

Reporter

Hi Kwalificatie team,
We're in the process of testing development for the BgZ on FHIR, and are running BgZ scripts 1.1 - 1.3 on Touchstone.
We've noticed that when our system has no data to return (as expected) for certain resources with Mesker in 1.2 and 1.3, we're marked as failing the test script.
This seems to be because we are returning a bundle with an OperationOutcome (explicitly indicating that no data is present) rather than an entirely empty bundle.
Could the scripts be updated to accommodate these responses?