Figure 23 – Mapping of structure data types
Ctrl servers shall support the binary encoding (“Default Binary”). Additionally, other encodings may be provided (not shown in above figure). Since OPC UA V1.04 a structured DataType provides the new attribute DataTypeDefinition. This attribute is defined in OPC 10000-6 – F.12. Implementations shall use this new attribute instead of the deprecated DataTypeDictionary.
A Server provides on a structured DataType Node the DataTypeDefinition attribute describing all elements and their order in this structure.
The Value of the DataTypeDefinition Attribute for a DataType Node describing ExampleIEC611313Structure is shown in Table 32.
Table 32 – Value of the DataTypeDefinition
Name |
Type |
Description |
defaultEncodingId |
NodeId |
NodeId of the “ExampleIEC611313Structure_Encoding_DefaultBinary” Node. |
baseDataType |
NodeId |
“i=22” [Structure] |
structureType |
StructureType |
Structure_0 [Structure without optional fields] |
fields [0] |
StructureField |
|
name |
String |
“IntStructureElement” |
description |
LocalizedText |
Description of IntStructureElement |
dataType |
NodeId |
“i=4” [Int16] |
valueRank |
Int32 |
-1 (Scalar) |
isOptional |
Boolean |
False |
fields [1] |
StructureField |
|
Name |
String |
“RealStructureElement“ |
Description |
LocalizedText |
Description of RealStructureElement |
dataType |
NodeId |
“i=10” [Float] |
valueRank |
Int32 |
-1 (Scalar) |
isOptional |
Boolean |
false |
fields [2] |
StructureField |
|
name |
String |
“BoolStructureElement“ |
description |
LocalizedText |
Description of BoolStructureElement |
dataType |
NodeId |
“i=1” [Boolean] |
valueRank |
Int32 |
-1 (Scalar) |
isOptional |
Boolean |
false |