Two dangling endpoints are two errors
The rule
Normative: this is the rule
- An edge whose
sourceandtargetare both missing yields two errors, one for each endpoint, both at the sameedge.{index}locator. - The endpoints are judged independently, so neither failure suppresses the other.
What it means
A checker that stops at the first bad endpoint would report only one of two real problems. R8.a and R8.b are judged independently of each other, so an edge missing both endpoints earns both findings, not whichever is checked first.
Example
An edge naming a source and a target the workflow has neither:
{ "id": "e1", "source": "x", "target": "y" }["R8_EDGE_SOURCE_MISSING", "R8_EDGE_TARGET_MISSING"]Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · R8.c · changed in spec 1.0