An expression error fails the node; an empty result does not
One policy across every node that evaluates an author's expression, so a broken expression is visible and routable rather than silently absorbed.
The rule
Normative: this is the rule
- An expression error (a path the engine cannot evaluate, a failure raised by the engine) fails the node, and the failure routes to the error edge.
- This holds uniformly across every node that evaluates an author's expression.
- An expression that evaluates cleanly and finds nothing is not an error, so an extractor's default-on-no-match is unaffected.
- Leniency toward genuine errors is only ever an explicit, opt-in node configuration, never the default.
Why
Recorded under OPEN-8.
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 · LANG-29 · changed in spec 1.0