.NET Based OPC UA Client/Server SDK
Data Types


Defines the Range for a value.

Field DataType ValueRank Description
Low Double Scalar Lowest value in the range.
High Double Scalar Highest value in the range.


Contains information about the EngineeringUnits.

Understanding the units of a measurement value is essential for a uniform system. In an open system in particular where servers from different cultures might be used, it is essential to know what the units of measurement are. Based on such knowledge, values can be converted if necessary before being used. Therefore, although defined as optional, support of the EngineeringUnits Property is strongly advised.

To facilitate interoperability, OPC UA specifies how to apply the widely accepted “Codes for Units of Measurement (Recommendation No. 20)” published by the “United Nations Centre for Trade Facilitation and Electronic Business” (see UN/CEFACT). It uses and is based on the International System of Units (SI Units) but in addition provides a fixed code that can be used for automated evaluation. This recommendation has been accepted by many industries on a global basis.

Field DataType ValueRank Description
NamespaceUri String Scalar Identifies the organization (company, standards organization) that defines the EUInformation.
UnitId Int32 Scalar Identifier for programmatic evaluation. More...
DisplayName LocalizedText Scalar The displayName of the engineering unit. More...
Description LocalizedText Scalar Contains the full name of the engineering unit such as ”hour” or ”meter per second”.


Identifier for programmatic evaluation.

−1 is used if a unitId is not available.


The displayName of the engineering unit.

This is typically the abbreviation of the engineering unit, for example ”h” for hour or ”m/s” for meter per second.


Identifies on which type of axis the data shall be displayed.

Enum String Enum Value Description
Linear 0 Linear Scale
Log 1 Log base 10 scale
Ln 2 Log base e scale


Defines the information for auxiliary axis for ArrayItemType Variables.

There are three typical uses of this structure:

  1. The step between points is constant and can be predicted using the range information and the number of points. In this case, axisSteps can be set to NULL.
  2. The step between points is not constant, but remains the same for a long period of time (from acquisition to acquisition for example). In this case, axisSteps contains the value of each step on the axis.
  3. The step between points is not constant and changes at every update. In this case, a type like XYArrayType shall be used and axisSteps is set to NULL.

When the steps in the axis are constant, axisSteps may be set to “Null” and in this case, the Range limits are used to compute the steps. The number of steps in the axis comes from the parent ArrayItem.ArrayDimensions.

Field DataType ValueRank Description
EngineeringUnits EUInformation Scalar Holds the information about the engineering units for a given axis.
EURange Range Scalar Limits of the range of the axis
Title LocalizedText Scalar User readable axis title. More...
AxisScaleType AxisScaleEnumeration Scalar LINEAR, LOG, LN, defined by AxisSteps (see AxisScaleEnumeration).
AxisSteps Double Array Specific value of each axis step. More...


User readable axis title.

This is useful when the units are %. The Title may be e.g. “Particle size distribution”


Specific value of each axis step.

May be set to “Null” if not used.


Defines a physical value relative to a X axis and it is used as the DataType of the Value of XYArrayItemType.

Most analysers can produce values that can perfectly be represented with a float IEEE 32 bits, but they can position them on the X axis with an accuracy that requires double IEEE 64 bits. For example, the peak value in an absorbance spectrum where the amplitude of the peak can be represented by a float IEEE 32 bits, but its frequency position required 10 digits which implies the use of a double IEEE 64 bits.

Field DataType ValueRank Description
X Double Scalar Position on the X axis of this value.
Value Float Scalar The value itself.