OPC 10000-6: OPC Unified Architecture

Part 6: Mappings

Release 1.05.01
2022-02-21

Copyright (c) 2022 OPC Foundation
Generated on 2/25/2022 7:11:49 AM.

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 abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Overview

5 Data encoding
    5.1 General
        5.1.1 Overview
        5.1.2 Built-in Types
        5.1.3 Guid
        5.1.4 DateTime
        5.1.5 ByteString
        5.1.6 ExtensionObject
        5.1.7 Variant
        5.1.8 Decimal
        5.1.9 Null, Empty and Zero-Length Arrays
    5.2 OPC UA Binary
        5.2.1 General
        5.2.2 Built-in Types
            5.2.2.1 Boolean
            5.2.2.2 Integer
            5.2.2.3 Floating Point
            5.2.2.4 String
            5.2.2.5 DateTime
            5.2.2.6 Guid
            5.2.2.7 ByteString
            5.2.2.8 XmlElement
            5.2.2.9 NodeId
            5.2.2.10 ExpandedNodeId
            5.2.2.11 StatusCode
            5.2.2.12 DiagnosticInfo
            5.2.2.13 QualifiedName
            5.2.2.14 LocalizedText
            5.2.2.15 ExtensionObject
            5.2.2.16 Variant
            5.2.2.17 DataValue
        5.2.3 Decimal
        5.2.4 Enumerations
        5.2.5 Arrays
        5.2.6 Structures
        5.2.7 Structures with optional fields
        5.2.8 Unions
        5.2.9 Messages
    5.3 OPC UA XML
        5.3.1 Built-in Types
            5.3.1.1 General
            5.3.1.2 Boolean
            5.3.1.3 Integer
            5.3.1.4 Floating Point
            5.3.1.5 String
            5.3.1.6 DateTime
            5.3.1.7 Guid
            5.3.1.8 ByteString
            5.3.1.9 XmlElement
            5.3.1.10 NodeId
            5.3.1.11 ExpandedNodeId
            5.3.1.12 StatusCode
            5.3.1.13 DiagnosticInfo
            5.3.1.14 QualifiedName
            5.3.1.15 LocalizedText
            5.3.1.16 ExtensionObject
            5.3.1.17 Variant
            5.3.1.18 DataValue
            5.3.1.19 Subtypes of Built-in Types
        5.3.2 Decimal
        5.3.3 Enumerations
        5.3.4 Arrays
        5.3.5 Structures
        5.3.6 Structures with optional fields
        5.3.7 Unions
        5.3.8 Messages
    5.4 OPC UA JSON
        5.4.1 General
        5.4.2 Built-in Types
            5.4.2.1 General
            5.4.2.2 Boolean
            5.4.2.3 Integer
            5.4.2.4 Floating point
            5.4.2.5 String
            5.4.2.6 DateTime
            5.4.2.7 Guid
            5.4.2.8 ByteString
            5.4.2.9 XmlElement
            5.4.2.10 NodeId
            5.4.2.11 ExpandedNodeId
            5.4.2.12 StatusCode
            5.4.2.13 DiagnosticInfo
            5.4.2.14 QualifiedName
            5.4.2.15 LocalizedText
            5.4.2.16 ExtensionObject
            5.4.2.17 Variant
            5.4.2.18 DataValue
        5.4.3 Decimal
        5.4.4 Enumerations
        5.4.5 Arrays
        5.4.6 Structures
        5.4.7 Structures with optional fields
        5.4.8 Unions
        5.4.9 Messages

6 Message SecurityProtocols
    6.1 Security handshake
    6.2 Certificates
        6.2.1 General
        6.2.2 Application Instance Certificate
        6.2.3 User Certificates
        6.2.4 Issuer (CA) Certificates
        6.2.5 Certificate Revocation List (CRL)
        6.2.6 Certificate Chains
    6.3 Time synchronization
    6.4 UTC and International Atomic Time (TAI)
    6.5 Issued User Identity Tokens
        6.5.1 Kerberos
        6.5.2 JSON Web Token (JWT)
        6.5.3 OAuth2
            6.5.3.1 General
            6.5.3.2 Access Tokens
            6.5.3.3 Authorization Code
            6.5.3.4 Refresh Token
            6.5.3.5 Client Credentials
    6.6 WS Secure Conversation
    6.7 OPC UA Secure Conversation
        6.7.1 Overview
        6.7.2 MessageChunk structure
            6.7.2.1 Overview
            6.7.2.2 Message Header
            6.7.2.3 Security Header
            6.7.2.4 Sequence Header
            6.7.2.5 Message Footer
                6.7.2.5.1 Unauthenticated Encryption Algorithms
                6.7.2.5.2 Authenticated Encryption Algorithms
        6.7.3 MessageChunks and error handling
        6.7.4 Establishing a SecureChannel
        6.7.5 Deriving keys
        6.7.6 Verifying Message Security
    6.8 Elliptic Curve Cryptography (ECC)
        6.8.2 Secure Channel Handshake
        6.8.3 UserIdentityToken Encryption
        6.8.4 ECC Encrypted Secret

7 TransportProtocols
    7.1 OPC UA Connection Protocol
        7.1.1 Overview
        7.1.2 Message structure
            7.1.2.1 Overview
            7.1.2.2 Message Header
            7.1.2.3 Hello Message
            7.1.2.4 Acknowledge Message
            7.1.2.5 Error Message
            7.1.2.6 ReverseHello Message
        7.1.3 Establishing a connection
        7.1.4 Closing a connection
        7.1.5 Error handling
    7.2 OPC UA TCP
    7.3 SOAP/HTTP
    7.4 OPC UA HTTPS
        7.4.1 Overview
        7.4.2 Session-less Services
        7.4.3 XML Encoding
        7.4.4 OPC UA Binary Encoding
        7.4.5 JSON Encoding
    7.5 WebSockets
        7.5.1 Overview
        7.5.2 Protocol Mapping
        7.5.3 Security
    7.6 Well known addresses

8 Normative Contracts
    8.1 OPC Binary Schema
    8.2 XML Schema and WSDL
    8.3 Information Model Schema
    8.4 Formal definition of UA Information Model
    8.5 Constants
    8.6 DataType encoding
    8.7 Security configuration

Annex A (normative) Constants
    A.1 Attribute Ids
    A.2 Status Codes
    A.3 Numeric Node Ids
    A.4 Media Types

Annex B (normative) OPC UA NodeSet

Annex C (normative) Type declarations for the OPC UA native Mapping

Annex D (normative) WSDL for the XML Mapping
    D.1 XML Schema
    D.2 WDSL Port Types
    D.3 WSDL Bindings

Annex E (informative) Security settings management
    E.1 Overview
    E.2 SecuredApplication
    E.3 CertificateIdentifier
    E.4 CertificateStoreIdentifier
    E.5 CertificateList
    E.6 CertificateValidationOptions

Annex F (normative) Information Model XML Schema
    F.1 Overview
    F.2 UANodeSet
    F.3 UANode
    F.4 Reference
    F.5 RolePermission
    F.6 UAType
    F.7 UAInstance
    F.8 UAVariable
    F.9 UAMethod
    F.10 TranslationType
    F.11 UADataType
    F.12 DataTypeDefinition
    F.13 DataTypeField
    F.14 Variant
    F.15 Example
    F.16 UANodeSetChanges
    F.17 NodesToAdd
    F.18 ReferencesToChange
    F.19 ReferenceToChange
    F.20 NodesToDelete
    F.21 NodeToDelete
    F.22 UANodeSetChangesStatus
    F.23 NodeSetStatusList
    F.24 NodeSetStatus