Reference

OPC UA glossary

One concept per page, defined precisely, with the mistake engineers actually make with it. These are the terms the specification uses and the ones that turn up in error messages, vendor documentation and job descriptions.

134 pages

Address space 20

BrowseNameIn OPC UA, a BrowseName is a node's machine-readable name: a QualifiedName pairing a namespace index with a non-localised text string. Browse paths anDataTypeIn OPC UA, a DataType is the NodeClass that defines the type of a Variable's value. DataType nodes form a hierarchy rooted at BaseDataType covering thDisplayNameIn OPC UA, DisplayName is a node's human-readable label, held as a LocalizedText with a locale identifier and text. Clients show it in browse trees anHasComponentIn OPC UA, HasComponent is the hierarchical ReferenceType expressing composition: the target node is a constituent part of the source. It is identifieHasPropertyIn OPC UA, HasProperty is the hierarchical ReferenceType linking a node to a Property: a Variable of type PropertyType holding metadata about its pareHasSubtypeIn OPC UA, HasSubtype is the hierarchical ReferenceType that builds type hierarchies: it points from a supertype to a subtype, with the inverse name SHasTypeDefinitionIn OPC UA, HasTypeDefinition is the non-hierarchical ReferenceType linking an instance to its type: every Object points at an ObjectType and every VarMethodIn OPC UA, a Method is the NodeClass representing a callable server-side procedure. It is invoked with the Call service against an object NodeId plus Namespace indexIn OPC UA, a namespace index is the UInt16 position of a namespace URI in a server's NamespaceArray, and it is the first half of every NodeId and QualNamespace URIIn OPC UA, a namespace URI is the globally unique string that identifies who defined a set of nodes, for example http://opcfoundation.org/UA/MachineryNamespaceArrayIn OPC UA, the NamespaceArray is a String array Variable on the Server object that maps namespace indexes to namespace URIs by array position. Index 0NodeClassIn OPC UA, NodeClass is the mandatory attribute stating what kind of node you are looking at. There are exactly eight: Object, Variable, Method, ObjecNodeIdIn OPC UA, a NodeId is the unique address of a node inside a server's address space. It combines a namespace index with an identifier that is Numeric ObjectIn OPC UA, an Object is the NodeClass that structures the address space: it holds no value of its own but groups Variables, Methods and other Objects,ObjectTypeIn OPC UA, an ObjectType is the NodeClass that defines the shape of Objects: which Variables, Methods, child Objects and events an instance of it has.OrganizesIn OPC UA, Organizes is the hierarchical ReferenceType expressing loose membership: the target node appears under the source, typically a Folder, withReferenceTypeIn OPC UA, a ReferenceType is the NodeClass that defines the meaning of a reference between two nodes. Every reference is typed, directed and named byVariableIn OPC UA, a Variable is the NodeClass that holds a value. Its Value attribute is a DataValue - value, StatusCode and timestamps - described by the DaVariableTypeIn OPC UA, a VariableType defines the shape of Variables: the DataType, ValueRank and ArrayDimensions its instances take, and the Properties they carrViewIn OPC UA, a View is the NodeClass that defines a restricted subset of the address space for browsing. A client passes the View's NodeId in a ViewDesc

Modelling 15

Address spaceIn 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 tCompanion specificationIn OPC UA, a companion specification is an information model standardised by the OPC Foundation with an industry body, defining the types one machine DataTypeDefinitionIn OPC UA, DataTypeDefinition is the attribute on a DataType node that describes a server-defined structure, union or enumeration field by field. IntrEnumerationIn OPC UA, an Enumeration is a DataType whose values are a fixed set of named integers. Every enumeration is encoded as an Int32 on the wire, whateverInformation modelIn OPC UA, an information model is a set of type definitions and standard instances published in its own namespace, so that the same machine concept lInstance declarationIn OPC UA, an instance declaration is a node that belongs to a type definition rather than to a running instance: a child of an ObjectType or VariableInterfaceIn OPC UA, an Interface is a type that adds a named set of children to any node that references it with HasInterface, independent of the node's place Mandatory / OptionalIn OPC UA, Mandatory and Optional are the two modelling rules that decide whether an instance must carry a declared child node. Mandatory children areModelling ruleIn OPC UA, a modelling rule is the node attached to an instance declaration by a HasModellingRule reference that says what an instantiation of the typNodeSet2In OPC UA, NodeSet2 is the normative XML serialisation of an address space, defined as UANodeSet in Part 6 Annex F. Every released companion specificaOptional fieldsIn OPC UA, optional fields are Structure fields that may be present or absent per value. A structure declaring them has StructureType StructureWithOptStructure / ExtensionObjectIn OPC UA, a Structure is a DataType with named fields, and an ExtensionObject is the wire container that carries one: an encoding NodeId plus the encType dictionary (legacy)In OPC UA, a type dictionary is the pre-1.04 mechanism for describing server-defined structures: an OPC Binary .bsd or XML schema document published aType hierarchyIn OPC UA, the type hierarchy is the tree of type nodes built from HasSubtype references. There are four of them, rooted at BaseObjectType, BaseVariabUnionIn OPC UA, a Union is a Structure subtype that carries exactly one of its declared fields at a time. On the wire it is a UInt32 switch value naming th

Connection 19

ApplicationUriThe ApplicationUri is the globally unique identity of one OPC UA application instance, such as urn:edge01:Contoso:Publisher. It appears in the ApplicaDiscovery endpointA discovery endpoint is an endpoint that answers the Discovery Service Set - FindServers and GetEndpoints - without requiring a session, and normally EndpointIn OPC UA, an endpoint is one concrete way to connect to a server: a URL, a security policy, a MessageSecurityMode and a list of accepted user identitEndpointDescriptionAn EndpointDescription is the structure GetEndpoints returns for each endpoint. It carries EndpointUrl, the server's ApplicationDescription, the serveGetEndpointsGetEndpoints is the service that asks a server which endpoints it publishes. It runs on the discovery endpoint without a session and, by convention, oHTTPS transportOPC UA over HTTPS uses opc.https:// or https:// and three profiles. https-uabinary tunnels UA Binary secure-channel messages one chunk per HTTP POST aKeep-aliveKeep-alive in OPC UA means two different mechanisms. The session keep-alive is a periodic cheap read the client makes to prove the session is alive anLocal Discovery ServerA Local Discovery Server is a small OPC UA server that runs on a host, listens on port 4840 and keeps a register of the OPC UA servers on that machineopc.tcpopc.tcp:// is the URL scheme of OPC UA's native transport, profile uatcp-uasc-uabinary: UA Binary messages inside a UA Secure Conversation channel on OpenAPI / REST mappingThe OpenAPI mapping is a REST-style surface for the OPC UA service set: POST /<service> with the bare service request as JSON. The OPC Foundation publPort 48404840/tcp is the registered default port for opc.tcp and for the Local Discovery Server. Related defaults worth knowing: 4843 for secure WebSocket and ProductUriThe ProductUri identifies the software product rather than the running instance: every copy of the same product carries the same ProductUri, assigned Reverse connectReverse connect inverts who dials. The server opens the TCP connection outbound to a client that is listening, sends a ReverseHello, and the client thReverseHelloReverseHello is the OPC UA TCP message, type code RHE, that a server sends immediately after dialling out to a listening client. It carries the serverSecure channelA secure channel is the transport-level security context between a client and a server, created by OpenSecureChannel. The asymmetric handshake authentSessionA session is the application-level context between client and server, created by CreateSession and made usable by ActivateSession. It carries the authSession timeoutThe session timeout is how long a server keeps a session alive without receiving any request on it. The client proposes RequestedSessionTimeout in CreTransport profileA transport profile URI names the exact combination of URL scheme, wire encoding and security mechanism an endpoint uses - uatcp-uasc-uabinary for opcWebSocket transportOPC UA over WebSockets uses the opc.wss:// or wss:// scheme, default port 4843, and comes in two shapes. wss-uasc-uabinary carries the ordinary UA Bin

Subscriptions 19

DataChangeFilterA DataChangeFilter is the filter attached to a data MonitoredItem. It has three fields: Trigger (Status, StatusValue, StatusValueTimestamp), DeadbandTDataChangeTriggerDataChangeTrigger is the field of a DataChangeFilter that defines what counts as a change: Status reports only StatusCode changes, StatusValue - the dDeadband (absolute)An absolute deadband suppresses a data change unless the new value differs from the last reported one by at least DeadbandValue, expressed in the valuDeadband (percent)A percent deadband expresses the threshold as a percentage of the item's EURange span, so 1.0 on a 0 to 200 bar range means 2 bar. It requires the nodDiscard oldestDiscardOldest is the per-MonitoredItem boolean deciding which notification is thrown away when the queue is full. True, the usual default, discards thEURangeEURange is a Property of an AnalogItemType Variable holding a Range structure with the Low and High engineering-unit limits of the value. It is what aHeartbeatA heartbeat is a client-side or gateway-side watchdog that re-emits a monitored item's last value when the server has reported nothing about it for a KeepAliveCountMaxKeepAliveCount is the number of publishing intervals a subscription may produce no notifications before the server sends an empty keep-alive messagLifetime countLifetimeCount is the number of publishing intervals a subscription may go without receiving a Publish request before the server deletes it. The serverMonitoredItemA MonitoredItem is the server-side object that watches one attribute of one node - usually the Value - samples it at its own sampling interval, applieMonitoring modeMonitoringMode is a per-item switch with three states. Disabled means the server does not sample the item at all. Sampling means it samples and queuesOverflow bitWhen a MonitoredItem queue overflows, the server sets an InfoBit inside the surviving DataValue's StatusCode rather than returning an error. The code Publish requestPublish is the long-poll service that carries notifications from server to client. The client keeps several Publish requests outstanding on the sessioPublishing intervalThe publishing interval is the cyclic rate at which a subscription drains its MonitoredItems' queues into one NotificationMessage. It is a delivery raQueue sizeQueueSize is how many notifications a MonitoredItem may hold between publishing cycles. Size it as the publishing interval divided by the sampling intSampling intervalThe sampling interval is the rate at which a server samples one MonitoredItem's attribute and evaluates its filter. It is per item, not per subscriptiSubscriptionA subscription is the server-side container that groups MonitoredItems and delivers their notifications on one cyclic publishing interval, in responseTransferSubscriptionsTransferSubscriptions moves existing subscriptions from a previous session to a new one, so a reconnecting client keeps its MonitoredItems, queues andTriggeringTriggering links MonitoredItems so that when one triggering item reports, a set of linked items release whatever they have queued. Set with SetTrigger

Data 14

AccessLevelIn OPC UA, AccessLevel is a bit-mask attribute on a Variable declaring what the server allows on that node: current read, current write, history read,ArrayDimensionsIn OPC UA, ArrayDimensions is an optional Variable attribute giving the length of each dimension of an array value. It has one entry per dimension decDataValueIn OPC UA, a DataValue is the container every read, write and subscription notification uses. It holds the Value as a Variant, a StatusCode giving theEngineering unit (UNECE)In OPC UA, engineering units are carried by an EUInformation structure on an AnalogItemType variable, using the code list from UNECE Recommendation 20IndexRangeIn OPC UA, IndexRange is a string parameter on Read, Write and CreateMonitoredItems that selects part of an array value instead of the whole thing. A Non-reversible JSON encodingIn OPC UA, non-reversible JSON encoding is the compact JSON form that drops type information to produce plain, human-readable values. It cannot be rouReversible JSON encodingIn OPC UA, reversible JSON encoding is the JSON form that keeps full type information, so a decoder can reconstruct the original Variant, NodeId and sServerTimestampIn OPC UA, the ServerTimestamp in a DataValue is the time the OPC UA server received or last updated the value in its own address space. It is measureSourceTimestampIn OPC UA, the SourceTimestamp in a DataValue is the time the data source itself produced or last verified the value. It is the timestamp to store in StatusCodeIn OPC UA, a StatusCode is a 32-bit numeric result carried by every service response, operation result and DataValue. Its upper bits give the severityTimestampsToReturnIn OPC UA, TimestampsToReturn is a parameter on Read, HistoryRead and CreateMonitoredItems that tells the server which timestamps to include in each DUA Binary encodingIn OPC UA, UA Binary is the default wire encoding: a compact, little-endian, unpadded serialisation of every service message and data type. It is whatValueRankIn OPC UA, ValueRank is a Variable or VariableType attribute declaring the dimensionality of the value. Minus one means a scalar, one or more means thVariantIn OPC UA, a Variant is the self-describing value container that can hold any of the built-in types, or an array or matrix of them. It carries its own

PubSub 10

DataSetReaderIn OPC UA PubSub, a DataSetReader is the subscriber-side counterpart of a DataSetWriter. It filters arriving NetworkMessages by PublisherId, WriterGroDataSetWriterIn OPC UA PubSub, a DataSetWriter publishes one PublishedDataSet into a WriterGroup. It owns the DataSetWriterId that identifies its messages on the wDelta frameIn OPC UA PubSub, a delta frame is a DataSetMessage that carries only the fields whose values changed since the previous message, each tagged with itsKey frameIn OPC UA PubSub, a key frame is a DataSetMessage carrying every field of the PublishedDataSet rather than only the changed ones. It is what lets a suPublishedDataSetIn OPC UA PubSub, a PublishedDataSet defines what a publisher makes available: an ordered list of published fields selected from the address space, plSecurity Key ServiceIn OPC UA, a Security Key Service is the component that distributes the symmetric group keys PubSub uses to sign and encrypt messages. PubSub has no sSparkplug BSparkplug B is an Eclipse Foundation specification that adds a defined topic namespace, a Protobuf payload and strict connection-state handling to plaUADPIn OPC UA, UADP is the compact binary message mapping used by PubSub, defined in Part 14. It carries a NetworkMessage holding one or more DataSetMessaUnified NamespaceA Unified Namespace is an architectural pattern, not an OPC UA feature: one broker-hosted, hierarchically named, always-current view of plant state thWriterGroupIn OPC UA PubSub, a WriterGroup batches DataSetWriters into a single NetworkMessage and owns the timing: PublishingInterval, KeepAliveTime, priority,

Security 18

Anonymous accessIn OPC UA, anonymous access means a session activated with an AnonymousIdentityToken: no user credential is presented. It is independent of channel seApplication instance certificateIn OPC UA, an application instance certificate is the X.509v3 certificate that identifies one installed instance of a client or server. Its Subject AlAudit eventIn OPC UA, an audit event is a server-generated event recording a security-relevant action: a channel opened, a session created or activated, a certifCertificate push vs pullIn OPC UA, pull and push are the two Part 12 models for provisioning certificates. In pull, the device asks a Global Discovery Server for a certificatCRLIn OPC UA, a CRL is the Certificate Revocation List a CA publishes listing certificates it has withdrawn before their expiry date. Each CA in your truGlobal Discovery ServerIn OPC UA, a Global Discovery Server is the Part 12 infrastructure server that holds an enterprise-wide register of applications and acts as their cerIssuer storeIn OPC UA, the issuer store holds CA certificates needed to complete a certificate chain without granting them trust. It is deliberately separate fromMessageSecurityModeIn OPC UA, MessageSecurityMode is the per-endpoint setting that says what is done to every message on a secure channel: None, Sign, or SignAndEncrypt.NonceIn OPC UA, a nonce is a single-use random value exchanged during OpenSecureChannel and ActivateSession. Channel nonces are the input to symmetric key Permission / RolePermissionsIn OPC UA, RolePermissions is the node attribute that lists which roles may do what to that node - browse, read, write, call, read or modify history, Rejected storeIn OPC UA, the rejected store is the PKI directory where an application parks a certificate it just refused. It exists for one purpose: to give an admRole (Part 18)In OPC UA, a Role is the Part 18 unit of authorisation: a named set of permissions that identities are mapped into, rather than permissions granted toSecurity policyIn OPC UA, a security policy is a named suite of cryptographic algorithms - identified by a URI such as Basic256Sha256 or Aes256_Sha256_RsaPss - that Self-signed certificateIn OPC UA, a self-signed certificate is an application instance certificate that signs itself instead of being issued by a CA. It authenticates a peerSign vs SignAndEncryptIn OPC UA, Sign authenticates both applications by certificate and detects tampering, but leaves message contents readable on the wire. SignAndEncryptSubject Alternative NameIn OPC UA, the Subject Alternative Name is the X.509 extension that carries an application's identity claims. It must contain the ApplicationUri as a Trust listIn OPC UA, the trust list is the set of certificates an application accepts as trust anchors: self-signed peer certificates, or the root and sub-CA ceUserIdentityTokenIn OPC UA, a UserIdentityToken is the credential a client presents in ActivateSession to say who the user is, as distinct from which application is co

Conformance 7

Alarms 7

History 5

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