--- id: LANG-28 family: GR-LANG level: core profiles: [storage-api, runtime] posture: normative-target added: "1.0" changed: "1.0" source: https://flowdrop.io/spec/rules/gr-lang/lang-28 specification: FlowDrop Workflow Specification 1.0-draft licence: CC BY 4.0 --- # LANG-28 — A condition node's operators are a closed set, and case folding spares the pattern *GR-LANG (Part I) · level: core · profiles: storage-api, runtime · added in 1.0* ## The rule > **Normative.** This is the rule. > > 1. A condition node compares with exactly six operators (`equals`, `not_equals`, `contains`, `starts_with`, `ends_with` and `regex`) declared as an enumeration. > > 2. A workflow naming an operator outside that set is refused when it is saved and again when the parameter is resolved, and an operator that reaches execution outside the set fails the node. > > 3. A pattern that cannot be compiled fails the node when it runs. > > 4. Where the comparison is case-insensitive it is performed case-insensitively; the pattern itself is never rewritten, so a regular expression keeps its case-sensitive character classes. ## Why Recorded under OPEN-19. --- Rule identifiers are permanent and are never renumbered. This specification carries no implementation status: each implementation publishes its own standing against these rules. Licensed CC BY 4.0.