The ExpressionGuardVariableType provides, in addition to the human-readable semantic from its GuardVariableType, a machine interpretable representation on the semantic.

The ExpressionGuardVariableType is formally defined in Table 23.

Table 23 – ExpressionGuardVariableType definition

Attribute

Value

BrowseName

ExpressionGuardVariableType

DataType

LocalizedText

ValueRank

−1 (−1 = Scalar)

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the GuardVariableType defined in 4.6.4

HasProperty

Variable

Expression

ContentFilter

PropertyType

Mandatory

Conformance Units

Base Info Choice States

The mandatory Property Expression provides a ContentFilter, that shall be evaluated on the Object the StateMachine belongs to. This is a machine-readable semantic of the Guard. If the ContentFilter evaluates to "True", the Guard is "True", otherwise the Guard is "False".

The ContentFilter for ExpressionGuardVariableType is restricted to basic operators (see OPC 10000-4 for details).

The ContentFilter can reference any Variables defined on the StateMachineType and are validated on the instance of the StateMachine. If the definition of the Variable is not owned directly by the StateMachine but for example some other type, the StateMachine instance shall reference that Variable.