AcknowledgeableConditionsare sub-types of the base ConditionType. AcknowledgeableConditionsexpose states to indicate whether a Conditionhas to be acknowledged or confirmed.

An AckedStateand a ConfirmedStateextend the EnabledStatedefined by the Condition. The state model is illustrated in Figure 2. The enabled state is extended by adding the AckedStateand (optionally) the ConfirmedState.


Figure 2– AcknowledgeableConditions state model

Acknowledgment of the transition may come from the Clientor may be due to some logic internal to the Server. For example, acknowledgment of a related Conditionmay result in this Conditionbecoming acknowledged, or the Conditionmay be set up to automatically Acknowledgeitself when the acknowledgeable situation disappears.

Two Acknowledgestate models are supported by this standard. Either of these state models can be extended to support more complex acknowledgement situations.

The basic Acknowledgestate model is illustrated in Figure 3. This model defines an AckedState. The specific state changes that result in a change to the state depend on a Server’s implementation. For example, in typical Alarmmodels the change is limited to a transition to the Activestate or transitions within the Activestate. More complex models however can also allow for changes to the AckedState when the Conditiontransitions to an inactive state.


Figure 3- Acknowledge State Model

A more complex state model which adds a confirmation to the basic Acknowledgeis illustrated in Figure 4. The Confirmed Acknowledgemodel is typically used to differentiate between acknowledging the presence of a Conditionand having done something to address the Condition. For example, an Operatorreceiving a motor high temperature Notificationcalls the Acknowledge Methodto inform the Serverthat the high temperature has been observed. The Operatorthen takes some action such as lowering the load on the motor in order to reduce the temperature. The Operatorthen calls the Confirm Methodto inform the Serverthat a corrective action has been taken.


Figure 4- Confirm acknowledge State model

The AcknowledgeableConditionsmodel can also be used for a simple Conditionthat requires a confirmation. For example, a motor start event might need to be acknowledged by an operator, this event is not an alarm, just an action that needs to be acknowledged by the operator. It could also be an event that is generated for an operator change of a process input (grade of paper being made) that needs to be acknowledged. It is not something that requires an anwser like a question, for this there are DialogCondition. It is just an acknowledge that the operator observed the change.