--- id: LANG-23 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-23 specification: FlowDrop Workflow Specification 1.0-draft licence: CC BY 4.0 --- # LANG-23 — Only a `$`-rooted JSONPath query unwraps a list to its first match *GR-LANG (Part I) · level: extended · profiles: runtime · added in 1.0* ## The rule > **Normative.** This is the rule. > > 1. An extractor reduces a list result to its first match only where its engine is jsonpath, the path is `$`-rooted, and extract-all is off. > > 2. A property-path engine delivers a list result whole, even for a `$`-prefixed path, and a jsonpath engine that falls back to property-path resolution never unwraps. > > 3. The extractor's reported JSONPath flag reports the `$` prefix alone and is independent of the engine in force. ## Related rules - Names: LANG-14, LANG-15 --- 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.