OPC 10000-4: OPC Unified Architecture

Part 4: Services

Release 1.04
2017-11-22

Copyright (c) 2021 OPC Foundation
Generated on 4/8/2021 1:13:45 PM.

This document is subject to the license terms described here.

This document is a copy of the original which can be found here.

Table of Contents

1 Scope

2 Normative references

3 Terms, definitions and conventions
    3.1 Terms and definitions
    3.2 Abbreviations and symbols
    3.3 Conventions for Service definitions

4 Overview
    4.1 Service Set model
    4.2 Request/response Service procedures

5 Service Sets
    5.1 General
    5.2 Service request and response header
    5.3 Service results
    5.4 Discovery Service Set
        5.4.1 Overview
        5.4.2 FindServers
        5.4.3 FindServersOnNetwork
        5.4.4 GetEndpoints
        5.4.5 RegisterServer
        5.4.6 RegisterServer2
    5.5 SecureChannel Service Set
        5.5.1 Overview
        5.5.2 OpenSecureChannel
        5.5.3 CloseSecureChannel
    5.6 Session Service Set
        5.6.1 Overview
        5.6.2 CreateSession
        5.6.3 ActivateSession
        5.6.4 CloseSession
        5.6.5 Cancel
    5.7 NodeManagement Service Set
        5.7.1 Overview
        5.7.2 AddNodes
        5.7.3 AddReferences
        5.7.4 DeleteNodes
        5.7.5 DeleteReferences
    5.8 View Service Set
        5.8.1 Overview
        5.8.2 Browse
        5.8.3 BrowseNext
        5.8.4 TranslateBrowsePathsToNodeIds
        5.8.5 RegisterNodes
        5.8.6 UnregisterNodes
    5.9 Query Service Set
        5.9.1 Overview
        5.9.2 Querying Views
        5.9.3 QueryFirst
        5.9.4 QueryNext
    5.10 Attribute Service Set
        5.10.1 Overview
        5.10.2 Read
        5.10.3 HistoryRead
        5.10.4 Write
        5.10.5 HistoryUpdate
    5.11 Method Service Set
        5.11.1 Overview
        5.11.2 Call
    5.12 MonitoredItem Service Set
        5.12.1 MonitoredItem model
        5.12.2 CreateMonitoredItems
        5.12.3 ModifyMonitoredItems
        5.12.4 SetMonitoringMode
        5.12.5 SetTriggering
        5.12.6 DeleteMonitoredItems
    5.13 Subscription Service Set
        5.13.1 Subscription model
        5.13.2 CreateSubscription
        5.13.3 ModifySubscription
        5.13.4 SetPublishingMode
        5.13.5 Publish
        5.13.6 Republish
        5.13.7 TransferSubscriptions
        5.13.8 DeleteSubscriptions

6 Service behaviours
    6.1 Security
        6.1.1 Overview
        6.1.2 Obtaining and Installing an Application Instance Certificate
        6.1.3 Determining if a Certificate is Trusted
        6.1.4 Creating a SecureChannel
        6.1.5 Creating a Session
        6.1.6 Impersonating a User
    6.2 Authorization Services
        6.2.1 Overview
        6.2.2 Indirect Handshake with an Identity Provider
        6.2.3 Direct Handshake with an Identity Provider
    6.3 Session-less Service Invocation
        6.3.1 Description
        6.3.2 Parameters
        6.3.3 Service results
    6.4 Software Certificates
    6.5 Auditing
        6.5.1 Overview
        6.5.2 General audit logs
        6.5.3 General audit Events
        6.5.4 Auditing for Discovery Service Set
        6.5.5 Auditing for SecureChannel Service Set
        6.5.6 Auditing for Session Service Set
        6.5.7 Auditing for NodeManagement Service Set
        6.5.8 Auditing for Attribute Service Set
        6.5.9 Auditing for Method Service Set
        6.5.10 Auditing for View, Query, MonitoredItem and Subscription Service Set
    6.6 Redundancy
        6.6.1 Redundancy overview
        6.6.2 Server Redundancy
        6.6.3 Client Redundancy
        6.6.4 Network Redundancy
        6.6.5 Manually Forcing Failover
    6.7 Re-establishing connections
    6.8 Durable Subscriptions

7 Common parameter type definitions
    7.1 ApplicationDescription
    7.2 ApplicationInstanceCertificate
    7.3 BrowseResult
    7.4 ContentFilter
        7.4.1 ContentFilter structure
        7.4.2 ContentFilterResult
        7.4.3 FilterOperator
        7.4.4 FilterOperand parameters
    7.5 Counter
    7.6 ContinuationPoint
    7.7 DataValue
        7.7.1 General
        7.7.2 PicoSeconds
        7.7.3 SourceTimestamp
        7.7.4 ServerTimestamp
        7.7.5 StatusCode assigned to a value
    7.8 DiagnosticInfo
    7.9 DiscoveryConfiguration parameters
        7.9.1 Overview
        7.9.2 MdnsDiscoveryConfiguration
    7.10 EndpointDescription
    7.11 ExpandedNodeId
    7.12 ExtensibleParameter
    7.13 Index
    7.14 IntegerId
    7.15 MessageSecurityMode
    7.16 MonitoringParameters
    7.17 MonitoringFilter parameters
        7.17.1 Overview
        7.17.2 DataChangeFilter
        7.17.3 EventFilter
        7.17.4 AggregateFilter
    7.18 MonitoringMode
    7.19 NodeAttributes parameters
        7.19.1 Overview
        7.19.2 ObjectAttributes parameter
        7.19.3 VariableAttributes parameter
        7.19.4 MethodAttributes parameter
        7.19.5 ObjectTypeAttributes parameter
        7.19.6 VariableTypeAttributes parameter
        7.19.7 ReferenceTypeAttributes parameter
        7.19.8 DataTypeAttributes parameter
        7.19.9 ViewAttributes parameter
        7.19.10 GenericAttributes parameter
    7.20 NotificationData parameters
        7.20.1 Overview
        7.20.2 DataChangeNotification parameter
        7.20.3 EventNotificationList parameter
        7.20.4 StatusChangeNotification parameter
    7.21 NotificationMessage
    7.22 NumericRange
    7.23 QueryDataSet
    7.24 ReadValueId
    7.25 ReferenceDescription
    7.26 RelativePath
    7.27 RegisteredServer
    7.28 RequestHeader
    7.29 ResponseHeader
    7.30 ServiceFault
    7.31 SessionAuthenticationToken
    7.32 SignatureData
    7.33 SignedSoftwareCertificate
    7.34 StatusCode
        7.34.1 General
        7.34.2 Common StatusCodes
    7.35 TimestampsToReturn
    7.36 UserIdentityToken parameters
        7.36.1 Overview
        7.36.2 Token Encryption and Proof of Possession
        7.36.3 AnonymousIdentityToken
        7.36.4 UserNameIdentityToken
        7.36.5 X509IdentityTokens
        7.36.6 IssuedIdentityToken
    7.37 UserTokenPolicy
    7.38 VersionTime
    7.39 ViewDescription

Annex A (informative) BNF definitions
    A.1 Overview over BNF
    A.2 BNF of RelativePath
    A.3 BNF of NumericRange

Annex B (informative) Content Filter and Query Examples
    B.1 Simple ContentFilter examples
        B.1.1 Overview
        B.1.2 Example 1
        B.1.3 Example 2
    B.2 Complex Examples of Query Filters
        B.2.1 Overview
        B.2.2 Used type model
        B.2.3 Example Notes
        B.2.4 Example 1
        B.2.5 Example 2
        B.2.6 Example 3
        B.2.7 Example 4
        B.2.8 Example 5
        B.2.9 Example 6
        B.2.10 Example 7
        B.2.11 Example 8
        B.2.12 Example 9