5.7 Generated Data Type Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6 Services 109
6.1 Discovery Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.2 SecureChannel Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.3 Session Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.4 NodeManagement Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.5 View Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.6 Query Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.7 Attribute Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.8 Method Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.9 MonitoredItem Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.10 Subscription Service Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7 Server 121
7.1 Server Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
7.2 Server Lifecycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.3 Timed Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.4 Session Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7.5 Reading and Writing Node Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.6 Browsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.7 Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7.8 Information Model Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.9 Interacting with Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
7.10 Node Addition and Deletion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.11 Reference Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
7.12 Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.13 Update the Server Certificate at Runtime . . . . . . . . . . . . . . . . . . . . . . . . . 156
7.14 Utility Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
7.15 Async Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.16 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
7.17 Reverse Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8 Client 161
8.1 Client Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8.2 Client Lifecycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
8.3 Connect to a Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
8.4 Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
8.5 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
8.6 Asynchronous Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.7 Timed Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
8.8 Client Utility Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
9 PubSub 195
9.1 PubSub Information Model Representation . . . . . . . . . . . . . . . . . . . . . . . 197
9.2 Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.3 PublishedDataSets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
9.4 DataSetFields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
9.5 Custom Callback Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
9.6 WriterGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
9.7 WriterGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
9.8 DataSetWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
ii