This wiki has undergone a migration to Confluence found Here
Difference between revisions of "Proposal: add Find Appointments Query"
Jump to navigation
Jump to search
Rene spronk (talk | contribs) |
Rene spronk (talk | contribs) |
||
Line 7: | Line 7: | ||
[http://www.helse-vest.no/ Helse Vest], the western region of Norway has a use-case whereby: | [http://www.helse-vest.no/ Helse Vest], the western region of Norway has a use-case whereby: | ||
#(covered by a different proposal) They use a Find Encounters Query to find out (e.g.) who is currently sitting in the waiting room in Building X. For all patient IDs returned in the response: | #(covered by a different proposal) They use a Find Encounters Query to find out (e.g.) who is currently sitting in the waiting room in Building X. For all patient IDs returned in the response: | ||
− | #Query the appointment manager to find appointments for a given Patient ID and a particular resource (e.g. the ID of a particular piece of equipment). | + | #Query the appointment manager to find appointments for a given Patient ID, a date range (this will be mostly valued with "today") and a particular resource (e.g. the ID of a particular piece of equipment) or a set of resources (e.g. the ServiceDeliveryLocation and the ID of a healthcare provider). |
Notes: | Notes: | ||
Line 17: | Line 17: | ||
! Parameter !! Notes !! Mapping to response model || Mapping to v2 | ! Parameter !! Notes !! Mapping to response model || Mapping to v2 | ||
|- | |- | ||
− | | PatientId || | + | | PatientId <br/> (Mandatory) || Matching is based on equality of identity. || ActAppointment/subject/Patient(PAT role).id || PID-3 |
|- | |- | ||
− | | AssignedPersonID || | + | | AssignedPersonID || Matching is based on equality of identity. || ActAppointment/performer/AssignedPerson(role).id || AIP-3 |
|- | |- | ||
− | | EquipmentID || | + | | EquipmentID || Matching is based on equality of identity. || ActAppointment/reusabledevice/ManufacturedDevice(role).id || AIG-3 |
|- | |- | ||
− | | LocationID || | + | | LocationID || Ward/room/bed is modeled in a recursive-hierarchy of PartOf relationships between ServiceDeliveryLocation classes, with the initial one in the hierarchy being ActAppointment/Location/ServiceDeliveryLocation. The Part role link (in the response model) is used in such a way that the hierarchy starts at the most atomic level (bed or room) and moves "up" the hierarchy towards the ward. Matching is based on equality of identity.|| ServiceDeliveryLocation.id || AIL-3.(1,2,3) |
|- | |- | ||
− | | LocationResponsibleOrganizationID || Clinic || ActAppointment/Location/ServiceDeliveryLocation role (initial ServiceDeliveryLocation in the hierarchy) - scoping Organization.id (in scoping E_Organization) || AIL-3.4 | + | | LocationResponsibleOrganizationID || Clinic. Matching is based on equality of identity. || ActAppointment/Location/ServiceDeliveryLocation role (initial ServiceDeliveryLocation in the hierarchy) - scoping Organization.id (in scoping E_Organization) || AIL-3.4 |
|- | |- | ||
− | | TypeOfAppointment || | + | | TypeOfAppointment || An appointment will match the value of the supplied query paremeter if the value of the TypeOfAppointment parameter is equal to, or a specialization of, the code as present in the code attribute of the appointment. || ActAppointment.code || SCH-8 |
|- | |- | ||
− | | AppointmentTimeFrame || | + | | AppointmentTimeFrame || An appointment will match the supplied query parameter if the intersection between the AppointmentTimeFrame in the query parameter and the timeframe as listed in the oppointment is not-nill. If Appointment.effectiveTime isn't valued, or if it contains a nullFlavor then (by definition) the intersection with the AppointmentTimeFrame query parameter will be non-nill. || ActAppointment.effectiveTime || SCH-11 |
|- | |- | ||
|+ '''Table 1''' Find Appointments Query, parameters | |+ '''Table 1''' Find Appointments Query, parameters | ||
|} | |} |
Revision as of 16:29, 14 February 2009
Summary
This proposal seeks to add a new query interaction to the Appointment topic of the Scheduling (PRSC) domain.
The new Find Appointments Query (PRSC_IN010701UV) queries the Appoint Manager for apppointments that match a set of criteria (e.g. the time of the appointment and the resources associated with the appointment) as specified in the query parameters. The intent and underlyinh use-cases are the same as those for the HL7 version 2 SQM/SQR - Schedule Query Message and Response (Event S25) (up to version 2.6; now deprecated and moved to chapter 5).
Use-case
Helse Vest, the western region of Norway has a use-case whereby:
- (covered by a different proposal) They use a Find Encounters Query to find out (e.g.) who is currently sitting in the waiting room in Building X. For all patient IDs returned in the response:
- Query the appointment manager to find appointments for a given Patient ID, a date range (this will be mostly valued with "today") and a particular resource (e.g. the ID of a particular piece of equipment) or a set of resources (e.g. the ServiceDeliveryLocation and the ID of a healthcare provider).
Notes:
- the assumption is that, even if the appointment manager has tree-like dependencies between appointments, the response model SHALL not contain "component2"/COMP act relationships between appointment acts.
- this query does not have an AppointmentID parameter.
Parameter | Notes | Mapping to response model | Mapping to v2 |
---|---|---|---|
PatientId (Mandatory) |
Matching is based on equality of identity. | ActAppointment/subject/Patient(PAT role).id | PID-3 |
AssignedPersonID | Matching is based on equality of identity. | ActAppointment/performer/AssignedPerson(role).id | AIP-3 |
EquipmentID | Matching is based on equality of identity. | ActAppointment/reusabledevice/ManufacturedDevice(role).id | AIG-3 |
LocationID | Ward/room/bed is modeled in a recursive-hierarchy of PartOf relationships between ServiceDeliveryLocation classes, with the initial one in the hierarchy being ActAppointment/Location/ServiceDeliveryLocation. The Part role link (in the response model) is used in such a way that the hierarchy starts at the most atomic level (bed or room) and moves "up" the hierarchy towards the ward. Matching is based on equality of identity. | ServiceDeliveryLocation.id | AIL-3.(1,2,3) |
LocationResponsibleOrganizationID | Clinic. Matching is based on equality of identity. | ActAppointment/Location/ServiceDeliveryLocation role (initial ServiceDeliveryLocation in the hierarchy) - scoping Organization.id (in scoping E_Organization) | AIL-3.4 |
TypeOfAppointment | An appointment will match the value of the supplied query paremeter if the value of the TypeOfAppointment parameter is equal to, or a specialization of, the code as present in the code attribute of the appointment. | ActAppointment.code | SCH-8 |
AppointmentTimeFrame | An appointment will match the supplied query parameter if the intersection between the AppointmentTimeFrame in the query parameter and the timeframe as listed in the oppointment is not-nill. If Appointment.effectiveTime isn't valued, or if it contains a nullFlavor then (by definition) the intersection with the AppointmentTimeFrame query parameter will be non-nill. | ActAppointment.effectiveTime | SCH-11 |