This VariableTypedefines the general characteristics of a DiscreteItemthat can have more than two states. The MultiStateDiscreteTypederives from the DiscreteItemType. It is formally defined in Table 5.

Table 5– MultiStateDiscreteType definition

Attribute

Value

BrowseName

MultiStateDiscreteType

IsAbstract

False

ValueRank

−2 (−2 = ‘Any’)

DataType

UInteger

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the DiscreteItemTypedefined in 5.3.3; i.e the Propertiesof that type are inherited.

HasProperty

Variable

EnumStrings

LocalizedText[]

PropertyType

Mandatory

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

Example:

”OPEN”

”CLOSE”

”IN TRANSIT” etc.

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.

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

NOTE The EnumStringsproperty is also used for Enumeration DataTypes (for the specification of this DataType, see OPC 10000-3).

The StatusCode SemanticsChangedbit shall be set if the EnumStrings (changes can cause misinterpretation by users or (scripting) programs) Propertyis changed (see section 5.2for additional information).