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 |