6.6.3 PubSubConnectionEndpointType definition
PubSubConnectionEndpointType is a subtype of the ConnectionEndpointType. It extends the abstract ConnectionEndpointType with behaviour that is specific to the OPC UA PubSub communication model.
The PubSubConnectionEndpointType is illustrated in Figure 30.

The PubSubConnectionEndpointType is formally defined in Table 75 and Table 76.
| Attribute | Value | ||||
| BrowseName | 3:PubSubConnectionEndpointType | ||||
| IsAbstract | False | ||||
| References |
Node
Class | BrowseName | DataType | TypeDefinition | Other |
|---|---|---|---|---|---|
| Subtype of the 3:ConnectionEndpointType | |||||
| 0:HasComponent | Variable | 3:Mode | 2:PubSubConnectionEndpointModeEnum | 0:BaseDataVariableType | M |
| 0:HasComponent | Variable | 3:DataSetReaderPath | 0:String[] | 0:BaseDataVariableType | O |
| 0:HasComponent | Variable | 3:DataSetWriterPath | 0:String[] | 0:BaseDataVariableType | O |
| ConformanceUnits | |||||
|---|---|---|---|---|---|
| UAFX ConnectionEndpoint PubSub |
| SourceBrowsePath | Reference Type | IsForward | TargetBrowsePath | ||||||
| 3:ToDataSetReader | True |
| |||||||
| 3:ToDataSetWriter | True |
|
Mode defines the mode of the ConnectionEndpoint with respect to the Connection. The modes are formally defined in the PubSubConnectionEndpointModeEnum defined in Subclause 10.41.
If the PubSub configuration model is exposed, the DataSetReader associated with this PubSubConnectionEndpoint is referenced directly using a ToDataSetReader Reference. Otherwise, the DataSetReader is referenced by path using DataSetReaderPath.
If the PubSub configuration model is exposed, the DataSetWriter associated with this PubSubConnectionEndpoint is referenced directly using a ToDataSetWriter Reference. Otherwise, the DataSetWriter is referenced by path using DataSetWriterPath.
DataSetReaderPath provides a path to the DataSetReader associated with this PubSubConnectionEndpoint. The path is expressed as an array of strings, starting with the <PubSubConnection>, then the <ReaderGroup> and finally the <DataSetReader>. This path reflects the hierarchy of elements inside the PubSubConfiguration2DataType structure, i.e. the Name field for PubSubConnection, ReaderGroup and DataSetReader elements.
DataSetWriterPath provides a path to the DataSetWriter associated with this PubSubConnectionEndpoint. The path is expressed as an array of strings, starting with the <PubSubConnection>, then the <WriterGroup> and finally the <DataSetWriter>. This path reflects the hierarchy of elements inside the PubSubConfiguration2DataType structure (i.e. the Name field for PubSubConnection, WriterGroup and DataSetWriter elements).
Depending on Mode, the following references shall be created:
If Mode is Publisher, only a DataSetWriter shall be referenced directly or by path.
If Mode is Subscriber, only a DataSetReader shall be referenced directly or by path.
If Mode is PublisherSubscriber, a DataSetReader and a DataSetWriter shall be referenced directly or by path.
The referenced DataSetReader shall be present if the PubSubConnectionEndpoint references InputVariables or receives a heartbeat. The referenced DataSetReader shall be associated with a SubscribedDataSet that contains all of the referenced ConnectionEndpoint InputVariables. If no InputVariables are referenced, the referenced DataSetReader shall be associated with a null DataSet (heartbeat).
The referenced DataSetWriter shall be present if the PubSubConnectionEndpoint references OutputVariables or publishes a heartbeat. The referenced DataSetWriter shall be associated with a PublishedDataSet that contains all of the referenced ConnectionEndpoint OutputVariables. If no OutputVariables are referenced, the referenced DataSetWriter shall be associated with a null DataSet to publish the heartbeat.
The Status is determined based on the Status of the referenced DataSetReader and DataSetWriter. If a required referenced DataSetReader or DataSetWriter is missing, the Status shall be Initial.
For PubSubConnectionEndpoints with the Mode value of PublisherSubscriber, the Status shall be determined by the Status of the referenced DataSetReader and DataSetWriter as defined in Figure 31.

For PubSubConnectionEndpoints with Mode of Subscriber, the Status shall be determined by the Status of the referenced DataSetReader according to Figure 32.

For PubSubConnectionEndpoints with Mode of Publisher, the Status shall be determined by the Status of the referenced DataSetWriter according to Figure 33.

For the connection types autonomous publisher and autonomous subscriber (see 5.5.1), RelatedEndpoint Address shall be set to the Server address of the ConnectionEndpoint, the ConnectionEndpoint array shall be set to null or empty, and the ConnectionEndpointName to an empty String.
Annex E provides examples of PubSubConnectionEndpoints for the various types of Connections.