Markdown for LLMs
LDC-Q1004 — A snapshot node carries no identifier
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LDC-Q1004 — A snapshot node carries no identifier
## What it means
Every node in a snapshot carries an identifier that joins, labels, and
anchors all refer to. A node without one cannot be joined with anything,
so the engine stops the load at that node instead of building a store
with dangling references.
Give the node its identifier at the snapshot source, then run the query
again. The query text itself is not at fault.
## Example
```run
{"argv": ["query", "from r in rules select r", "--path", "$ROOT/world.json"], "expect": "LDC-Q1004", "files": {"world.json": "{\"nodes\": [{\"kind\": \"type_decl\"}], \"package\": {\"name\": \"demo.diagnostics\", \"namespace\": \"urn:law:demo:diagnostics\"}}"}}
```
## Fix
```run
{"argv": ["query", "from r in rules select r", "--path", "$ROOT/world.json"], "expect": "LDC-Q1004", "files": {"world.json": "{\"nodes\": [{\"id\": \"n1\", \"kind\": \"type_decl\"}], \"package\": {\"name\": \"demo.diagnostics\", \"namespace\": \"urn:law:demo:diagnostics\"}}"}}
```
## Engine message
The engine reports this in its own wording:
```text
LDC-Q1004: $ROOT/world.json: node type_decl without id.
```
## Related
- [Questions to the engine](/constructs/queries/) — what a snapshot carries.
- [LDC-Q1001](/diagnostics/LDC-Q1001/) — when a node kind is outside the schema.