## 5.3.1 DataItemType

This VariableType defines the general characteristics of a DataItem. All other DataItem Types derive from it. The DataItemType derives from the BaseDataVariableType and therefore shares the variable model as described in OPC 10000-3 and OPC 10000-5. It is formally defined in Table 1.

Table 1 – DataItemType definition

Attribute Value
BrowseName DataItemType
IsAbstract False
ValueRank −2 (−2 = ‘Any’)
DataType BaseDataType

Subtype of the BaseDataVariableType defined in OPC 10000-5; i.e the Properties of that type are inherited.

References NodeClass BrowseName DataType TypeDefinition ModellingRule
HasSubtype VariableType BaseAnalogType Defined in 5.3.2.2.
HasSubtype VariableType DiscreteItemType Defined in 5.3.3
HasSubtype VariableType ArrayItemType Defined in 5.3.4
HasProperty Variable Definition String PropertyType Optional
HasProperty Variable ValuePrecision Double PropertyType Optional

Definition is a vendor-specific, human readable string that specifies how the value of this DataItem is calculated. Definition is non-localized and will often contain an equation that can be parsed by certain clients.

Example:		Definition::= “(TempA – 25) + TempB”


ValuePrecision specifies the maximum precision that the Server can maintain for the item based on restrictions in the target environment.

ValuePrecision can be used for the following DataTypes:

• For Float and Double values it specifies the number of digits after the decimal place.
• For DateTime values it indicates the minimum time difference in nanoseconds. For example, a ValuePrecision of 20 000 000 defines a precision of 20 ms. The ValuePrecision Property is an approximation that is intended to provide guidance to a Client. A Server is expected to silently round any value with more precision that it supports. This implies that a Client may encounter cases where the value read back from a Server differs from the value that it wrote to the Server. This difference shall be no more than the difference suggested by this Property.