argonautproject / scheduling

Argonaut Scheduling and Appointments: This project supports basic patient and provider access to a provider's calendar and appointment requests, including APIs and guidance for searching and publishing a providers schedule andrequesting, cancelling or updating an appointment.
http://www.fhir.org/guides/argonaut/scheduling/
15 stars 2 forks source link

Issues with fetching slots in PreFetch Scenario #45

Closed Healthedata1 closed 6 years ago

Healthedata1 commented 6 years ago

Assuming:

  1. our goal is to get all the open slots for a service for all actors needed for that service.
  2. client has a set of business rules to know what actors are needed to create an Appointmenr for a particular service
  3. a "service based approach" can be used ( "visit type" links all the actors, schedules and slots together )

    Example:

    • visit-type = "Physical"
    • Set of rules for what is needed:
    • a Room (Location A)
    • a Doctor (Practitioner A)
    • a Nurse (Practitioner B)

Getting open slots for type "Physical" --> just a pile of slots:

Options:

Healthedata1 commented 6 years ago

separated prefetch with realtime WF:

specific to prefecth WF and search params. ...

follow up offline--2 questions;

  1. What (if any) search parameters
  2. _includes?
brandon-larue-zocdoc commented 6 years ago

Start date and end date seem like minimal requirements, as the search needs to be bounded.

As a consumer of these, we like to be able to narrow down further - practitioner (via Schedule.actor is fine) and location are the best candidates, and requiring one but not both gives a lot of flexibility.

Cerner has a good pattern here: http://fhir.cerner.com/millennium/dstu2/scheduling/slot/ although they also require Slot.type (they're using DSTU2) which is isn't ideal for a pre-fetch scenario.

Healthedata1 commented 6 years ago

Discussed on call will Use the approach described above for both intitial load and for polling updates.

Detail technical search details in specification.