OPC 10000-6: UA Part 6: Mappings


Released 1.05.04

2024-11-29

This document is subject to the license terms described here.

The general OPC Foundation specification license agreement also applies and can be found here.

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


1 Scope 2 Normative references 3 Terms, definitions and abbreviated terms 3.1 Terms and definitions 3.1.1 CertificateDigest 3.1.2 DataEncoding 3.1.3 DefaultValue 3.1.4 DevelopmentPlatform 3.1.5 Mapping 3.1.6 VerboseEncoding 3.1.7 OctetString 3.1.8 CompactEncoding 3.1.9 SecurityProtocol 3.1.10 StackProfile 3.1.11 TransportConnection 3.1.12 TransportProtocol 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 Number, Integer and UInteger 5.1.7 Structures and Unions 5.1.8 ExtensionObject 5.1.9 Variant 5.1.10 Decimal 5.1.11 Null, Empty and Zero-Length Arrays 5.1.12 QualifiedName, NodeId and ExpandedNodeId String Encoding 5.1.13 Name Encoding Rules 5.1.14 Structure FieldPath Encoding Rules 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 (Deprecated) 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 (Deprecated) 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.4.1.1 Compact 5.4.4.1.2 Verbose 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 MessageChunkstructure 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.1 Secure Channel Handshake 6.8.2 UserIdentityToken Encryption 6.8.3 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 Binary Encoding 7.4.5 JSON Encoding 7.5 WebSockets 7.5.1 Overview 7.5.2 Sub-Protocols 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 WSDL 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 Annex G (normative)Mapping to JSON Schema G.1 Overview G.2 JSON Schema Mapping G.3 OpenAPI Mapping Annex H (normative)Reversible and NonReversible Encoding (deprecated) H.1 Overview H.2 NodeId H.3 ExpandedNodeId H.4 StatusCode H.5 QualifiedName H.6 LocalizedText H.7 ExtensionObject H.8 Variant H.9 Arrays H.10 Unions