Includes: README explaining purpose / scope / temporary-location framing / format decision, CONTRIBUTING.md with proposed workflow + per-class semver versioning policy + validation commands, format/equipment-class.schema.json defining the shape of a class template (classId, version, displayName, applicability, signals, alarms, optional stateModel), format/tag-definition.schema.json defining the shape of a single canonical signal (name, dataType, category, unit, isArray, accessLevel, writeIdempotent, isHistorized, scaling), format/uns-subtree.schema.json defining the shape of a per-site UNS subtree (enterprise + site + areas + lines), classes/fanuc-cnc.json as the worked pilot class with 16 signals + 3 alarms + suggested state-derivation notes (per OtOpcUa corrections doc D1), uns/example-warsaw-west.json as a worked UNS subtree example, docs/overview.md (what / why / lifecycle / what's NOT in this repo), docs/format-decisions.md (8 numbered decisions covering JSON Schema choice per corrections D2, per-class semver, additive-only minor bumps, _default placeholder reservation, signal-name vs UNS-segment regex distinction, stateModel-as-informational, no per-equipment overrides at this layer, applicability.drivers as OtOpcUa driver enumeration), docs/consumer-integration.md (how OtOpcUa / Redpanda / dbt each integrate). $id URLs in the JSON schemas resolve at the actual current path so validators don't 404. Top-level README adds a row to the Component Detail Files table pointing to schemas/. Corrections doc B2 (schemas-repo dependencies) marked partially RESOLVED with the seed location and a list of what still needs the plan team or cross-team owner to decide (owner team naming, dedicated repo migration, format-decision ratification, FANUC CNC pilot confirmation, CI gate setup, Redpanda + dbt consumer integration plumbing). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
25 lines
636 B
JSON
25 lines
636 B
JSON
{
|
|
"$schema": "../format/uns-subtree.schema.json",
|
|
"enterprise": "ent",
|
|
"site": "warsaw-west",
|
|
"displayName": "Warsaw West (example)",
|
|
"areas": [
|
|
{
|
|
"name": "bldg-3",
|
|
"displayName": "Building 3",
|
|
"lines": [
|
|
{ "name": "line-1", "displayName": "Line 1 — Assembly" },
|
|
{ "name": "line-2", "displayName": "Line 2 — Machining" },
|
|
{ "name": "line-3", "displayName": "Line 3 — Inspection" }
|
|
]
|
|
},
|
|
{
|
|
"name": "bldg-4",
|
|
"displayName": "Building 4",
|
|
"lines": [
|
|
{ "name": "line-1", "displayName": "Line 1 — Injection Molding" }
|
|
]
|
|
}
|
|
]
|
|
}
|