This OptionSet defines flags indicating the PubSubConfigurationRefDataType options. The value of the mask is null, if none of the bits is set.

The PubSubConfigurationRefDataType is used to reference a configuration element in a PubSubConfiguration2DataType structure. The PubSubConfigurationRefDataType indicates the element type referenced and defines the operation to be executed for the referenced configuration element. The possible element operations are ElementAdd, ElementMatch, ElementModify and ElementRemove.

Only one of the reference bits shall be set. If more than one of these bits are set, the operation shall fail.

The PubSubConfigurationRefMask values are formally defined in Table 212.

Table 212 – PubSubConfigurationRefMask values

Value

Bit No.

Description

ElementAdd

0

If this bit is set, the referenced elements is added to the PubSub configuration.

If the name of the element is null or empty a name is assigned.

If the PublisherId is null, the default PublisherId for the transport profile is assigned.

If WriterGroupId or DataSetWriterId are null, unique IDs are assigned.

If this bit is set, the ElementModify and ElementRemove bits shall be false. If more than one of these bits are set, the operation shall fail.

ElementMatch

1

If this bit is set, the Id and name shall be null and a matching element is searched. This is used to add children to an existing parent configuration object. This flag can be combined with the ElementAdd flag to either use an existing element or to add the element if it does not exist.

Match shall only be applied for ReferenceConnection, ReferenceWriterGroup and ReferenceReaderGroup. For all other references the match shall fail with Bad_InvalidArgument.

Match applied to ReferenceWriterGroup shall return Bad_InvalidState if the GroupHeader is active for the WriterGroup.

For the PubSubConnectionDataType, the following structure fields are used for the match, the others are ignored.

For the WriterGroupDataType, the following structure fields are used for the match, the others are ignored.

For the ReaderGroupDataType, the following structure fields are used for the match, the others are ignored.

For the ConnectionProperties and GroupProperties only the entries are compared for the match that are provided in the element to match. Additional properties contained in the existing configuration are ignored.

ElementModify

2

If this bit is set, the referenced element will be modified. The related element in the current PubSub configuration is referenced with matching the name of the elements. If no matching name is found, the element operation shall fail.

ElementRemove

3

If this bit is set, the referenced element will be removed. The related element in the current PubSub configuration is referenced with matching the name of the elements. If no matching name is found, the element operation shall fail.

A successful removal of the referenced element shall include the removal of all associated child elements.

ReferenceWriter

4

The element operation is applied to the referenced DataSetWriter.

ReferenceReader

5

The element operation is applied to the referenced DataSetReader.

ReferenceWriterGroup

6

The element operation is applied to the referenced WriterGroup.

ReferenceReaderGroup

7

The element operation is applied to the referenced ReaderGroup.

ReferenceConnection

8

The element operation is applied to the referenced PubSubConnection.

ReferencePubDataset

9

The element operation is applied to the referenced PublishedDataSet.

ReferenceSubDataset

10

The element operation is applied to the referenced SubscribedDataSet.

ReferenceSecurityGroup

11

The element operation is applied to the referenced SecurityGroup.

The access to the security groups may require different user credentials than access to the communication configuration elements.

ReferencePushTarget

12

The element operation is applied to the referenced PubSubKeyServerPushTarget.

The access to the push target configuration may require different user credentials than access to the communication configuration elements.

The PubSubConfigurationRefMask representation in the AddressSpace is formally defined in Table 213.

Table 213 – PubSubConfigurationRefMask definition

Attribute

Value

BrowseName

PubSubConfigurationRefMask

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the UInt32 type defined in OPC 10000-5.

0:HasProperty

Variable

OptionSetValues

LocalizedText[]

PropertyType

ConformanceUnits

PubSub Model Base