An edge's target node must exist
The rule
Normative: this is the rule
- An edge whose
targetdoes not name a node in the workflow is refused withR8_EDGE_TARGET_MISSINGatedge.{index}, where{index}is the edge's position in the workflow's edge list. - An empty
targetcounts as missing.
What it means
Addressed the same way as R8.a's missing source: the locator names the
edge's position in the workflow's edge list, not the id the edge itself
carries. An empty target counts as missing, on the same footing as one
naming a node the workflow does not have.
Example
An edge named e1 names a target the workflow has no node for:
{ "id": "e1", "source": "s", "target": "gone" }{ "code": "R8_EDGE_TARGET_MISSING", "locator": "edge.0" }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.b · changed in spec 1.0