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 27: | Line 27: | ||
| 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 | | 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 | + | | 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 || AIS-3; 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 | + | | 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 || AIS-4,5,6,7,8; SCH-11 |
|- | |- | ||
|+ '''Table 1''' Find Appointments Query, parameters | |+ '''Table 1''' Find Appointments Query, parameters | ||
|} | |} |
Revision as of 15:21, 15 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 | AIS-3; 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 | AIS-4,5,6,7,8; SCH-11 |