Errata exists for this version of the document.

This Clause defines ReferenceTypes that are needed beyond those already specified as part of OPC 10000-3 and OPC 10000-5. This includes extending TwoStateVariableType state machines with sub states and the addition of Alarm grouping.

The TwoStateVariableType References will only exist when sub states are available. For example, if a TwoStateVariableType machine is in a False State, then any sub states referenced from the True state will not be available. If an Event is generated while in the False state and information from the True state sub state is part of the data that is to be reported than this data would be reported as a NULL. With this approach, TwoStateVariableTypes can be extended with subordinate state machines in a similar fashion to the StateMachineType defined in OPC 10000-5.

The HasTrueSubState ReferenceType is a concrete ReferenceType that can be used directly. It is a subtype of the NonHierarchicalReferences ReferenceType.

The semantics indicate that the sub state (the target Node) is a subordinate state of the True super state. If more than one state within a Condition is a sub state of the same super state (i.e. several HasTrueSubState References exist for the same super state) they are all treated as independent sub states. The representation in the AddressSpace is specified in Table 5.

The SourceNode of the Reference shall be an instance of a TwoStateVariableType and the TargetNode shall be either an instance of a TwoStateVariableType or an instance of a subtype of a StateMachineType.

It is not required to provide the HasTrueSubState Reference from super state to sub state, but it is required that the sub state provides the inverse Reference (IsTrueSubStateOf) to its super state.

Table 5 – HasTrueSubState ReferenceType

Attributes

Value

BrowseName

HasTrueSubState

InverseName

IsTrueSubStateOf

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

The HasFalseSubState ReferenceType is a concrete ReferenceType that can be used directly. It is a subtype of the NonHierarchicalReferences ReferenceType.

The semantics indicate that the sub state (the target Node) is a subordinate state of the False super state. If more than one state within a Condition is a sub state of the same super state (i.e. several HasFalseSubState References exist for the same super state) they are all treated as independent sub states. The representation in the AddressSpace is specified in Table 6.

The SourceNode of the Reference shall be an instance of a TwoStateVariableType and the TargetNode shall be either an instance of a TwoStateVariableType or an instance of a subtype of a StateMachineType.

It is not required to provide the HasFalseSubState Reference from super state to sub state, but it is required that the sub state provides the inverse Reference (IsFalseSubStateOf) to its super state.

Table 6 – HasFalseSubState ReferenceType

Attributes

Value

BrowseName

HasFalseSubState

InverseName

IsFalseSubStateOf

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

The HasAlarmSuppressionGroup ReferenceType is a concrete ReferenceType that can be used directly. It is a subtype of the HasComponent ReferenceType.

This ReferenceType binds an AlarmSuppressionGroup to an Alarm.

The SourceNode of the Reference shall be an instance of an AlarmConditionType or sub type and the TargetNode shall be an instance of an AlarmGroupType.

Table 7 – HasAlarmSuppressionGroup ReferenceType

Attributes

Value

BrowseName

HasAlarmSuppressionGroup

InverseName

IsAlarmSuppressionGroupOf

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

The AlarmGroupMember ReferenceType is a concrete ReferenceType that can be used directly. It is a subtype of the Organizes Reference Type.

This ReferenceType is used to indicate the Alarm instances that are part of an Alarm Group.

The SourceNode of the Reference shall be an instance of an AlarmGroupType or sub type of it and the TargetNode shall be an instance of an AlarmConditionType or a subtype of it.

Table 8 – AlarmGroupMember ReferenceType

Attributes

Value

BrowseName

AlarmGroupMember

InverseName

MemberOfAlarmGroup

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment