Especially in OPC UA PubSub scenarios, the transmission of semantic Properties like “EngineeringUnits”, “AccuracyDomain” and “PeMeasurementID” along with actual values is not desirable since this data does not change and can substantially increase the amount of transmitted data. Although the metadata constitutes an indispensable part of the data by enabling its correct interpretation, repeated transmissions of unchanged data are not necessary.

In a Client/Server scenario, Clients can obtain the metadata initially by separate browse and read operations. Metadata changes can be notified using ModelChange and SemanticChange Events.

When using Subscriptions, the Server can inform the Clients about metadata changes by setting the SemanticsChanged bit in the StatusCodes returned as part of data change Notifications. In PubSub scenarios, if the metadata of the subscribed DataSet changes, the Client receives a new ConfigurationVersion in the DataSetMetaData of the affected DataSet.

Considering possible application failure due to usage of outdated metadata, invoking the Read Service to obtain the Value of a merged compact representation not containing the associated metadata is appropriate for low-frequency data refresh scenarios imposing little additional bandwidth usage. If metadata change due to reconfiguring is possible, the metadata should be obtained by separate read accesses each time the Value of the merged compact representation is read.

Alternatively, the merged compact representation could be configured to contain the metadata in such scenarios. Another possibility is the establishment of Subscriptions comprising only the metadata(ModelChange or SemanticChange Events, see above).

To enable each of the possible scenarios for metadata handling outlined above, the SerializationScope can be adjusted in various ways (see chapter 6.2).