Glossary · Conformance

Facet

In OPC UA, a Facet is a reusable bundle of Conformance Units that a Profile composes: Data Access, Methods, Reverse Connect, Historical Raw Data 2022 and so on. Facets are the granularity at which a server advertises capability and at which the Compliance Test Tool runs its scripts, so claim only what you implement.

Why the middle layer exists

Without facets, every profile would have to restate hundreds of individual requirements. A facet lets one coherent capability, say historical raw data reading, be defined once and then referenced by any profile that needs it. It is composition, not inheritance: a facet appears in many profiles unchanged, and a server can claim a facet without claiming any profile that contains it.

Facets you will see claimed

The two that decide whether an OEE or analytics project is cheap or expensive are Historical Raw Data Server Facet (2022) and Historical Aggregate Server Facet (2022), published as /Server/HistoricalRawData2022 and /Server/AggregateHistorical2022. If both are present you can ask the server for TimeAverage, DurationGood, PercentGood and Count over shift windows instead of streaming every raw sample. Others in daily use are Data Access, Methods, Reverse Connect and Client Redundancy.

The single most useful compliance rule

The reference stack's own profile documentation states it plainly: only advertise a facet the application genuinely implements, because the Compliance Test Tool will exercise every claimed facet. There is no partial credit. A facet claimed but half-built turns a certification run into a list of failures, and it is a top cause of failed certification attempts. The OPC Foundation's own reference server currently advertises fewer facets than it actually implements, deliberately, and reconciling the two is tracked as an open issue on the UA-.NETStandard repository.

Facets in companion specifications

Companion specs define their own facets and conformance units on top of the core ones, and they show up in the released nodesets. That is how a machine can claim, for example, DI software update or AMB asset-health root causes as a testable capability rather than as prose in a PDF.

Example

How a profile expands - three nested levels

Profile:  Standard UA Server Profile (2017)
  Facet:  Base Server Behaviour
    Conformance Unit: Address Space Base
    Conformance Unit: Session Base
    ...
  Facet:  Attribute Read
  Facet:  Data Change Subscriber

Add-on facets claimed separately:
  Historical Raw Data Server Facet (2022)   -> HistoryRead / RAW
  Historical Aggregate Server Facet (2022)  -> HistoryRead / PROCESSED
The mistake people make: Over-claiming facets in ServerProfileArray to look good in a tender. The Compliance Test Tool tests every facet you claim, so each aspirational entry becomes a guaranteed failure at the lab. Ship the honest short list and add facets as you finish them.

Defined in: Part 7 - Profiles.

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