Qualification Scripts - Empty searchset Bundle with Operation Outcome should be allowed

Description

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?

 

Verduidelijking van Impact

Laag, de kwalificatiecontroles worden verbeterd.

Proposed solution (NL)

Diverse TestScript asserts die testen op een lege Bundle aanpassen zodat het meesturen van een OperationOutcome wordt toegestaan.

Proposed solution (EN)

None

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)

None

Attachments

4
100% Done
Loading...

is related to

Activity

Show:

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 PM
Edited

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

Resolved
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Classification

Informatiestandaard onderdelen

Kwalificatie- en testmaterialen

Information standard

Alle 2020.01
Alle 2020.02

Priority

Better Excel Exporter

Created September 24, 2021 at 2:01 PM
Updated January 12, 2024 at 12:53 PM
Resolved November 30, 2021 at 7:26 AM