CubeItemType represents a cube of values like a spatial particle distribution, where the particle position is given by X which is the column, Y the row and Z the depth. In the example of a spatial partical distribution, the value is the particle size. CubeItemType is formally defined in Table 12.
Table 12 – CubeItemType definition
Attribute 
Value 

BrowseName 
CubeItemType 

IsAbstract 
False 

ValueRank 
3 (3 = three dimensional array) 

DataType 
BaseDataType 

References 
NodeClass 
BrowseName 
DataType 
TypeDefinition 
ModellingRule 
Subtype of the ArrayItemType defined in 5.3.4.1 







HasProperty 
Variable 
XAxisDefinition 
PropertyType 
Mandatory 

HasProperty 
Variable 
YAxisDefinition 
PropertyType 
Mandatory 

HasProperty 
Variable 
ZAxisDefinition 
PropertyType 
Mandatory 
Engineering units and range for the Value are defined by corresponding Properties inherited from the ArrayItemType.
The DataType of this VariableType is restricted to SByte, Int16, Int32, Int64, Float, Double, ComplexNumberType and DoubleComplexNumberType.
The ArrayDimensions Attribute for Variables of this type or subtypes should use the first entry in the array ([0]) to define the number of columns, the second entry ([1]) to define the number of rows, and the third entry ([2]) define the number of steps in the Z axis, assuming the size of the matrix is not dynamic.
XAxisDefinition Property holds the information about the engineering units and range for the XAxis.
YAxisDefinition Property holds the information about the engineering units and range for the YAxis.
ZAxisDefinition Property holds the information about the engineering units and range for the ZAxis.
The StatusCode SemanticsChanged bit shall be set if any of the InstrumentRange, EURange, EngineeringUnits, Title, XAxisDefinition, YAxisDefinition or ZAxisDefinition Properties are changed (see 5.2 for additional information).