{
  "resourceType": "NamingSystem",
  "id": "NexusHarnessGraphNS",
  "name": "NexusHarnessGraph",
  "status": "draft",
  "kind": "identifier",
  "date": "2026-08-10",
  "publisher": "WELLSTAR Technologies Corp.",
  "responsible": "Nexus AI Harness — graph registry is the source of truth",
  "description": "Identifies AI-harness graphs acting as Device actors in the EMR (Task.requester, Task.owner on assignment-to-agent, Provenance.agent.who). References under this system are LOGICAL: Reference.identifier carries the graph name and Reference.type carries 'Device'; no Device resource need exist on the FHIR server -- the identifier points into the harness's graph registry. Reference.display SHOULD carry the human-readable graph name. Granularity is deliberately the graph/feature level (what an auditor or clinician can recognize), never per-agent or per-model. WHERE THIS URI IS ALREADY WRITTEN, AND WHERE IT IS NOT, DIFFERS BY ELEMENT. As the actor -- Reference.identifier.system on Task.requester, Provenance.agent.who and Composition.author -- Nexus EMR writes the URI declared here today, so a consumer reading the actor resolves one system and needs no second address. The same graph name also travels as run lineage, as the system of a Coding in meta.tag beside the run tag under NamingSystem/nexus-harness-run, and THAT writer is still on the pre-migration address https://nexus.awaremd.com/summary-id/graph, which this specification does not publish; moving it is tracked as FHIR-377. Write the URI declared here on both. Reading meta.tag, expect the pre-migration address on everything stamped before that writer moves and the URI declared here after; reading a logical Device reference, expect the URI declared here alone.",
  "uniqueId": [
    {
      "type": "uri",
      "value": "https://fhir.apps.health/NamingSystem/nexus-harness-graph",
      "preferred": true,
      "comment": "The canonical address this specification declares, and the one Nexus EMR already writes where the graph name is the ACTOR -- on Task.requester, Provenance.agent.who and Composition.author. Author against this one on both elements."
    },
    {
      "type": "uri",
      "value": "https://nexus.awaremd.com/summary-id/graph",
      "preferred": false,
      "comment": "The pre-migration address, and it is live on ONE element only: the system of a Coding in `meta.tag` carrying run lineage, where the writer has not yet moved. It is not carried on the actor elements at all. Match it literally when reading `meta.tag`; do not write it."
    }
  ]
}
