Glossary · Modelling

Address space

In OPC UA, the address space is the complete set of nodes and references a server exposes to clients. It is a directed graph, not a tree, entered at the RootFolder i=84 and its Objects, Types and Views folders. Its contents are server-specific and may change while you are connected.

One graph, four entry points

Every server presents the same skeleton: RootFolder at i=84 organising ObjectsFolder at i=85, TypesFolder at i=86 and ViewsFolder at i=87, with the Server object at i=2253 under Objects. Instances live under i=85, type definitions under i=86. Those five identifiers are the only addresses you can assume on an unknown server, and they are where every diagnostic browse starts.

It is not a tree and it is not a filesystem

Nodes can be reached by several paths, non-hierarchical references such as HasTypeDefinition and HasInterface jump sideways out of the visible tree, and cycles are legal. A browse client draws a tree because it has to draw something. Any traversal you write needs a visited set of NodeIds, and any interpretation of a node needs its type definition rather than its position in the tree.

It changes at runtime

Address spaces are not static. Servers add namespaces and nodes when a nodeset is loaded, when an aggregated downstream server connects, when a device is plugged in or a program is downloaded. A conforming server reports structural changes with GeneralModelChangeEvent and deleted nodes answer with BadObjectDeleted. Long-running clients that cache resolved NodeIds should subscribe to model change events on the Server object rather than assume yesterday's map still holds.

Size is an engineering constraint

A gateway in front of a large PLC estate can expose hundreds of thousands of nodes, and a naive recursive browse will exhaust the server's continuation points and return BadNoContinuationPoints. Browse with a ReferenceTypeId, a NodeClassMask and a ResultMask, request a sensible MaxReferencesPerNode, release continuation points you abandon, and prefer type-driven discovery or TranslateBrowsePathsToNodeIds over walking the whole graph.

The mistake people make: Exporting a full browse of a server once and treating the resulting node list as the machine's permanent interface. Namespace indexes shift, optional nodes appear and disappear with firmware, and aggregating servers change shape when a downstream device drops. Store namespace URIs and browse paths, re-resolve at connect time, and subscribe to GeneralModelChangeEvent if the session is long-lived.

Defined in: Part 3 - Address Space Model defines the address space, its nodes and references; Part 4 - Services defines Browse, BrowseNext and TranslateBrowsePathsToNodeIds; Part 5 - Information Model defines the standard skeleton.

Last verified 7 September 2026 against OPC UA 1.05.07. OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Free download
OPC UA Server Acceptance Test Pack
A 40-check acceptance test you run against a vendor's server before commissioning sign-off. Weighted scoring, three hard gates, and a one-page verdict for the supplier meeting.
Get the free test pack →
Free, no course, no login