{"id":2103,"date":"2026-10-08T15:53:25","date_gmt":"2026-10-08T15:53:25","guid":{"rendered":"https:\/\/integrationobjects.com\/blog\/?p=2103"},"modified":"2026-10-08T15:53:25","modified_gmt":"2026-10-08T15:53:25","slug":"what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua","status":"publish","type":"post","link":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/","title":{"rendered":"What Is a Unified Namespace (UNS)? The roles of MQTT and OPC UA"},"content":{"rendered":"<blockquote><p><strong>Quick answer:<\/strong> <em>A <strong>Unified Namespace<\/strong> (<strong>UNS<\/strong>) is a single, event-driven data hub where every industrial and business system publishes its current state and reads everyone else&#8217;s. It is usually a topic tree on an MQTT broker, organised by the <strong>ISA-95<\/strong> hierarchy of enterprise, site, area, line and cell. OPC UA gives machine data its meaning at the edge, and MQTT distributes it to every consumer.<\/em><\/p><\/blockquote>\n<p>Ask five people what a Unified Namespace is and you&#8217;ll get five answers, usually shaped by whatever product they sell. The core idea is simpler than the vocabulary around it. A <strong>UNS<\/strong> is one structured place where every system in the business publishes its current state, and from which every system reads it. In practice it&#8217;s a topic tree on a broker, organised like the company: enterprise, site, area, line, cell. The term was popularised by Walker Reynolds of 4.0 Solutions. [1][2] It is a pattern, not a product and not a formal standard.<\/p>\n<p>In a <strong>Unified Namespace<\/strong>, two technologies do most of the work, and they do different jobs. <a href=\"https:\/\/integrationobjects.com\/blog\/what-is-opc-ua\/\">OPC UA<\/a> explains the machine: what each value is, in what unit, and how good it is. <a href=\"https:\/\/integrationobjects.com\/blog\/what-is-mqtt-a-deep-dive-into-mqtt-and-the-role-of-mqtt-universal-broker\/\">MQTT<\/a> carries those values to everyone who needs them. Neither replaces the other.<\/p>\n<ul>\n<li><strong>One address for every value.<\/strong> Each system connects once, and new consumers subscribe without touching the sources.<\/li>\n<\/ul>\n<ul>\n<li><strong>The model is what makes it unified.<\/strong> A broker full of ad hoc topics is just a broker.<\/li>\n<\/ul>\n<ul>\n<li><strong>It holds what is true now.<\/strong> History belongs in a historian that subscribes to the namespace.<\/li>\n<\/ul>\n<h2>The problem a Unified Namespace solves<\/h2>\n<p>Industrial architecture is usually drawn as a pyramid: ERP at the top, then MES, SCADA, controllers and field devices. In a real plant every boundary is a custom interface. The MES reads from <a href=\"https:\/\/integrationobjects.com\/blog\/what-is-scada-a-beginners-guide-to-supervisory-control-and-data-acquisition\/\">SCADA,<\/a> SCADA polls the PLCs, and the analytics team needs a bypass nobody planned for. Each hop adds delay, duplicates data and creates something to maintain. [3][4] A UNS flattens that: every system, whatever its level, connects once to the namespace.<span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:100,&quot;335559740&quot;:262}\">\u00a0<\/span><\/p>\n<figure id=\"attachment_2104\" aria-describedby=\"caption-attachment-2104\" style=\"width: 560px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2104\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-1.-From-neighbor-to-neighbor-interfaces-to-one-shared-namespace.png\" alt=\"Unified Namespace vs the automation pyramid, with point-to-point interfaces replaced by one shared UNS hub\" width=\"560\" height=\"285\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-1.-From-neighbor-to-neighbor-interfaces-to-one-shared-namespace.png 560w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-1.-From-neighbor-to-neighbor-interfaces-to-one-shared-namespace-300x153.png 300w\" sizes=\"auto, (max-width: 560px) 100vw, 560px\" \/><figcaption id=\"caption-attachment-2104\" class=\"wp-caption-text\">Figure 1. From neighbor-to-neighbor interfaces to one shared namespace.<\/figcaption><\/figure>\n<h2>What a Unified Namespace is, and what it is not<\/h2>\n<p>A good <strong>UNS<\/strong> shares five traits: a single source of truth for current state, a structure that mirrors the business, event-driven updates instead of polling, openness (no dependence on one vendor), and context that travels with each value, such as units, quality and time.<\/p>\n<table width=\"623\">\n<tbody>\n<tr>\n<td width=\"185\"><strong>It is not&#8230;<\/strong><\/td>\n<td width=\"438\"><strong>Because&#8230;<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"185\"><strong>A product or a standard<\/strong><\/td>\n<td width=\"438\">There is no single normative specification. Vendors implement parts of it, and the design stays yours.<\/td>\n<\/tr>\n<tr>\n<td width=\"185\"><strong>Just an MQTT broker<\/strong><\/td>\n<td width=\"438\">The broker only carries messages. Naming, payload and ownership agreements are what unify it.<\/td>\n<\/tr>\n<tr>\n<td width=\"185\"><strong>A historian or a data lake<\/strong><\/td>\n<td width=\"438\">It holds current state, usually as retained values. Storage systems subscribe to it for history.<\/td>\n<\/tr>\n<tr>\n<td width=\"185\"><strong>A replacement for MES, SCADA or ERP<\/strong><\/td>\n<td width=\"438\">Those stay systems of record. They become publishers and subscribers in the namespace.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Unified Namespace architecture: the UNS topic structure<\/h2>\n<p>Each topic segment is a level in the business hierarchy, running from general to specific. Enterprise and site systems tend to publish near the top, and the PLCs and gateways closest to the machines publish near the bottom.\u00a0A full topic reads left to right, for example acme\/dallas\/packaging\/line1\/filler\/state, and follows the <strong>ISA-95<\/strong> equipment hierarchy. [3]<\/p>\n<figure id=\"attachment_2105\" aria-describedby=\"caption-attachment-2105\" style=\"width: 560px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2105\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-2.-A-topic-mirrors-the-business-hierarchy-and-each-branch-has-one-owning-publisher.png\" alt=\"Unified Namespace architecture showing the ISA-95 topic structure acme\/dallas\/packaging\/line1\/filler\/state and the publishers at each level\" width=\"560\" height=\"326\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-2.-A-topic-mirrors-the-business-hierarchy-and-each-branch-has-one-owning-publisher.png 560w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-2.-A-topic-mirrors-the-business-hierarchy-and-each-branch-has-one-owning-publisher-300x175.png 300w\" sizes=\"auto, (max-width: 560px) 100vw, 560px\" \/><figcaption id=\"caption-attachment-2105\" class=\"wp-caption-text\">Figure 2. A topic mirrors the business hierarchy, and each branch has one owning publisher.<\/figcaption><\/figure>\n<ul>\n<li><strong>One owner per topic.<\/strong> Exactly one system writes any given topic. Readers can be many, writers should not be.<\/li>\n<\/ul>\n<ul>\n<li><strong>Stable names.<\/strong> A topic should survive replacing a PLC. Name the thing, not the wiring.<\/li>\n<\/ul>\n<ul>\n<li><strong>Raw and curated apart.<\/strong> Keep unprocessed device data on its own branch, so readers know how much meaning a value has.<\/li>\n<\/ul>\n<ul>\n<li><strong>Self-describing payloads.<\/strong> UTC timestamp, value, unit, quality and a schema version.<\/li>\n<\/ul>\n<h2>Unified Namespace with MQTT and OPC UA: who does what<\/h2>\n<p>The two are often presented as rivals. They aren&#8217;t. They sit at different places and answer different questions.<\/p>\n<table width=\"0\">\n<tbody>\n<tr>\n<td width=\"113\">&nbsp;<\/td>\n<td width=\"272\"><strong>MQTT<\/strong><\/td>\n<td width=\"272\"><strong>OPC UA<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"113\"><strong>Main job<\/strong><\/td>\n<td width=\"272\">Distribute messages to many subscribers through a broker<\/td>\n<td width=\"272\">Describe and expose machine data with meaning<\/td>\n<\/tr>\n<tr>\n<td width=\"113\"><strong>Where it sits<\/strong><\/td>\n<td width=\"272\">From the edge upward, across the enterprise<\/td>\n<td width=\"272\">At the machine and the edge<\/td>\n<\/tr>\n<tr>\n<td width=\"113\"><strong>What it gives a UNS<\/strong><\/td>\n<td width=\"272\">Decoupled fan-out, retained current state, last will, outbound-only connections, light footprint<\/td>\n<td width=\"272\">Typed nodes with units and status, discovery, companion models for common machine types, built-in security [5][6]<\/td>\n<\/tr>\n<tr>\n<td width=\"113\"><strong>Where it stops<\/strong><\/td>\n<td width=\"272\">No payload format, units or discovery, and no history<\/td>\n<td width=\"272\">Client\/server keeps a session per consumer, and its address space describes a device, not the business<\/td>\n<\/tr>\n<tr>\n<td width=\"113\"><strong>Also worth knowing<\/strong><\/td>\n<td width=\"272\">Sparkplug adds a typed payload and birth\/death state [7]<\/td>\n<td width=\"272\">PubSub (Part 14) can publish over an MQTT broker [5]<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>One choice deserves a decision. Sparkplug&#8217;s topics are built around group, node and device, not around the business. Many teams use Sparkplug B at the edge and translate into a readable ISA-95 style tree above it. Others stay with plain topics and JSON and define their own state conventions.<\/p>\n<h2>How MQTT and OPC UA fit together in a Unified Namespace<\/h2>\n<p>The two meet at the edge. A machine exposes data through an OPC UA server. Something at the edge turns that machine-centric data into messages addressed in the business hierarchy and publishes them to the broker that hosts the namespace. Everything above the edge sees only MQTT.<\/p>\n<figure id=\"attachment_2106\" aria-describedby=\"caption-attachment-2106\" style=\"width: 470px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2106\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-3.-Machines-expose-data-through-OPC-UA-and-the-namespace-distributes-it-over-MQTT.png\" alt=\"Unified Namespace with OPC UA servers at the machine and an MQTT broker distributing data to enterprise systems\" width=\"470\" height=\"413\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-3.-Machines-expose-data-through-OPC-UA-and-the-namespace-distributes-it-over-MQTT.png 470w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-3.-Machines-expose-data-through-OPC-UA-and-the-namespace-distributes-it-over-MQTT-300x264.png 300w\" sizes=\"auto, (max-width: 470px) 100vw, 470px\" \/><figcaption id=\"caption-attachment-2106\" class=\"wp-caption-text\">Figure 3. Machines expose data through OPC UA, and the namespace distributes it over MQTT.<\/figcaption><\/figure>\n<p>The key step is <strong>contextualization<\/strong>: mapping a node ID to a business address, stamping a UTC time, and carrying the unit and quality across.<\/p>\n<figure id=\"attachment_2107\" aria-describedby=\"caption-attachment-2107\" style=\"width: 540px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2107\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-4.-The-same-value-given-a-business-address-and-a-self-describing-payload.png\" alt=\"Mapping an OPC UA node to a Unified Namespace topic with a self-describing JSON payload\" width=\"540\" height=\"275\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-4.-The-same-value-given-a-business-address-and-a-self-describing-payload.png 540w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/Figure-4.-The-same-value-given-a-business-address-and-a-self-describing-payload-300x153.png 300w\" sizes=\"auto, (max-width: 540px) 100vw, 540px\" \/><figcaption id=\"caption-attachment-2107\" class=\"wp-caption-text\">Figure 4. The same value, given a business address and a self-describing payload.<\/figcaption><\/figure>\n<table width=\"0\">\n<tbody>\n<tr>\n<td width=\"153\"><strong>Pattern<\/strong><\/td>\n<td width=\"297\"><strong>How it works<\/strong><\/td>\n<td width=\"206\"><strong>Watch for<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>Edge connector<\/strong><\/td>\n<td width=\"297\">A gateway reads OPC UA servers and publishes contextualized values to MQTT. The most common route.<\/td>\n<td width=\"206\">The connector configuration holds your model. Version and review it.<\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>OPC UA PubSub over MQTT<\/strong><\/td>\n<td width=\"297\">Devices publish DataSets straight to the broker, in JSON or binary UADP. [5]<\/td>\n<td width=\"206\">Default topics follow Part 14, not your namespace. Support varies by product.<\/td>\n<\/tr>\n<tr>\n<td width=\"153\"><strong>Native MQTT or Sparkplug devices<\/strong><\/td>\n<td width=\"297\">The device is itself an MQTT client.<\/td>\n<td width=\"206\">Usually still needs translation into the business tree.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>How to start and govern a Unified Namespace<\/h2>\n<p>Keeping a <strong>Unified Namespace<\/strong> healthy comes down to people more than software. Name an owner for the naming standard and schema versions. Write access lists by branch so each publisher can write only to its own part of the tree, and keep command topics separate and validated at the device. Run a broker at each site so plants keep working if the wide-area link drops. And start small: one line, two or three sources, one or two consumers, then refine the model before you widen it. [8]<\/p>\n<h2>Frequently asked questions<\/h2>\n<style>#sp-ea-2109 .spcollapsing { height: 0; overflow: hidden; transition-property: height;transition-duration: 300ms;}#sp-ea-2109.sp-easy-accordion>.sp-ea-single {margin-bottom: 10px; border: 1px solid #e2e2e2; }#sp-ea-2109.sp-easy-accordion>.sp-ea-single>.ea-header a {color: #444;}#sp-ea-2109.sp-easy-accordion>.sp-ea-single>.sp-collapse>.ea-body {background: #fff; color: #444;}#sp-ea-2109.sp-easy-accordion>.sp-ea-single {background: #eee;}#sp-ea-2109.sp-easy-accordion>.sp-ea-single>.ea-header a .ea-expand-icon { float: left; color: #444;font-size: 16px;}.sp-easy-accordion .sp-ea-single .ea-header a{\r\n  display: block;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    font-weight: 600;\r\n    color: #444;\r\n    font-size: 16px;\r\n    line-height: 1;\r\n  box-shadow: none;}<\/style><div id=\"sp_easy_accordion-1791474534\"><div id=\"sp-ea-2109\" class=\"sp-ea-one sp-easy-accordion\" data-ea-active=\"ea-click\" data-ea-mode=\"vertical\" data-preloader=\"\" data-scroll-active-item=\"\" data-offset-to-scroll=\"0\"><div class=\"ea-card ea-expand sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21090\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21090\" aria-controls=\"collapse21090\" href=\"#\" aria-expanded=\"true\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-minus\"><\/i> What is a Unified Namespace? <\/a><\/h3><div class=\"sp-collapse spcollapse collapsed show\" id=\"collapse21090\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21090\"> <div class=\"ea-body\"><p>A <strong>Unified Namespace<\/strong> is an architectural pattern in which every system in a business publishes its current state to one shared, hierarchical topic tree, usually on an MQTT broker, and reads from it. It replaces point-to-point interfaces with a single source of truth for current state. [1][3]<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21091\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21091\" aria-controls=\"collapse21091\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Is a UNS a product I can buy? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21091\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21091\"> <div class=\"ea-body\"><p>No. It is an architectural pattern. You build it from a broker, edge connectors and, above all, a shared naming and modeling discipline. Vendors package parts of it. [1][2]<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21092\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21092\" aria-controls=\"collapse21092\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Does a Unified Namespace replace my historian, MES or SCADA? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21092\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21092\"> <div class=\"ea-body\"><p>No. They become publishers and subscribers. The UNS carries live state; the historian keeps history, and retained messages give late joiners the latest value.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21093\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21093\" aria-controls=\"collapse21093\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> How is a Unified Namespace different from a data lake? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21093\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21093\"> <div class=\"ea-body\"><p>A <strong>Unified Namespace<\/strong> holds the current state of every system and distributes each change as an event. A data lake stores large volumes of historical data for analysis. In most architectures the data lake is one of the subscribers to the <strong>UNS<\/strong>.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21094\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21094\" aria-controls=\"collapse21094\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Can OPC UA itself be the UNS? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21094\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21094\"> <div class=\"ea-body\"><p>In principle you can aggregate OPC UA servers, but client\/server sessions suit browsing and control better than wide fan-out of current state. Most designs use OPC UA at the machine and a broker for distribution. [6]<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21095\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21095\" aria-controls=\"collapse21095\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> MQTT or OPC UA: which one? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21095\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21095\"> <div class=\"ea-body\"><p>Usually both. OPC UA gives structured, discoverable access to machines. MQTT spreads the result to every consumer without coupling them to the machine.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21096\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21096\" aria-controls=\"collapse21096\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Sparkplug or plain topics? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21096\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21096\"> <div class=\"ea-body\"><p>Sparkplug gives typed payloads and state handling but a fixed topic structure. Plain ISA-95 topics are readable and flexible, but you define state yourself. Many sites combine them. [7]<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-21097\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse21097\" aria-controls=\"collapse21097\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> How deep should a UNS topic hierarchy be? <\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse21097\" data-parent=\"#sp-ea-2109\" role=\"region\" aria-labelledby=\"ea-header-21097\"> <div class=\"ea-body\"><p>Follow the ISA-95 levels you actually use, typically five to eight. Put changing values such as batch IDs in the payload, not the topic. [3]<\/p><\/div><\/div><\/div><script type=\"application\/ld+json\">{ \"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"@id\": \"sp-ea-schema-2109-6ac7d2e240136\", \"mainEntity\": [{ \"@type\": \"Question\", \"name\": \"What is a Unified Namespace? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"A<strong>Unified Namespace<\/strong>is an architectural pattern in which every system in a business publishes its current state to one shared, hierarchical topic tree, usually on an MQTT broker, and reads from it. It replaces point-to-point interfaces with a single source of truth for current state. [1][3]\" } },{ \"@type\": \"Question\", \"name\": \"Is a UNS a product I can buy? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"No. It is an architectural pattern. You build it from a broker, edge connectors and, above all, a shared naming and modeling discipline. Vendors package parts of it. [1][2]\" } },{ \"@type\": \"Question\", \"name\": \"Does a Unified Namespace replace my historian, MES or SCADA? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"No. They become publishers and subscribers. The UNS carries live state; the historian keeps history, and retained messages give late joiners the latest value.\" } },{ \"@type\": \"Question\", \"name\": \"How is a Unified Namespace different from a data lake? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"A<strong>Unified Namespace<\/strong>holds the current state of every system and distributes each change as an event. A data lake stores large volumes of historical data for analysis. In most architectures the data lake is one of the subscribers to the<strong>UNS<\/strong>.\" } },{ \"@type\": \"Question\", \"name\": \"Can OPC UA itself be the UNS? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"In principle you can aggregate OPC UA servers, but client\/server sessions suit browsing and control better than wide fan-out of current state. Most designs use OPC UA at the machine and a broker for distribution. [6]\" } },{ \"@type\": \"Question\", \"name\": \"MQTT or OPC UA: which one? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Usually both. OPC UA gives structured, discoverable access to machines. MQTT spreads the result to every consumer without coupling them to the machine.\" } },{ \"@type\": \"Question\", \"name\": \"Sparkplug or plain topics? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Sparkplug gives typed payloads and state handling but a fixed topic structure. Plain ISA-95 topics are readable and flexible, but you define state yourself. Many sites combine them. [7]\" } },{ \"@type\": \"Question\", \"name\": \"How deep should a UNS topic hierarchy be? \", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Follow the ISA-95 levels you actually use, typically five to eight. Put changing values such as batch IDs in the payload, not the topic. [3]\" } }] }<\/script><\/div><\/div>\n<p>&nbsp;<\/p>\n<h2><strong>References\u00a0<\/strong><\/h2>\n<p><strong>[1]<\/strong>\u00a0 Reynolds, W. (4.0 Solutions). Talks and writings that popularised the term &#8220;Unified Namespace,&#8221; from about 2021. No single formal publication.<\/p>\n<p><strong>[2]<\/strong>\u00a0 \u00a0Inductive Automation. <em>UNS: Unified Namespace<\/em> (vendor article). inductiveautomation.com\/resources\/article\/uns-unified-namespace<\/p>\n<p><strong>[3]<\/strong>\u00a0 ISA. <em>ANSI\/ISA-95: Enterprise-Control System Integration<\/em> (series); also IEC 62264. isa.org<\/p>\n<p><strong>[4]<\/strong> Williams, T. J. &#8220;The Purdue Enterprise Reference Architecture.&#8221; <em>Computers in Industry<\/em> 24(2-3), 1994.<\/p>\n<p><strong>[5]<\/strong> OPC Foundation. <em>OPC UA Part 14: PubSub<\/em> (OPC 10000-14, IEC 62541-14:2020). reference.opcfoundation.org\/Core\/Part14\/v105\/docs\/<\/p>\n<p><strong>[6]<\/strong> OPC Foundation. <em>OPC UA specifications<\/em> and Companion Specifications. opcfoundation.org<\/p>\n<p><strong>[7]<\/strong> Eclipse Foundation. <em>Sparkplug Specification<\/em> 3.0 (also ISO\/IEC 20237:2023); OASIS <em>MQTT Version 5.0<\/em>. sparkplug.eclipse.org<\/p>\n<p><strong>[8]<\/strong> ISA\/IEC 62443, <em>Security for industrial automation and control systems<\/em>; NIST SP 800-82 Rev. 3, 2023. isa.org, csrc.nist.gov<\/p>\n<p><em>The UNS has no formal standard, so references for it are community and vendor material. Check versions and standards status against current publications.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quick answer: A Unified Namespace (UNS) is a single, event-driven data hub where every industrial and business system publishes its current state and reads everyone<\/p>\n","protected":false},"author":1,"featured_media":2108,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[186,187],"tags":[],"class_list":["post-2103","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-industrial-mqtt","category-it-ot-integration"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What Is a Unified Namespace (UNS)? MQTT and OPC UA Roles<\/title>\n<meta name=\"description\" content=\"A Unified Namespace (UNS) is one topic tree where every system publishes its current state. See how MQTT and OPC UA build it.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What Is a Unified Namespace (UNS)? MQTT and OPC UA Roles\" \/>\n<meta property=\"og:description\" content=\"A Unified Namespace (UNS) is one topic tree where every system publishes its current state. See how MQTT and OPC UA build it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/\" \/>\n<meta property=\"og:site_name\" content=\"OPC Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Integration.Objects.OPC\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-08T15:53:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/What-is-a-Unified-Namespace.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1248\" \/>\n\t<meta property=\"og:image:height\" content=\"832\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"OPCBlogAdmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@IntegObjects\" \/>\n<meta name=\"twitter:site\" content=\"@IntegObjects\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"OPCBlogAdmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What Is a Unified Namespace (UNS)? MQTT and OPC UA Roles","description":"A Unified Namespace (UNS) is one topic tree where every system publishes its current state. See how MQTT and OPC UA build it.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/","og_locale":"en_US","og_type":"article","og_title":"What Is a Unified Namespace (UNS)? MQTT and OPC UA Roles","og_description":"A Unified Namespace (UNS) is one topic tree where every system publishes its current state. See how MQTT and OPC UA build it.","og_url":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/","og_site_name":"OPC Blog","article_publisher":"https:\/\/www.facebook.com\/Integration.Objects.OPC\/","article_published_time":"2026-10-08T15:53:25+00:00","og_image":[{"width":1248,"height":832,"url":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/What-is-a-Unified-Namespace.png","type":"image\/png"}],"author":"OPCBlogAdmin","twitter_card":"summary_large_image","twitter_creator":"@IntegObjects","twitter_site":"@IntegObjects","twitter_misc":{"Written by":"OPCBlogAdmin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/","url":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/","name":"What Is a Unified Namespace (UNS)? MQTT and OPC UA Roles","isPartOf":{"@id":"https:\/\/integrationobjects.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/#primaryimage"},"image":{"@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/#primaryimage"},"thumbnailUrl":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/What-is-a-Unified-Namespace.png","datePublished":"2026-10-08T15:53:25+00:00","author":{"@id":"https:\/\/integrationobjects.com\/blog\/#\/schema\/person\/6efbaf488a07e418b93ff77f00af386b"},"description":"A Unified Namespace (UNS) is one topic tree where every system publishes its current state. See how MQTT and OPC UA build it.","breadcrumb":{"@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/#primaryimage","url":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/What-is-a-Unified-Namespace.png","contentUrl":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/10\/What-is-a-Unified-Namespace.png","width":1248,"height":832,"caption":"Unified Namespace"},{"@type":"BreadcrumbList","@id":"https:\/\/integrationobjects.com\/blog\/what-is-a-unified-namespace-uns-the-roles-of-mqtt-and-opc-ua\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/integrationobjects.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What Is a Unified Namespace (UNS)? The roles of MQTT and OPC UA"}]},{"@type":"WebSite","@id":"https:\/\/integrationobjects.com\/blog\/#website","url":"https:\/\/integrationobjects.com\/blog\/","name":"OPC Blog","description":"OPC and related technologies news from Integration Objects","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/integrationobjects.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/integrationobjects.com\/blog\/#\/schema\/person\/6efbaf488a07e418b93ff77f00af386b","name":"OPCBlogAdmin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/integrationobjects.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/f2d787c3c48eb147d5b4d0c9d05c6f35a5946c7dc40af2eedbe64030e99ea299?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f2d787c3c48eb147d5b4d0c9d05c6f35a5946c7dc40af2eedbe64030e99ea299?s=96&d=mm&r=g","caption":"OPCBlogAdmin"}}]}},"_links":{"self":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/2103","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/comments?post=2103"}],"version-history":[{"count":1,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/2103\/revisions"}],"predecessor-version":[{"id":2110,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/2103\/revisions\/2110"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/media\/2108"}],"wp:attachment":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/media?parent=2103"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/categories?post=2103"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/tags?post=2103"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}