Errata exists for this version of the document.

The parameter PublishedData defines the content of a DataSet created from Variable Values and therefore the content of the DataSetMessage sent by a DataSetWriter. The sources of the DataSet fields are defined through an array of PublishedVariableDataType.

The index into the array has an important role for Subscribers and for configuration tools. It is used as a handle to reference the Value in DataSetMessages received by Subscribers. The index may change after configuration changes. Changes are indicated by the ConfigurationVersion of the DataSet and applications working with the index shall always check the ConfigurationVersion before using the index.

If an entry of the PublishedData references one of the ExtensionFields, the substituteValue shall contain the QualifiedName of the ExtensionFields entry. All other fields of this PublishedVariableDataType array element shall be null.

The DataType PublishedVariableDataType represents the configuration information for one Variable. The PublishedVariableDataType is formally defined in Table 11.

Table 11 – PublishedVariableDataType Structure

Name

Type

Description

PublishedVariableDataType

Structure

publishedVariable

NodeId

The NodeId of the published Variable.

Some transport protocols require knowledge on the message receiver side about the DataType, ValueRank and ArrayDimensions to be able to decode the message content. This information is provided through the DataSetMetaData provided for the DataSet.

attributeId

IntegerId

Id of the Attribute to publish e.g. the Value Attribute. This shall be a valid Attribute id.

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.

samplingIntervalHint

Duration

A recommended rate of acquiring new values for change or deadband evaluation. A Publisher should use this value as hint for setting the internal sampling rate.

The value 0 indicates that the Server should use the fastest practical rate.

The value -1 indicates that the default sampling interval defined by the PublishingInterval of the WriterGroup is requested. Any negative number is interpreted as -1.

deadbandType

UInt32

A value that defines the Deadband type and behaviour.

Value Description

None_0 No Deadband calculation should be applied.

Absolute_1 AbsoluteDeadband (This type is specified in OPC 10000-4)

Percent_2 PercentDeadband (This type is specified in OPC 10000-8).

deadbandValue

Double

The deadband value for the corresponding DeadbandType. The meaning of the value depends on DeadbandType.

indexRange

NumericRange

This parameter is used to identify a single element of an array, or a single range of indexes for arrays. The NumericRange type and the logic for IndexRange are defined in OPC 10000-4.

substituteValue

BaseDataType

The value that is included in the DataSet if the StatusCode of the DataValue is Bad. In this case the StatusCode is set to

Uncertain_SubstituteValue.

This Value shall match the DataType of the PublishedVariable since DataSetWriters may depend on a valid Value with the right DataType that matches the ConfigurationVersion.

If the SubstituteValue is Null, the StatusCode of the DataValue is processed.

The handling of the SubstituteValue is defined in 6.2.10.

metaDataProperties

QualifiedName [ ]

This parameter specifies an array of Properties to be included in the FieldMetaData created for this Variable.

It shall be used to populate the properties element of the resulting field in the DataSetMetaData.

This Structure DataType is used to represent PublishedDataItems specific parameters. It is a subtype of the PublishedDataSetSourceDataType defined in 6.2.2.5.

The PublishedDataItemsDataType is formally defined in Table 12.

Table 12 – PublishedDataItemsDataType Structure

Name

Type

Description

PublishedDataItemsDataType

Structure

publishedData

PublishedVariableDataType[]

Defined in 6.2.2.6.1.