OPC 10000-81: UAFX Part 81: Connecting Devices and Information Model
Released 1.00.03
2025-07-31
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.
This document defines nodes in the following nodesets:
        
            1 Scope
        
        
            2 Normative references
        
        
            3 Terms, definitions, abbreviated terms, and conventions
        
        
            3.1 Terms and definitions
        
        
            3.1.1 AggregatingServer
        
        
            3.2 Abbreviated terms
        
        
            3.3 Conventions used in this document
        
        
            3.3.1 Usage of Other column in type definitions
        
        
            3.3.2 Usage of Asset and FunctionalEntity
        
        
            3.3.3 Usage of Instance of a type
        
        
            3.3.4 ConformanceUnits and Node definitions
        
        
            4 OPC UA FX Information Model Overview
        
        
            4.1 Overview
        
        
            4.2 AutomationComponent model
        
        
            4.3 Asset model
        
        
            4.3.1 Overview
        
        
            4.3.2 Asset information
        
        
            4.3.3 Asset model relationships
        
        
            4.4 Functional model
        
        
            4.4.1 Overview
        
        
            4.4.2 FunctionalEntityType
        
        
            4.4.3 FunctionalEntity type hierarchy
        
        
            4.5 Relationships between FunctionalEntities and Assets
        
        
            4.6 FunctionalEntities and applications
        
        
            4.7 ConnectionManager
        
        
            4.7.1 Overview
        
        
            4.7.2 Creating / Monitoring / Closing Connections
        
        
            5 OPC UA FX Information Model concepts
        
        
            5.1 Overview
        
        
            5.2 Identity and compatibility verification
        
        
            5.2.1 Overview
        
        
            5.2.2 Asset verification
        
        
            5.2.2.1 Overview
        
        
            5.2.2.2 Asset identity
        
        
            5.2.2.3 Asset compatibility
        
        
            5.2.3 FunctionalEntity verification
        
        
            5.3 ControlGroups
        
        
            5.4 ConfigurationData
        
        
            5.5 Logical connections
        
        
            5.5.1 Overview
        
        
            5.5.2 Generation, deployment, and modification
        
        
            5.5.3 Establishing and closing Connections
        
        
            5.5.4 Cleaning up Connections
        
        
            5.5.4.1 Overview
        
        
            5.5.4.2 Operation
        
        
            5.5.5 Persistent and preconfigured objects
        
        
            5.5.6 Relationship to OPC UA communication models
        
        
            5.5.6.1 Overview
        
        
            5.5.6.2 PubSub
        
        
            5.5.6.2.1 Overview
        
        
            5.5.6.2.2 Single Connection using unicast network messages
        
        
            5.5.6.2.3 Multiple Connections using unicast network messages
        
        
            5.5.6.2.4 Multiple Connections using multicast network messages
        
        
            5.5.6.2.5 DataSetMetaData
        
        
            5.6 Health
        
        
            5.7 AliasNames and OPC UA FX
        
        
            5.8 Aggregation of OPC UA FX Servers
        
        
            5.9 Well Known Roles
        
        
            6 OPC UA FX ObjectTypes
        
        
            6.1 OPC UA FX ObjectTypes overview
        
        
            6.2 AutomationComponentType
        
        
            6.2.1 Overview
        
        
            6.2.2 AutomationComponentType definition
        
        
            6.2.3 AcDescriptorType definition
        
        
            6.2.4 EstablishConnections method
        
        
            6.2.4.1 Overview
        
        
            6.2.4.2 EstablishConnections signature
        
        
            6.2.4.3 EstablishConnections behaviour
        
        
            6.2.4.3.1 Overview
        
        
            6.2.4.3.2 Command VerifyAssetCmd
        
        
            6.2.4.3.3 Command VerifyFunctionalEntityCmd
        
        
            6.2.4.3.4 Command ReserveCommunicationIdsCmd
        
        
            6.2.4.3.4.1 General
        
        
            6.2.4.3.4.2 PubSub
        
        
            6.2.4.3.4.3 Client Server
        
        
            6.2.4.3.5 Command CreateConnectionEndpointCmd
        
        
            6.2.4.3.6 Command EstablishControlCmd
        
        
            6.2.4.3.7 Command SetConfigurationDataCmd
        
        
            6.2.4.3.8 Command ReassignControlCmd
        
        
            6.2.4.3.9 Command SetCommunicationConfigurationCmd
        
        
            6.2.4.3.9.1 General
        
        
            6.2.4.3.9.2 PubSub
        
        
            6.2.4.3.9.3 Client Server
        
        
            6.2.4.3.10 Command EnableCommunicationCmd
        
        
            6.2.4.3.10.1 General
        
        
            6.2.4.3.10.2 PubSub
        
        
            6.2.4.3.10.3 Client Server
        
        
            6.2.4.3.11 Abort
        
        
            6.2.5 CloseConnections method
        
        
            6.2.5.1 CloseConnections signature
        
        
            6.2.5.2 CloseConnections behaviour
        
        
            6.2.6 AutomationComponentCapabilitiesType
        
        
            6.2.7 PublisherCapabilitiesType
        
        
            6.2.8 SubscriberCapabilitiesType
        
        
            6.3 FxAssetType definition
        
        
            6.3.1 Overview
        
        
            6.3.2 FxAssetType definition
        
        
            6.3.3 VerifyAsset method
        
        
            6.3.4 AssetConnectorType definition
        
        
            6.3.5 SlotType definition
        
        
            6.3.6 SocketType definition
        
        
            6.3.7 ClampType definition
        
        
            6.3.8 ClampBlockType definition
        
        
            6.4 FunctionalEntityType definition
        
        
            6.4.1 Overview
        
        
            6.4.2 FunctionalEntityType definition
        
        
            6.4.3 Verify method
        
        
            6.4.4 InputsFolderType
        
        
            6.4.5 OutputsFolderType
        
        
            6.4.6 ConfigurationDataFolderType
        
        
            6.4.6.1 Overview
        
        
            6.4.6.2 ConfigurationDataFolderType definition
        
        
            6.4.6.3 SetStoredVariables method
        
        
            6.4.6.4 ClearStoredVariables Method
        
        
            6.4.6.5 ListStoredVariables
        
        
            6.4.7 FunctionalEntityCapabilitiesType
        
        
            6.4.8 ConnectionEndpointsFolderType
        
        
            6.4.9 ControlGroupsFolderType
        
        
            6.5 ControlGroupType
        
        
            6.5.1 Overview
        
        
            6.5.2 ControlGroupType definition
        
        
            6.5.3 EstablishControl method
        
        
            6.5.4 ReleaseControl method
        
        
            6.5.5 ReassignControl method
        
        
            6.5.6 ControlItemFolderType
        
        
            6.6 ConnectionEndpointType
        
        
            6.6.1 Overview
        
        
            6.6.2 ConnectionEndpointType definition
        
        
            6.6.3 PubSubConnectionEndpointType definition
        
        
            6.6.4 ClientServerConnectionEndpointType
        
        
            6.7 ConnectionManagerType
        
        
            6.7.1 Overview
        
        
            6.7.2 ConnectionManagerType definition
        
        
            6.7.3 ConnectionManager behaviour
        
        
            6.7.3.1 Overview
        
        
            6.7.3.2 Establishing Connections
        
        
            6.7.3.3 Closing Connections
        
        
            6.7.4 EditConnectionConfigurationSets method
        
        
            6.7.5 ProcessConnectionConfigurationSets method
        
        
            6.7.5.1 Overview
        
        
            6.7.5.2 ProcessConnectionConfigurationSets signature
        
        
            6.7.5.3 ProcessConnectionConfigurationSets behaviour
        
        
            6.7.5.3.1 ActionEstablishConnectionsEnabled / ActionEstablishConnectionsDisabled / ActionEstablishConnections
        
        
            6.7.5.3.2 ActionRemoveConnections
        
        
            6.7.5.3.3 ActionEnableConnections
        
        
            6.7.5.3.4 ActionDisableConnections
        
        
            6.7.6 ConnectionManagerCapabilitiesType
        
        
            6.8 ConnectionConfigurationSetType
        
        
            6.8.1 Overview
        
        
            6.8.2 ConnectionConfigurationSetType definition
        
        
            6.9 ConnectionConfigurationSetStateMachineType
        
        
            6.9.1 Overview
        
        
            6.9.2 ConnectionConfigurationSetStateMachineType definition
        
        
            6.10 ConnectionConfigurationType
        
        
            6.10.1 Overview
        
        
            6.10.2 ConnectionConfigurationType definition
        
        
            6.11 ConnectionEndpointConfigurationType
        
        
            6.11.1 Overview
        
        
            6.11.2 ConnectionEndpointConfigurationType definition
        
        
            6.12 ConnectionEndpointParameterType
        
        
            6.12.1 Overview
        
        
            6.12.2 ConnectionEndpointParameterType definition
        
        
            6.13 CommunicationFlowConfigurationType
        
        
            6.13.1 Overview
        
        
            6.13.2 CommunicationFlowConfigurationType definition
        
        
            6.13.3 PubSubCommunicationFlowConfigurationType
        
        
            6.13.3.1 Overview
        
        
            6.13.3.2 PubSubCommunicationFlowConfigurationType definition
        
        
            6.13.3.3 SubscriberConfigurationType definition
        
        
            6.13.4 ClientServerCommunicationFlowConfigurationType
        
        
            6.14 AutomationComponentConfigurationType
        
        
            6.14.1 Overview
        
        
            6.14.2 AutomationComponentConfigurationType definition
        
        
            6.15 AssetVerificationType
        
        
            6.15.1 Overview
        
        
            6.15.2 AssetVerificationType definition
        
        
            6.16 CommunicationModelConfigurationType
        
        
            6.16.1 Overview
        
        
            6.16.2 CommunicationModelConfigurationType definition
        
        
            6.16.3 PubSubCommunicationModelConfigurationType
        
        
            6.16.3.1 Overview
        
        
            6.16.3.2 PubSubCommunicationModelConfigurationType definition
        
        
            6.16.4 ClientServerCommunicationModelConfigurationType
        
        
            7 OPC UA FX Interfaces
        
        
            7.1 Overview
        
        
            7.2 IFunctionalEntityType Interface definition
        
        
            7.3 IAssetRevisionType Interface definition
        
        
            7.4 IAssetExtensionsType Interface definition
        
        
            8 OPC UA FX EventTypes
        
        
            8.1 Overview
        
        
            8.2 AuditUaFxEventType
        
        
            8.3 AuditConnectionCleanupEventType
        
        
            8.4 AuditUpdateMethodResultEventType
        
        
            8.5 ConnectionConfigurationSetEventType
        
        
            8.6 ConnectionConfigurationSetProcessingStartedEventType
        
        
            8.7 ConnectionConfigurationSetProcessingSucceededEventType
        
        
            8.8 ConnectionConfigurationSetProcessingFailedEventType
        
        
            8.9 EstablishConnectionErrorEventType
        
        
            8.10 CloseConnectionErrrorEventType
        
        
            9 OPC UA FX VariableTypes
        
        
            9.1 AggregatedHealthType
        
        
            9.1.1 Overview
        
        
            9.1.2 AggregatedHealthType definition
        
        
            9.2 ServerAddressType
        
        
            9.2.1 Overview
        
        
            9.2.2 ServerAddressType definition
        
        
            9.3 SecurityKeyServerAddressType
        
        
            9.3.1 Overview
        
        
            9.3.2 SecurityKeyServerAddressType definition
        
        
            10 OPC UA FX DataTypes
        
        
            10.1 AggregatedHealthDataType
        
        
            10.2 ApplicationId
        
        
            10.3 ApplicationIdentifierDataType
        
        
            10.4 AssetVerificationModeEnum
        
        
            10.5 AssetVerificationDataType
        
        
            10.6 AssetVerificationResultDataType
        
        
            10.7 AssetVerificationResultEnum
        
        
            10.8 ClampKindEnum
        
        
            10.9 CommHealthOptionSet
        
        
            10.10 CommunicationConfigurationDataType
        
        
            10.10.1 Overview
        
        
            10.10.2 CommunicationConfigurationDataType definition
        
        
            10.10.3 PubSubCommunicationConfigurationDataType
        
        
            10.10.4 ClientServerCommunicationConfigurationDataType
        
        
            10.11 CommunicationConfigurationResultDataType
        
        
            10.11.1 Overview
        
        
            10.11.2 CommunicationConfigurationResultDataType definition
        
        
            10.11.3 PubSubCommunicationConfigurationResultDataType
        
        
            10.11.4 ClientServerCommunicationConfigurationResultDataType
        
        
            10.12 CommunicationFlowQosDataType
        
        
            10.13 CommunicationLinkConfigurationDataType
        
        
            10.13.1 Overview
        
        
            10.13.2 CommunicationLinkConfigurationDataType definition
        
        
            10.13.3 PubSubCommunicationLinkConfigurationDataType
        
        
            10.13.4 ClientServerCommunicationLinkConfigurationDataType
        
        
            10.14 ConnectionEndpointConfigurationDataType
        
        
            10.15 ConnectionEndpointConfigurationResultDataType
        
        
            10.16 ConnectionEndpointDefinitionDataType
        
        
            10.17 ConnectionEndpointStatusEnum
        
        
            10.18 ConnectionEndpointParameterDataType
        
        
            10.18.1 Overview
        
        
            10.18.2 ConnectionEndpointParameterDataType definition
        
        
            10.18.3 PubSubConnectionEndpointParameterDataType
        
        
            10.18.4 ClientServerConnectionEndpointParameterDataType
        
        
            10.19 ConnectionDiagnosticsDataType
        
        
            10.20 ConnectionStateEnum
        
        
            10.21 DeviceHealthOptionSet
        
        
            10.22 FunctionalEntityVerificationResultEnum
        
        
            10.23 FxCommandMask
        
        
            10.24 FxEditEnum
        
        
            10.25 FxErrorEnum
        
        
            10.26 FxProcessEnum
        
        
            10.27 FxTimeUnitsEnum
        
        
            10.28 FxVersion
        
        
            10.29 IntervalRange
        
        
            10.30 LastActivityMask
        
        
            10.31 NodeIdArray
        
        
            10.32 NodeIdValuePair
        
        
            10.33 NodeIdTranslationDataType
        
        
            10.34 OperationalHealthOptionSet
        
        
            10.35 PortableKeyValuePair
        
        
            10.36 PortableNodeIdentifier
        
        
            10.37 PortableNodeIdentifierValuePair
        
        
            10.38 RelatedEndpointDataType
        
        
            10.39 PortableRelativePath
        
        
            10.40 PortableRelativePathElement
        
        
            10.41 PublisherQosDataType
        
        
            10.42 PubSubConnectionEndpointModeEnum
        
        
            10.43 ReserveCommunicationIdsDataType
        
        
            10.43.1 Overview
        
        
            10.43.2 ReserveCommunicationIdsDataType definition
        
        
            10.43.3 PubSubReserveCommunicationIdsDataType
        
        
            10.43.4 PubSubReserveCommunicationIds2DataType
        
        
            10.43.5 ClientServerReserveCommunicationIdsDataType
        
        
            10.44 ReserveCommunicationIdsResultDataType
        
        
            10.44.1 Overview
        
        
            10.44.2 ReserveCommunicationIdsResultDataType definition
        
        
            10.44.3 PubSubReserveCommunicationIdsResultDataType
        
        
            10.44.4 PubSubReserveCommunicationIdsResult2DataType
        
        
            10.44.5 ClientServerReserveCommunicationIdsResultDataType
        
        
            10.45 SecurityKeyServerAddressDataType
        
        
            10.46 ServerAddressDataType
        
        
            10.47 SocketKindEnum
        
        
            10.48 SubscriberQosDataType
        
        
            11 OPC UA FX ReferenceTypes
        
        
            11.1 ReferenceTypes overview
        
        
            11.2 ConnectedTo ReferenceType
        
        
            11.3 HasAutomationComponentConfiguration ReferenceType
        
        
            11.4 HasBuiltInAsset ReferenceType
        
        
            11.5 HasAssetToVerify ReferenceType
        
        
            11.6 HasCapability ReferenceType
        
        
            11.7 HasCharacteristic ReferenceType
        
        
            11.8 HasCMCapability ReferenceType
        
        
            11.9 HasCommunicationFlowConfiguration ReferenceType
        
        
            11.10 HasConnectionConfiguration ReferenceType
        
        
            11.11 HasConnectionEndpoint ReferenceType
        
        
            11.12 HasControlGroup ReferenceType
        
        
            11.13 HasInputGroup ReferenceType
        
        
            11.14 HasOutputGroup ReferenceType
        
        
            11.15 HasPart ReferenceType
        
        
            11.16 HasServerAddress ReferenceType
        
        
            11.17 HasSubFunctionalEntity ReferenceType
        
        
            11.18 IsPartOfRedundantAssetSet ReferenceType
        
        
            11.19 ToAutomationComponentConfiguration ReferenceType
        
        
            11.20 ToConnectionEndpointConfiguration ReferenceType
        
        
            11.21 ToDataSetReader ReferenceType
        
        
            11.22 ToDataSetWriter ReferenceType
        
        
            11.23 ToFlow ReferenceType
        
        
            11.24 ToInboundFlow ReferenceType
        
        
            11.25 ToOutboundFlow ReferenceType
        
        
            12 OPC UA FX Instances
        
        
            12.1 Overview
        
        
            12.2 FxRoot
        
        
            12.3 ConnectionManager
        
        
            13 Client functionality for ConnectionManager
        
        
            13.1 Overview
        
        
            13.2 Connecting to a Server
        
        
            13.2.1 Locating Server
        
        
            13.2.2 Session-less Client connection
        
        
            13.3 Locating nodes
        
        
            13.3.1 General
        
        
            13.3.2 PortableNodeId provided
        
        
            13.3.3 PortableRelativePath provided
        
        
            13.3.4 AliasName provided
        
        
            13.4 ConnectionManager and Security Key Server (SKS)
        
        
            13.5 ConnectionManager error reporting
        
        
            14 Namespaces
        
        
            14.1 Namespace metadata
        
        
            14.2 Handling of OPC UA namespaces
        
        
            Annex A (normative)OPC UA FX Namespace and mappings
        
        
            A.1 Namespace and identifiers for OPC UA FX Information Model
        
        
            A.2 Capability Identifier
        
        
            Annex B (informative)Applying OPC UA FX to other Information Models
        
        
            B.1 Overview
        
        
            B.2 Creating a new model based on OPC UA FX
        
        
            B.3 Extending an existing OPC UA model with OPC UA FX
        
        
            B.3.1 Overview
        
        
            B.3.2 Extending existing OPC UA models using Interfaces
        
        
            B.3.2.1 Extending an existing type
        
        
            B.3.2.2 Extending an instance of an existing type
        
        
            B.3.3 Extending an existing OPC UA model using AddIns
        
        
            B.3.3.1 General
        
        
            B.3.3.2 Extending an existing OPC UA model using AddIns
        
        
            B.3.4 Parallel use of OPC UA FX and existing UA models
        
        
            B.3.5 Summary
        
        
            Annex C (informative) Use of OPC UA FX with OPC UA Safety
        
        
            C.1 OPC UA Safety Information Model
        
        
            C.2 Usage of OPC UA safety Variables in a FunctionalEntity
        
        
            C.3 Usage of OPC UA safety Variables in Connections
        
        
            Annex D (informative)Information Model examples
        
        
            D.1 Overview
        
        
            D.2 Asset examples
        
        
            D.2.1 Modelling of Asset relationships
        
        
            D.2.2 Example single board computer model
        
        
            D.2.3 Example of a rack with controllers and I/O modules
        
        
            D.2.4 Verifying Assets
        
        
            D.3 Functional Entity examples
        
        
            D.3.1 Overview
        
        
            D.3.2 Modelling of FunctionalEntity relationships
        
        
            D.3.3 FunctionBlock example
        
        
            D.3.4 Examples of base aspects of FunctionalEntityType
        
        
            D.3.5 Example of nested FunctionalEntities
        
        
            D.3.6 Modelling InputData and OutputData
        
        
            D.3.6.1 Overview
        
        
            D.3.6.2 Using preconfigured DataSets
        
        
            D.3.6.3 Using preconfigured and customised DataSets
        
        
            D.3.6.4 Using customised DataSets
        
        
            D.3.6.5 Using groups
        
        
            D.3.7 ControlGroup examples
        
        
            D.3.7.1 Overview
        
        
            D.3.7.2 Example of a simple ControlGroup
        
        
            D.3.7.3 Example of a complex ControlGroup
        
        
            D.3.7.4 Using ControlGroups with Connections
        
        
            D.3.7.5 Using ControlGroups to expose functionality.
        
        
            D.3.8 Verifying FunctionalEntities
        
        
            D.4 AutomationComponent examples
        
        
            D.4.1 Raspberry Pi example
        
        
            Annex E (informative)ConnectionManager examples
        
        
            E.1 ConnectionConfigurationSet examples
        
        
            E.1.1 Overview
        
        
            E.1.2 Single logical connection
        
        
            E.1.3 Multiple logical connections
        
        
            E.1.3.1 Overview
        
        
            E.1.3.2 Multiple logical connections – two AutomationComponents
        
        
            E.1.3.3 Multiple logical connections – multiple AutomationComponents
        
        
            E.2 Establishing Connections
        
        
            E.2.1 Overview
        
        
            E.2.2 Interaction with the AutomationComponents
        
        
            E.2.2.1 For logical connections between two AutomationComponents
        
        
            E.2.2.2 For logical connections between multiple AutomationComponents
        
        
            E.3 Enable, disable, or remove Connections
        
        
            E.4 Configuration of PubSub-based Connections
        
        
            E.4.1 Overview
        
        
            E.4.2 Bidirectional connection
        
        
            E.4.3 Unidirectional connection with heartbeat
        
        
            E.4.4 Unidirectional connection
        
        
            E.4.5 Autonomous publisher
        
        
            E.4.6 Autonomous subscriber
        
        
            E.4.7 PubSub DataSets
        
        
            E.5 Interaction with an SKS
        
        
            E.6 ConnectionConfigurationSet and PubSubConfiguration
        
        
            E.6.1 Overview
        
        
            E.6.2 ConnectionConfigurationSet and WriterGroup
        
        
            E.6.3 ConnectionConfigurationSet and ReaderGroup
        
        
            E.6.4 ConnectionConfigurationSet and DataSetWriter
        
        
            E.6.5 ConnectionConfigurationSet and DataSetReader
        
        
            E.6.6 Loading / Saving ConnectionConfigurationSets
        
        
            Annex F (normative)Persistence of ConnectionConfigurationSets
        
        
            F.1 DataTypes for Connection Manager Configuration
        
        
            F.1.1 Overview
        
        
            F.1.2 Base principles
        
        
            F.1.2.1 References
        
        
            F.1.2.2 Namespaces
        
        
            F.1.2.3 SelectionListType
        
        
            F.1.2.4 Extensibility
        
        
            F.1.2.5 Optional fields
        
        
            F.1.3 ConnectionConfigurationSetConfDataType
        
        
            F.1.4 ConnectionConfigurationConfDataType
        
        
            F.1.5 ConnectionEndpointConfigurationConfDataType
        
        
            F.1.6 CommunicationFlowConfigurationConfDataType
        
        
            F.1.7 PubSubCommunicationFlowConfigurationConfDataType
        
        
            F.1.8 SubscriberConfigurationConfDataType
        
        
            F.1.9 AutomationComponentConfigurationConfDataType
        
        
            F.1.10 SecurityKeyServerAddressConfDataType
        
        
            F.1.11 ServerAddressConfDataType
        
        
            F.1.12 AssetVerificationConfDataType
        
        
            F.1.13 CommunicationModelConfigurationDataType
        
        
            F.1.14 PubSubCommunicationModelConfigurationDataType
        
        
            F.1.15 NodeIdentifier
        
        
            F.1.16 NodeIdentifierValuePair
        
        
            F.1.17 NodeIdTranslationConfDataType
        
        
            F.1.18 AddressSelectionDataType
        
        
            F.1.19 ReceiveQosSelectionDataType
        
        
            F.2 ConnectionConfigurationSet file content
        
        
            F.3 ConnectionManagerConfigurationType
        
        
            F.3.1 ConnectionManagerConfigurationType definition
        
        
            F.3.2 Open Method
        
        
            F.3.3 CloseAndUpdate method
        
        
            F.3.3.1 CloseAndUpdate signature
        
        
            F.3.3.2 CloseAndUpdate behaviour
        
        
            F.3.3.2.1 Overview
        
        
            F.3.3.2.2 ElementAdd
        
        
            F.3.3.2.3 ElementRemove
        
        
            F.3.3.2.4 ElementReplace
        
        
            F.3.4 ConnectionConfigurationSetOperation
        
        
            Annex G (Informative)Diagnostic Client
        
        
            G.1 Diagnostics Client