Unsolicited transactions from filler applications are the messages and trigger events used between filler applications and auxiliary applications. Transactions are initiated by the filler application, using the SIU message to notify auxiliary applications of modifications in a filler application's schedule(s). The auxiliary application responds to these notifications, using the ACK message, either to acknowledge receipt of the transaction, or to signal that an interfacing error of some kind has occurred.
This set of trigger events is also used to notify applications fulfilling the placer application role of changes in the filler application's schedule(s), if the application is configured to accept these messages and trigger events as an auxiliary application would. As the discussion of application roles has indicated above, any one application can have more than one application role. If it is important that the application acting in the placer application role in your messaging environment be notified of unsolicited changes to a filler application's schedule(s), then it must also support the role of an auxiliary application.
When initiating a notification transaction, the filler application will generate and send an SIU message containing all of the information necessary to communicate the desired information to the auxiliary application. All required segments and fields (both explicitly required and conditionally required) should be provided by the filler application, as defined in this chapter. When the auxiliary application receives the transaction, it acknowledges with the appropriate accept acknowledgment using an ACK message (assuming that the enhanced acknowledgment mode is in use). After processing the notification at the application level, the auxiliary application acknowledges the transaction with the appropriate application acknowledgment in an ACK message (assuming that an application acknowledgment was requested under the enhanced acknowledgment mode, or that the original acknowledgment mode is in use). Applying the explanations of the various application acknowledgment codes (detailed in Chapter 2) in the context of this chapter, an application accept from the auxiliary application means that the notification was processed and accepted. An application error from the auxiliary application means that the auxiliary application was unable to process the notification at the application level. An application reject from the auxiliary application means that the request was not, and could not, be processed due to one or more reasons unrelated to its content (for example: it fails the basic application protocol validation, the system is down, or there was an internal error).
All of the trigger events associated with unsolicited transactions from filler applications use a common message definition that follows:
Segment | Cardinality | Implement | Status |
---|---|---|---|
SIU^S12-S24,S26,S27^SIU_S12 | |||
MSH Message Header |
[1..1] | SHALL | |
ARV Access Restriction |
v2.9 | ||
SCH Scheduling Activity Information |
[1..1] | SHALL | |
TQ1 Timing/Quantity |
|||
NTE Notes and Comments |
|||
PATIENT | |||
PID Patient Identification |
[1..1] | SHALL | |
PD1 Patient Additional Demographic |
[0..1] | ||
PRT Participation Information |
|||
PV1 Patient Visit |
[0..1] | ||
PV2 Patient Visit - Additional Information |
[0..1] | ||
PRT Participation Information |
|||
OBX Observation/Result |
|||
PRT Participation Information |
|||
DG1 Diagnosis |
|||
RESOURCES | [1..*] | SHALL | |
RGS Resource Group |
[1..1] | SHALL | |
SERVICE | |||
AIS Appointment Information |
[1..1] | SHALL | |
NTE Notes and Comments |
|||
GENERAL_RESOURCE | |||
AIG Appointment Information - General Resource |
[1..1] | SHALL | |
NTE Notes and Comments |
|||
LOCATION_RESOURCE | |||
AIL Appointment Information - Location Resource |
[1..1] | SHALL | |
NTE Notes and Comments |
|||
PERSONNEL_RESOURCE | |||
AIP Appointment Information - Personnel Resource |
[1..1] | SHALL | |
NTE Notes and Comments |
MSH-15 | MSH-16 | Immediate ACK | Application Ack |
---|---|---|---|
Blank | Blank | - | ACK^S12-S24,S26,S27^ACK |
NE | NE | - | - |
AL, SU, ER | NE | ACK^S12-S24,S26,S27^ACK | - |
NE | AL, SU, ER | - | ACK^S12-S24,S26,S27^ACK |
AL, SU, ER | AL, SU, ER | ACK^S12-S24,S26,S27^ACK | ACK^S12-S24,S26,S27^ACK |
The trigger events that use this message definition are listed below.
This message is sent from a filler application to notify other applications that a new appointment has been booked. The information provided in the SCH segment and the other detail segments as appropriate describe the appointment that has been booked by the filler application.
This message is sent from a filler application to notify other applications that an existing appointment has been rescheduled. The information in the SCH segment and the other detail segments as appropriate describe the new date(s) and time(s) to which the previously booked appointment has been moved. Additionally, it describes the unchanged information in the previously booked appointment.
This transaction should not be used to reschedule an appointment that has begun but has not been completed. In such cases, and only if it logical to do so, the appointment should be discontinued and a new schedule request should be submitted. Likewise, this transaction should not be used to reschedule a parent appointment, in which one or more children have begun or have already taken place. Again, the parent appointment should be discontinued, and a new schedule request should be made. This procedure removes any ambiguity between applications that may arise with an attempt to modify an appointment that is in progress.
This message notifies other applications that an existing appointment has been modified on the filler application. This trigger event should only be used for appointments that have not been completed, or for parent appointments whose children have not been completed.
A notification of appointment cancellation is sent by the filler application to other applications when an existing appointment has been canceled. A cancel event is used to stop a valid appointment from taking place. For example, if a patient scheduled for an exam cancels his/her appointment, then the appointment is canceled on the filler application.
This trigger event can be used to cancel a parent appointment, in which none of the children of the appointment have either begun or been completed. Any child appointments that exist on the filler and placer applications should be considered canceled. If one or more child appointments have begun or have been completed, then this trigger event should not be used. Instead, the S16 (notification of appointment discontinuation) event should be used.
A notification of appointment discontinuation is sent by the filler application to notify other applications that an appointment in progress has been stopped, or that the remaining occurrences of a parent appointment will not occur. If none of the child appointments of a parent appointment have taken place, then a cancel trigger event should be sent instead.
A notification of appointment deletion is sent by the filler application to other applications when an appointment that had been entered in error has been removed from the system. A delete trigger event should only be used when an appointment has been erroneously scheduled. It must be removed from the schedule so that it does not affect any statistical processing. A delete trigger event differs from a cancel trigger event in that a delete acts to remove an error, whereas a cancel acts to prevent a valid request from occurring. This trigger event should not be used for any appointment that has already begun, or that has already been completed. Likewise, it should not be used for any parent appointment if any child appointments have either begun or been completed.
The delete trigger event should be implemented with careful forethought, as it typically has different effects and repercussions in various applications. In some applications, a delete event cannot be undone. This means that if a delete transaction was sent erroneously, recovery will be difficult or impossible. In other applications, a delete transaction will not result in the physical deletion of the record(s), but will set a status or a flag. In these cases, the filler and/or placer appointment identifiers (the numbers or codes that uniquely identify the scheduled appointment or request to the placer and filler applications) probably cannot be reused. Since these applications maintain a record of deleted appointments, the reuse of an identifier will likely cause a conflict in the applications' processing of transactions.
The notification of addition of service/resource is triggered on the filler application when a new service or resource has been added to an existing appointment. Services and resources are represented by the AIS, AIG, AIL, and AIP segments on an HL7 scheduling interface transaction. This trigger event should only be used for appointments that have not been completed, or for parent appointments whose children have not been completed.
The notification of modification of service/resource is triggered on the filler application when the information pertaining to an existing service or resource has been changed for an existing appointment. Services and resources are represented by the AIS, AIG, AIL, and AIP segments on an HL7 scheduling interface transaction. This trigger event should only be used for appointments that have not been completed, or for parent appointments whose children have not been completed.
This trigger event should not be used when an existing resource or service has been replaced in relation to an existing appointment. Instead, use two other trigger events: S20 (notification of cancellation of service/ resource on appointment), as well as S18 (notification of addition of service/resource on appointment).
This trigger event notifies other applications that a service or resource has been removed from an existing scheduled appointment that has not yet begun. A cancel event is used to stop a valid service or resource from participating in the appointment. For example, if a portable X-ray machine scheduled for an exam is no longer needed, then the resource is canceled on the filler application. This trigger event should only be used for appointments that have not been completed, or for parent appointments whose children have not been completed.