6.2.10.2 TargetVariables
6.2.10.2.1 General

The SubscribedDataSet option TargetVariables defines a list of Variable mappings between received DataSet fields and target Variables in the Subscriber AddressSpace. The FieldTargetDataType is defined in 6.2.10.2.3. Target Variables shall only be used once within the same TargetVariables list.

6.2.10.2.2 TargetVariablesDataType

This Structure DataType is used to represent TargetVariables specific parameters. It is a subtype of the SubscribedDataSetDataType defined in 6.2.10.1.

The TargetVariablesDataType is formally defined in Table 67.

Table 67 – TargetVariablesDataType structure
Name Type Description
TargetVariablesDataTypeStructure

TargetVariables

FieldTargetDataType[]Defined in 6.2.10.2.3.

Its representation in the AddressSpace is defined in Table 68.

Table 68 – TargetVariablesDataType definition
Attributes Value
BrowseNameTargetVariablesDataType
IsAbstractFalse
Subtype of SubscribedDataSetDataType defined in 6.2.10.1.
Conformance Units
PubSub Parameters SubscribedDataSet
6.2.10.2.3 FieldTargetDataType

This DataType is used to provide the metadata for the relation between a field in a DataSetMessage and a target Variable in a DataSetReader. The FieldTargetDataType is formally defined in Table 69.

Table 69 – FieldTargetDataType structure
Name Type Description
FieldTargetDataTypeStructure

DataSetFieldId

GuidThe unique ID of the field in the DataSet. The fields and their unique IDs are defined in the DataSetMetaData Structure.

ReceiverIndexRange

NumericRange

Index range used to extract parts of an array out of the received data.

It is used to identify a single element of an array, or a single range of indexes for arrays for the received DataSet field. If a range of elements is specified, the values are returned as a composite. The first element is identified by index 0 (zero). The NumericRange type is defined in OPC 10000-4.

This parameter is null if the specified Attribute is not an array. However, if the specified Attribute is an array, and this parameter is null, then the complete array is used.

The resulting data array size of this NumericRange shall match the resulting data array size of the writeIndexRange NumericRange setting.

If the resulting array size is one and the target node ValueRank is scalar, the value shall be applied as scalar value.

TargetNodeId

NodeIdThe NodeId of the Variable to which the received DataSetMessage field value is written.

AttributeId

IntegerId

Id of the Attribute to write e.g. the Value Attribute. This shall be a valid AttributeId.

The Attributes are defined in OPC 10000-3. The IntegerId DataType is defined in OPC 10000-4. The IntegerIds for the Attributes are defined in OPC 10000-6.

WriteIndexRange

NumericRange

The index range used for writing received data to the target node.

It is used to identify a single element of an array, or a single range of indexes for arrays for the write operation to the target Node. If a range of elements is specified, the values are written as a composite. The first element is identified by index 0 (zero). The NumericRange type is defined in OPC 10000-4.

This parameter is null if the specified Attribute is not an array. However, if the specified Attribute is an array, and this parameter is null, then the complete array is used.

OverrideValueHandling

OverrideValueHandling

The value is used to define the override value handling behaviour if the State of the DataSetReader is not Operational or if the corresponding field in the DataSet contains a Bad StatusCode.

The handling of the OverrideValue in different scenarios is defined in 6.2.11.

The OverrideValueHandling enumeration DataType is defined in 6.2.10.2.4.

OverrideValue

BaseDataType

This value is used if the OverrideValueHandling is set to OverrideValue and the State of the DataSetReader is not Operational or if the corresponding field in the DataSet contains a Bad StatusCode.

The handling of the OverrideValue in different scenarios is defined in 6.2.11.

This Value shall match the DataType of the target Node.

If a writeIndexRange is configured, the Value shall match the resulting size of the writeIndexRange. For example if the writeIndexRange is “5:7”, the overrideValue must be an array with length 3.

Its representation in the AddressSpace is defined in Table 70.

Table 70 – FieldTargetDataType definition
Attributes Value
BrowseNameFieldTargetDataType
IsAbstractFalse
Subtype of Structure defined in OPC 10000-5.
Conformance Units
PubSub Parameters SubscribedDataSet
6.2.10.2.4 OverrideValueHandling

The OverrideValueHandling is an enumeration that specifies the possible options for the handling of Override values. The possible enumeration values are described in Table 71.

Table 71 – OverrideValueHandling values
NameValueDescription
Disabled0The override value handling is disabled.
LastUsableValue1In the case of an error, the last usable value is used. If no last usable value is available, the default value for the data type is used.
OverrideValue2In the case of an error, the configured override value is used.

The OverrideValueHandling representation in the AddressSpace is defined in Table 72.

Table 72 – OverrideValueHandling definition
Attribute Value
BrowseNameOverrideValueHandling
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Others
Subtype of Enumeration defined in OPC 10000-5
HasPropertyVariableEnumStringsLocalizedText []PropertyType
Conformance Units
PubSub Parameters SubscribedDataSet