This Structure DataType is an abstract base type for SubscribedDataSet parameters. A SubscribedDataSet defines the metadata for the subscribed DataSet and the information for the processing of DataSetMessages. See 5.4.2.2 for an introduction to the processing options for received DataSetMessages.

The SubscribedDataSetDataType is formally defined in Table 56.

Table 56 – SubscribedDataSetDataType structure

Name

Type

Description

SubscribedDataSetDataType

Structure

The SubscribedDataSetDataType Structure representation in the AddressSpace is defined in Table 57.

Table 57 – SubscribedDataSetDataType definition

Attributes

Value

BrowseName

SubscribedDataSetDataType

IsAbstract

True

Subtype of Structure defined in OPC 10000-5.

Conformance Units

PubSub Parameters Discovery Extended

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.

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 58.

Table 58 – TargetVariablesDataType structure

Name

Type

Description

TargetVariablesDataType

Structure

TargetVariables

FieldTargetDataType[]

Defined in 6.2.10.2.3.

Its representation in the AddressSpace is defined in Table 59.

Table 59 – TargetVariablesDataType definition

Attributes

Value

BrowseName

TargetVariablesDataType

IsAbstract

False

Subtype of SubscribedDataSetDataType defined in 6.2.10.1.

Conformance Units

PubSub Parameters SubscribedDataSet

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 60.

Table 60 – FieldTargetDataType structure

Name

Type

Description

FieldTargetDataType

Structure

DataSetFieldId

Guid

The 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

NodeId

The 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 61.

Table 61 – FieldTargetDataType definition

Attributes

Value

BrowseName

FieldTargetDataType

IsAbstract

False

Subtype of Structure defined in OPC 10000-5.

Conformance Units

PubSub Parameters SubscribedDataSet

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

Table 62 – OverrideValueHandling values

Name

Value

Description

Disabled

0

The override value handling is disabled.

LastUsableValue

1

In 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.

OverrideValue

2

In the case of an error, the configured override value is used.

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

Table 63 – OverrideValueHandling definition

Attribute

Value

BrowseName

OverrideValueHandling

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Others

Subtype of Enumeration defined in OPC 10000-5

HasProperty

Variable

EnumStrings

LocalizedText []

PropertyType

Conformance Units

PubSub Parameters SubscribedDataSet

The SubscribedDataSet option SubscribedDataSetMirror defines an Object in the Subscriber AddressSpace with a mirror Variable for each DataSet field in the received DataSetMessages.

This parameter with DataType String defines the BrowseName and DisplayName of the parent Node for the Variables representing the fields of the subscribed DataSet.

This parameter with DataType RolePermissionType defines the value of the RolePermissions Attribute to be set on the parent Node. This value is also used as RolePermissions for all Variables of the DataSet mirror.

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

The SubscribedDataSetMirrorDataType is formally defined in Table 64.

Table 64 – SubscribedDataSetMirrorDataType structure

Name

Type

Description

SubscribedDataSetMirrorDataType

Structure

ParentNodeName

String

Defined in 6.2.10.3.1.

RolePermissions

RolePermissionType[]

Defined in 6.2.10.3.3.

Its representation in the AddressSpace is defined in Table 65.

Table 65 – SubscribedDataSetMirrorDataType definition

Attributes

Value

BrowseName

SubscribedDataSetMirrorDataType

IsAbstract

False

Subtype of SubscribedDataSetDataType defined in in 6.2.10.1.

Conformance Units

PubSub Parameters SubscribedDataSet Mirror

This Structure DataType references a standalone subscribed DataSet. It is a subtype of the SubscribedDataSetDataType defined in 6.2.10.1.

The StandaloneSubscribedDataSetRefDataType is formally defined in Table 66.

Table 66 – StandaloneSubscribedDataSetRefDataType structure

Name

Type

Description

StandaloneSubscribedDataSetRefDataType

Structure

DataSetName

String

The name of the corresponding standalone subscribed DataSet.

Its representation in the AddressSpace is defined in Table 67.

Table 67 – StandaloneSubscribedDataSetRefDataType definition

Attributes

Value

BrowseName

StandaloneSubscribedDataSetRefDataType

IsAbstract

False

Subtype of SubscribedDataSetDataType defined in 6.2.10.1.

Conformance Units

PubSub Parameters SubscribedDataSet Standalone

This Structure DataType is define a standalone subscribed DataSet. It is a subtype of the SubscribedDataSetDataType defined in 6.2.10.1.

The StandaloneSubscribedDataSetDataType is formally defined in Table 68.

Table 68 – StandaloneSubscribedDataSetDataType structure

Name

Type

Description

Allow Subtypes

StandaloneSubscribedDataSetDataType

Structure

Name

String

Name of the standalone SubscribedDataSet. It is recommended to use a human readable name.

The name of the standalone SubscribedDataSet shall be unique in the Subscriber.

DataSetFolder

String[]

Optional path of the SubscribedDataSet folder used to group SubscribedDataSets where each entry in the String array represents one level in a folder hierarchy.

If no grouping is needed the parameter is a null or empty String array.

DataSetMetaData

DataSetMetaDataType

Defined in 6.2.9.4.

A Publisher must be configured to send DataSetMessages that comply with the DataSetMetaData in the standalone subscribed DataSet.

SubscribedDataSet

SubscribedDataSet‌DataType

The SubscribedDataSet specific parameters. The abstract base type and the concrete subtypes are defined in 6.2.10.

The StandaloneSubscribedDataSetDataType and the StandaloneSubscribedDataSetRefDataType subtypes shall not be used in this structure field.

True

Its representation in the AddressSpace is defined in Table 69.

Table 69 – StandaloneSubscribedDataSetDataType definition

Attributes

Value

BrowseName

StandaloneSubscribedDataSetDataType

IsAbstract

False

Subtype of SubscribedDataSetDataType defined in 6.2.10.1.

Conformance Units

PubSub Parameters SubscribedDataSet Standalone