Namespaces are used by OPC UA to create unique identifiers across different naming authorities. The Attributes NodeId and BrowseName are identifiers. A node in the UA Address Space is unambiguously identified using a NodeId. Unlike NodeIds, the BrowseName cannot be used to unambiguously identify a node. Different nodes may have the same BrowseName. They are used to build a browse path between two nodes or to define a standard Property.

Servers may often choose to use the same namespace for the NodeId and the BrowseName. However, if they want to provide a standard Property, its BrowseName shall have the namespace of the standards body although the namespace of the NodeId reflects something else, for example the EngineeringUnits propery. All NodeIds of nodes not defined in this specification shall not use the standard namespaces.

Table 131 provides a list of mandatory and optional namespaces used in an AutomationML OPC UA Server.

Table 131 – Namespaces used in a AutomationML Server

Namespace

Description

Use

http://opcfoundation.org/UA/

Namespace for NodeIds and BrowsNames defined in the OPC UA specification. This namespace shall have namespace index 0.

Mandatory

Local Server URI

Namespace for nodes defined in the local server. This may include types and instances used in a device represented by the server. This namespace shall have namespace index 1.

Mandatory

http://opcfoundation.org/UA/AML/

Namespace for NodeIds and BrowseNames defined in AutomationML. The namespace index is server specific.

Mandatory

http://opcfoundation.org/UA/AML/AMLLibs/

Namespace for NodeIds and BrowseNames defined in AutomationML libraries. The namespace index is server specific.

Optional