Companion specification · Tier 1

Machinery Jobs

DocumentOPC 40001-x
Version1.0.1
Published2024-05-01
Namespacehttp://opcfoundation.org/UA/Machinery/Jobs/
SectorMachinery

Machinery Jobs adds order context to the Machinery family. It standardises the job a machine is currently working on, how it was dispatched, what it produced and why it deviated: JobManagementType, JobExecutionMode, ProcessIrregularity, JobResult, the output information structures and a bill-of-materials representation.

Where it sits in the stack

Jobs is the Machinery-side half of the MES handshake, and it is deliberately aligned with the ISA-95 job-control concepts rather than reinventing them: the machine-facing job object lives here, while the enterprise-facing dispatch and response messages belong to ISA-95 Job Control V2. It builds on the Machinery base layer for identity and state, and overlaps by design with the production job state machines in MachineTool. Version 1.0.0 and 1.0.1 both landed in spring 2024, so this is a young model.

The types that matter

TypeWhat it carries
JobManagementTypeThe object that owns jobs on a machine: the current job, the queue where one exists, and the interface a client uses to see what the machine believes it is making.
JobExecutionModeHow the job is being executed, which is what tells you whether a machine is running a dispatched order, a test piece or a manual job. Attributing OEE to an order requires this distinction.
JobResultThe outcome of a job as reported by the machine: what finished, in what condition, and with what deviation from what was ordered.
ProcessIrregularityThe standardised report of a deviation during the job. This is the model's reason-code hook and the natural join point to a downtime record.
OutputInfoTypeThe object carrying what the job produced, keeping output separate from the job's own identity and state.
OutputInformationDataTypeThe structure describing produced output: what it is, how much of it, and which identifiers it can be traced by.
OutputPerformanceInfoDataTypeThe performance view of the output, the closest thing in this model to produced and defective quantities per job.
BOMInformationDataTypeThe bill of materials associated with the job, so consumption can be reconciled against what was planned.
BOMComponentInformationDataTypeOne component line of that bill of materials, with the quantity and identification needed for material traceability.

Using it on a real machine

  1. Decide who owns job identity firstBefore touching the address space, agree whether the MES job identifier or the machine's own job object is authoritative. Every later reconciliation problem traces back to skipping this.
  2. Locate JobManagement on the machineRead NamespaceArray for http://opcfoundation.org/UA/Machinery/Jobs/, then browse from the machine object in the Machines folder to its job management object.
  3. Subscribe to the current job, not to a job listMonitor the current job identifier and its state so every state and count sample you collect can be stamped with the job that was running. That stamping is the whole point of the model.
  4. Capture ProcessIrregularity as eventsTreat irregularities as timestamped events rather than sampled values, and store them with the job identifier. A reason that arrives as an event can be attributed; a reason inferred from a sampled flag cannot.
  5. Reconcile output at job end, not per cycleRead the output and performance structures when the job closes and compare them to your own counted totals. A persistent gap usually means a counter reset or a lost connection window, not a wrong machine.
  6. Target Job Control V2 for the MES sideDispatch and job response belong in ISA-95 Job Control V2 (2.0.0, 2024-01-31). Do not build new MES integration against the 2013 ISA-95 nodeset.

What it gives you for OEE

Jobs is the attribution layer: without it, availability, counts and reasons are machine-level numbers that cannot be broken down by order, product or changeover. OutputPerformanceInfoDataType is the nearest standardised produced-and-defective view per job, and ProcessIrregularity gives deviations a place to live so a downtime record can carry both a reason and an order. What is honestly not here, and this is the boundary where OEE projects stall: planned production time, the shift calendar, the routing, and the standard or ideal cycle time. None of those are in the machine, and no companion specification puts them there. They come from ERP or MES, with ISA-95 Job Control V2 as the intended bridge, and a machine-only integration will always need that second source before it can produce a defensible OEE figure.

Try it free: No free public server is known to expose the Jobs namespace, and the public umati server does not simulate it. Read Opc.Ua.Machinery.Jobs.NodeSet2.xml directly, or load it into a local server, and pair it with the Machinery Examples nodeset (1.0.0, 2026-02-01) to see how job context is meant to sit alongside a machine instance. For the MES side of the same exercise, read the ISA95-JOBCONTROL_V2 nodeset.

Gotchas

  • Two job models can coexist on one machine. MachineTool has ProductionJobStateMachineType and its own job structure, and this model has JobManagementType. Decide which is authoritative per installation and write it down.
  • The legacy ISA-95 nodeset dates from 2013-11-06. It still appears in vendor documentation, but new MES work should target ISA-95 Job Control V2 2.0.0.
  • Job identifiers are only as good as the dispatch path. If jobs are keyed in at the HMI, expect typos, and design your reconciliation to tolerate them rather than assuming a clean join.
  • Version 1.0.1 dates from May 2024 and field implementations are scarce. Confirm which structures a machine populates before promising order-level OEE.

Once the machine speaks a companion spec, the OEE mapping is portable across vendors, which is the point at which analytics stops being a per-machine project.

See Jemba →

Last verified 7 September 2026 against OPC UA 1.05.07. Version and publication date read from the released nodeset. OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Free download
OPC UA Machine Data → OEE Mapping Kit
Which nodes to subscribe to, how they become Availability, Performance and Quality, and which companion specification already gives you the answer, so you stop inventing tags.
Get the free mapping kit →
Free, no course, no login