Search code examples
hl7-fhir

HL7 FHIR Schedule resource with multiple serviceType


Need a clarification w.r.t. the Schedule resource.

In our use case, a given practitioner has a schedule at a given location and provides multiple services.

Reading 12.16.1.2 Actor - What the schedule applies to of the resource documentation at https://www.hl7.org/fhir/schedule.html (quoted below), we are confused about whether we need to create multiple Schedule instances for this, each with only one Practitioner, Location and HealthcareService reference (1 reference of each type).

12.16.1.2 Actor - What the schedule applies to

The schedule belongs to a single instance of a service or resource. This is normally a HealthcareService, Practitioner, Location or Device. In the case where a single resource can provide different services, potentially at different location, then the schedulable resource is considered the composite of the actors.

For example, if a practitioner can provide services at multiple locations, they might have one schedule per location, where each schedule includes both the practitioner and location actors. When booking an appointment with multiple schedulable resources, multiple schedules may need to be checked depending on the configuration of the system.

If an appointment has two practitioners, a specific medical device and a room then there could be a schedule for each of these resources that may need to be consulted to ensure that no collisions occur.

If the schedule needed to be consulted, then there would be one created covering the planning horizon for the time of the appointment.

My query is, are we OK to create the Schedule instance with 1 Practitioner, 1 Location and multiple HealthcareService references?

Also, can I design my Schedule instance with 1 Practitioner, 1 Location and multiple entries under serviceType field (and no HealthcareService reference under actor field)?

I believe the answer to both above is yes, purely going by how the cardinality of the resource is specified, but as mentioned above, the specification under section 12.16.1.2 is causing some confusion.


My data: Practitioner: Mr David Smith Location: London Physiotherapy Service types: Initial consultation, Follow-up consultation

Option 1: Having separate Schedule instances, each with only one Practitioner, Location and HealthcareService references.

enter image description here

Option 2: Having multiple HealthcareService references within the same Schedule instance.

enter image description here

Option 3: Having only Practitioner and Location reference under actor field and then having multiple HealthcareService references under the serviceType field.

enter image description here

Reading section 12.16.1.2 of the documentation, we wonder if only option 1 is allowed. So we want to check whether options 2 and 3 are valid.

Really appreciate if anyone can clarify on this. Thanks a lot in advance.


Solution

  • If you have multiple 'participants' on a schedule, then they are scheduled as a unit. For example, if the device is tied to the room, you can't schedule the room and leave the device free or vice versa. You might also have one schedule for Dr. Smith and clinic X and a different schedule for Dr. Smith at clinic Y.

    The list of service types on the schedule limits the use of that schedule to those types of services. This is done when a provider (or location or device) has different schedules for different types of services. For example "Dr. Jones only does new patient intakes on Mondays" would mean that there'd be a distinct schedule for "new patient intakes" for that provider that only had slots on Mondays.

    It's certainly fine to have multiple service types on Schedule. These would be the list of services for which it's appropriate to book slots in that particular schedule.

    If you think the current specification wording is confusing, you can use the "propose a change" link at the bottom of the specification page to propose clearer wording.