FHIR Chat · Paging and bulk data implementation question · bulk data

Stream: bulk data

Topic: Paging and bulk data implementation question


view this post on Zulip Yan Heras (Dec 02 2021 at 01:36):

The DaVinci Risk Adjustment IG has defined a $report operation (https://build.fhir.org/ig/HL7/davinci-ra/OperationDefinition-report.html). The $report operation's subject parameter can reference a Group of patients and it returns a Bundle for each patient within the Group. We would appreciate your feedback on paging and bulk data implementation for this operation. Our questions are:

Which signature is better to allow for both paging and bulk data implementation of an operation: 1) Return a single Bundle, defined as a set of Bundles, possibly paged, or 2) Return Bundle 0..* and implement some extensions to Parameters to support paging of results? Thanks

view this post on Zulip Josh Mandel (Dec 02 2021 at 01:44):

We don't have standardized semantics for taking an arbitrary operation and "making it bulk". I generally think we should, in FHIR Core. But until then, you might want to document explicit behavior that when called synchronously, your operation returns a Parameters with

  • result -- 0..*, each result includes a Bundle resource inline
  • next -- 0..1, URL that acts as a continuation link for the next page of results

...and that when called with Prefer: respond-async your operation instead behaves like the $export -- that is: eventually returning a bulk manifest where all the output entries are ndjson files full of Bundles

view this post on Zulip Yan Heras (Dec 02 2021 at 02:13):

Thank you Josh! I am copying @Bryn Rhodes @Rob Reynolds @Linda


Last updated: Apr 12 2022 at 19:14 UTC