13.2 Handling of OPC UA Namespaces
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 AddressSpace 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 0:EngineeringUnits Property. All NodeIds of Nodes not defined in this document shall not use the standard namespaces.
Table provides a list of mandatory and optional namespaces used in an Additive Manufacturing OPC UA Server.
| NamespaceURI | Description |
| http://opcfoundation.org/UA/ | Namespace for NodeIds and BrowseNames defined in the OPC UA specification. This namespace shall have namespace index 0. |
| Local Server URI | Namespace for nodes defined in the local server. This namespace shall have namespace index 1. |
| http://opcfoundation.org/UA/DI/ | Namespace for NodeIds and BrowseNames defined in OPC 10000-100. The namespace index is Server specific. |
| http://opcfoundation.org/UA/Machinery/ | Namespace for NodeIds and BrowseNames defined in OPC 40001-1. The namespace index is Server specific. |
| http://opcfoundation.org/UA/IA/ | Namespace for NodeIds and BrowseNames defined in OPC 10000-200. The namespace index is Server specific. |
| http://opcfoundation.org/UA/MachineTool/ | Namespace for NodeIds and BrowseNames defined in OPC 40501-1. The namespace index is Server specific. |
| http://opcfoundation.org/UA/Dictionary/IRDI | Namespace for NodeIds for IRDIs using HasDictionaryEntry (defined for example by OPC 30081). The namespace index is server specific. |
| http://opcfoundation.org/UA/PADIM/ | Namespace for NodeIds and BrowseNames defined in OPC 30081. The namespace index is Server specific. |
| http://opcfoundation.org/UA/Machinery/ProcessValues/ | Namespace for NodeIds and BrowseNames defined in OPC 40001-2. The namespace index is Server specific. |
| http://opcfoundation.org/UA/ISA95-JOBCONTROL_V2/ | Namespace for NodeIds and BrowseNames defined in OPC 10031-4. The namespace index is Server specific. |
| http://opcfoundation.org/UA/Machinery/Jobs/ | Namespace for NodeIds and BrowseNames defined in OPC 40001-3. The namespace index is Server specific. |
| http://opcfoundation.org/UA/AdditiveManufacturing/ | Namespace for NodeIds and BrowseNames defined in this document. The namespace index is Server specific. |
| Vendor specific types | A Server may provide vendor-specific types like types derived from ObjectTypes defined in this document in a vendor-specific namespace. |
| Vendor specific instances | A Server provides vendor-specific instances of the standard types or vendor-specific instances of vendor-specific types in a vendor-specific namespace. It is recommended to separate vendor specific types and vendor specific instances into two or more namespaces. |
Table 37 provides a list of namespaces and their indices used for BrowseNames in this document. The default namespace of this document is not listed since all BrowseNames without prefix use this default namespace.
| NamespaceURI | Namespace Index | Example |
| http://opcfoundation.org/UA/ | 0 | 0:EngineeringUnits |
| http://opcfoundation.org/UA/DI/ | 2 | 2:Identification |
| http://opcfoundation.org/UA/Machinery/ | 3 | 3:Machines |
| http://opcfoundation.org/UA/IA/ | 4 | 4:BasicStacklightType |
| http://opcfoundation.org/UA/MachineTool/ | 5 | 5:MachineToolType |
| http://opcfoundation.org/UA/Machinery/ProcessValues/ | 8 | 8:ProcessValueType |
| http://opcfoundation.org/UA/ISA95-JOBCONTROL_V2/ | 9 | 9:ISA95JobOrderReceiverObjectType |
| http://opcfoundation.org/UA/Machinery/Jobs/ | 10 | 10:JobManagement |