Files
3yearplan/schemas/uns/README.md
Joseph Doherty ebc76e9315 Seed UNS hierarchy across 6 sites; rebrand outputs to SCADA IT/OT with ZB template
Lands per-site UNS subtree files (Warsaw West/North, Shannon, Galway, TMT,
Ponce) seeded from OpenText facility docs — Warsaw split confirmed as
numbered = legacy Zimmer = West, lettered = legacy Biomet = North. Renames
project framing from "Shopfloor IT/OT" to "SCADA IT/OT" for accuracy.
Extracts a ZB-branded PowerPoint template from example_powerpoint.pptx and
wires it into the outputs pipeline. Trims deck from 18 to 16 slides
(BOBJ->Power BI transferred to another team, Non-Goals and Asks dropped);
goal-state BOBJ analysis pruned to a stub.
2026-04-30 10:54:49 -04:00

4.3 KiB
Raw Blame History

UNS Subtrees — initial draft

Status: WORK-IN-PROGRESS draft (2026-04-30). Initial structural skeleton seeded from the 3-year-plan source files (current-state.md enterprise layout + goal-state.md UNS naming hierarchy standard) and OpenText facility documentation. Per-site line and equipment detail is not yet populated — that requires the UNS hierarchy snapshot walk (see goal-state.md → "Unified Namespace (UNS) posture → UNS naming hierarchy standard"). See QUESTIONS.md for the open questions that block finalization.

Quick stakeholder view: HIERARCHY.md — high-level tree across all 6 sites with Warsaw expanded as a worked example.

This directory holds one JSON file per integrated site, declaring the canonical UNS subtree (Enterprise → Site → Area → Line) for that site. Equipment (level 5) is configured per-cluster in OtOpcUa, not declared here.

What's drafted

Site File Source of truth Notes
Warsaw West warsaw-west.json OpenText Zimmer Warsaw - Building Use Descriptions.docx + verbal confirmation from project owner (numbered = legacy Zimmer = West Campus) Six production buildings: bldg-2, bldg-5, bldg-7, bldg-10, bldg-19, bldg-20. Non-production buildings (3, 4, 8, 14, 15, 17, 18) deliberately excluded — Areas are production-only per goal-state. Lines pending walk.
Warsaw North warsaw-north.json OpenText Zimmer Biomet Buildings folder + verbal confirmation (lettered = legacy Biomet = North Campus) Six lettered buildings: bldg-a, bldg-b, bldg-c, bldg-d, bldg-e, bldg-i. Production-vs-non-production breakdown per building is not yet known — all included pending walk. Note F/G/H are absent from the building list; verify whether they exist.
Shannon shannon.json current-state.md other-integrated-sites + "single server cluster covering the whole site" rule Area = _default (single-cluster site). Lines pending walk.
Galway galway.json same same
TMT tmt.json same Area = _default. Lines pending walk. TMT shortname unconfirmed — see QUESTIONS.md Q2.
Ponce ponce.json same same

The not-yet-integrated smaller sites (Berlin, Winterthur, Jacksonville, others) are deliberately not seeded — onboarding shape is still TBD and the site list is volatile per current-state.md.

What still needs to happen

  1. Walk integrated sites to populate the lines arrays in each file above. Walk inputs: System Platform IO config, Ignition OPC UA connections, ScadaBridge templates. Walk output: per-site list of production lines with their name (kebab-case), displayName, and the equipment instances belonging to each line (with stable UUIDs — assigned during the walk, not derived from existing identifiers).
  2. Confirm Warsaw North production-vs-non-production breakdown — the lettered buildings are all in warsaw-north.json pending verification of which are actually production. The walk should resolve this; non-production buildings should be removed from the Areas list once identified.
  3. Resolve remaining QUESTIONS.md — Q2Q4 (naming conventions) before authoring real line names, so the walk doesn't have to be redone.
  4. Move to a dedicated schemas repo once one is created and an owner team is named. The temporary location under 3yearplan/schemas/ is documented in ../README.md.

Validation

Each file is validated against ../format/uns-subtree.schema.json. Constraints:

  • enterprise must equal zb across every file (matches ServerCluster.Enterprise in OtOpcUa).
  • site, area name, and line name must match ^[a-z0-9-]{1,32}$ or be the literal _default.
  • _default is reserved as the explicit "this level doesn't apply at this site" placeholder, per the goal-state design goal of uniform path depth.

Worked examples

  • example-warsaw-west.json — original schema worked example contributed with the seed (uses placeholder bldg-3/bldg-4 — superseded by the authoritative warsaw-west.json for any actual consumer; kept here for documentation purposes only).