4.6.5 ExpressionGuardVariableType

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
BrowseNameExpressionGuardVariableType
DataTypeLocalizedText
ValueRank−1 (−1 = Scalar)
IsAbstractFalse
References NodeClass BrowseName DataType TypeDefinition ModellingRule
Subtype of the GuardVariableType defined in 4.6.4
HasPropertyVariableExpressionContentFilterPropertyTypeMandatory
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.