The symbolic name of each Node defined in this companion specification is its BrowseName, or, when it is part of another Node, the combination of the BrowseName of the other Node, a “.” and the BrowseName of itself. In this case “part of” means that the whole has a 0:HasProperty or 0:HasComponent Reference to its part. Since all Nodes not being part of another Node have a unique name in this companion specification, the symbolic name is unique.
The NamespaceUri for all NodeIds defined in this companion specification is defined in Annex A. The NamespaceIndex for this NamespaceUri is vendor-specific and depends on the position of the NamespaceUri in the server namespace table.
Note that this companion specification not only defines concrete Nodes, but also requires that some Nodes shall be generated, for example one for each Session running on the Server. The NodeIds of those Nodes are Server-specific, including the namespace. But the NamespaceIndex of those Nodes cannot be the NamespaceIndex used for the Nodes defined in this companion specification, because they are not defined by this companion specification but generated by the Server.
The text part of the BrowseNames for all Nodes defined in this companion specification is specified in the tables defining the Nodes. The NamespaceUri for all BrowseNames defined in this companion specification is defined in Annex A.
If the BrowseName is not defined by this companion specification, a namespace index prefix like ‘0:EngineeringUnits’ or ‘2:DeviceRevision’ is added to the BrowseName. This is typically necessary if a Property of another specification is overwritten or used in the OPC UA types defined in this companion specification. Table 88 provides a list of namespaces and their indexes as used in this companion specification.