The graph the explorer and the matrix draw is read from this instance's cat-harness nodes, nothing else. Each
kind below is a directory declared in smart-trust-tools.json, and each edge is a field of
one of those nodes. tools/check-req-nodes fails the build if any edge names no node.
| Kind | Nodes | Read from | Node type |
|---|---|---|---|
| requirement | 95 | skills/requirements/*.json | bootstrap requirement (req:) |
| section | 49 | library/<entry>/sections/ | cat-harness library section |
| document | 47 | library/<entry>/, references/*.json, vectors/<set>/* | library entry, folio-reference/v1, test vector (every file of a vector set but its SOURCE.yaml and README) |
| standard | 29 | external-schemas/*.json | folio-external-schema/v1 |
| directive | 5 | memory/dir-*.md | folio-memory/v1 |
| upstream | 11 | library/who-smart-trust-requirements-fsh | smart-trust FHIR Requirements, as ingested |
| skill | 16 | skills/<package>/*.md | skill with satisfies |
| tool | 15 | tools/<id>/<id>.ts | cat-harness Tool (defineTool) |
| process | 4 | processes/*/*.bpmn | BPMN process, tasks naming skills |
| role | 6 | scenarios/roles.json | role graph |
| api | 131 | api/wit/*.wit, api/cddl/*.cddl | WIT interface, world or item, or CDDL rule (hcert-contract typology) |
| issue | 35 | beans/defs/*.md | bean |
| test | 170 | the files a skill's tested-by names | a Kotlin test function named after the requirements it verifies, or a script |
| test-plan | 2 | test/plans/*.test-plan.json | test-plan/v1 (cat-harness), shaped after FHIR R5 TestPlan |
| model | 8 | models/fhir/*.json, models/generated/* | FHIR logical model (fhir-logical-models: an R5 StructureDefinition, or the R5 primitive patterns), or a payload model lm-derive writes from them (payload-models: JSON-LD context, SHACL shapes, CDDL) |
| Edge | Count | From → to | Field |
|---|---|---|---|
references | 219 | requirement → source | reference of the req: node (FHIR Requirements.reference): what it is drawn from |
satisfies | 10 | requirement → smart-trust | a smart-trust FHIR Requirements canonical in reference |
derivedFrom | 63 | requirement → requirement; model or vector → library entry, standard, model or vector | derivedFrom of the req: node (FHIR Requirements.derivedFrom): the broader requirement it narrows. For a model: the library entry whose FSH declares it, its baseDefinition, the FHIR core package it was taken from, or the directory declaration's derivedFrom (a payload model). For a vector: its SOURCE.yaml's derivedFrom, or the library entry its files: line names |
writes | 4 | Tool → model or vector | the directory declaration's writer (payload-models), or a vector set's SOURCE.yaml generator |
realizedBy | 130 | requirement → skill | the skill's satisfies |
implementedBy | 37 | skill → Tool | the Tool's satisfies |
usedIn | 18 | skill → process | a BPMN task's skill ref |
performedBy | 32 | skill → role | the role's skills |
constrainsApi | 88 | requirement → WIT item or CDDL rule | an [STT-…] tag in the item's comments |
affectedBy | 49 | requirement → issue | the bean's Requirements affected |
testedBy | 183 | skill → test | the skill's tested-by |
verifies | 274 | test → requirement | the requirement ids a test is named after |
assesses | 89 | test plan → requirement | an assertion id, a success criterion req:<id>#<statement>/<criterion> |
planCase | 15 | test plan → skill | a case named after the skill |
precededBy | 1 | test plan → test plan | a dependency's predecessor |
concerns | 73 | issue → source | the bean's Sources |
partOf | 172 | section → entry, statement → requirement, item → interface or CDDL file | structure |
The whole graph as JSON: data/graph.json.