--- id: LANG-15 family: GR-LANG level: extended profiles: [runtime] posture: normative-target added: "1.0" changed: "1.0" source: https://flowdrop.io/spec/rules/gr-lang/lang-15 specification: FlowDrop Workflow Specification 1.0-draft licence: CC BY 4.0 --- # LANG-15 — A single JSONPath match is unwrapped unless the path selects many *GR-LANG (Part I) · level: extended · profiles: runtime · added in 1.0* Arity is read off the path, not off the result, so a query written to select many keeps a list shape even on the day it matches exactly one thing. ## The rule > **Normative.** This is the rule. > > A JSONPath query that returns exactly one match yields that match rather than a one-element list, unless the path is written to select many, containing a wildcard, a filter or a slice, in which case the result stays a list even when only one item matched. ## Related rules - Referenced by: LANG-23 --- 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.