5.3.3.3 MultiStateDiscreteType

This VariableType defines the general characteristics of a DiscreteItem that can have more than two states. The MultiStateDiscreteType derives from the DiscreteItemType. It is formally defined in Table 10.

Table 10 – MultiStateDiscreteType definition
Attribute Value
BrowseNameMultiStateDiscreteType
IsAbstractFalse
ValueRank−2 (−2 = ‘Any’)
DataTypeUInteger
References NodeClass BrowseName DataType TypeDefinition ModellingRule
Subtype of the DiscreteItemType defined in 5.3.3; i.e. the Properties of that type are inherited.
HasPropertyVariableEnumStringsLocalizedText[]PropertyTypeMandatory
Conformance Units
Data Access MultiState

EnumStrings is a string lookup table corresponding to sequential numeric values (0, 1, 2, etc.)

Example:

Here the string "OPEN" corresponds to 0, "CLOSE" to 1 and "IN TRANSIT" to 2.

Clients should be prepared to handle item values outside of the range of the list; and robust Servers should be prepared to handle writes of illegal values, by providing error code “Bad_OutOfRange”.

If the item contains an array then this lookup table shall apply to all elements in the array.

The StatusCode SemanticsChanged bit shall be set if the EnumStrings Property is changed (see 5.2 for additional information).