docs← Back to article

Markdown for LLMs

LDC-Q4006 — An argument names nothing the question introduced

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# LDC-Q4006 — An argument names nothing the question introduced

## What it means

Arguments in a question over a package come from three places: a name
introduced up front with its kind, a quoted value, or a named thing. A
word that is none of the three cannot be matched against anything, so the
engine stops and points at it. The message says how to repair the most
common case — introducing the name with its kind.

Either introduce the name alongside the other binders, quote it as a
value, or replace it with the intended bound name.

## Example

```lawql
query q over "demo.diagnostics" { for x: Applicant; where resident(x); select resident(y); }
```

## Fix

```lawql
from r in rules select r
```

## Engine message

The engine reports this in its own wording:

```text
LDC-Q4006: argument 'y' is not bound; add `for y: T;`.
```

## Related

- [Questions to the engine](/constructs/queries/) — the shape of a question over a package.
- [LDC-Q4001](/diagnostics/LDC-Q4001/) — how names are introduced up front.