Markdown for LLMs
LDC-E8703 — Parameter row outside its coverage
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LDC-E8703 — Parameter row outside its coverage
## What it means
A parameter dataset declares the half-interval it covers, and every
value row must sit inside that coverage: non-empty, uniquely identified,
starting no earlier and ending no later than the dataset. A row that is
empty, duplicated, or starts or ends outside the coverage fits nowhere
in the dataset, so the compiler stops at the row.
Move the row inside the coverage or widen the coverage to admit it. An
empty coverage interval itself is refused the same way.
## Example
```run
{"argv": ["check", "$ROOT"], "files": {"law.toml": "[package]\nname = \"demo.diagnostics\"\nversion = \"0.1.0\"\nlanguage = \"0.2\"\nnamespace = \"urn:demo:diagnostics\"\n", "main.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:demo:diagnostics\";\n\nentity Person;\n", "mrp.lawparam.json": "{\"schemaVersion\": \"law.params/0.1\", \"kind\": \"parameter-dataset\", \"id\": \"urn:demo:diagnostics#mrp\", \"parameter\": \"urn:demo:diagnostics#MRP\", \"valueType\": {\"name\": \"urn:law:std#Money\"}, \"timeAxis\": \"legal_time\", \"granularity\": \"date\", \"coverage\": {\"start\": \"2025-01-01\", \"endExclusive\": null}, \"values\": [{\"id\": \"urn:demo:diagnostics#mrp#2025\", \"valid\": {\"start\": \"2024-06-01\", \"endExclusive\": \"2026-01-01\"}, \"value\": {\"kind\": \"value\", \"type\": {\"name\": \"urn:law:std#Money\"}, \"value\": \"3932\", \"currency\": \"KZT\"}, \"anchors\": [\"urn:demo:diagnostics#law#article-9\"]}, {\"id\": \"urn:demo:diagnostics#mrp#2026\", \"valid\": {\"start\": \"2026-01-01\", \"endExclusive\": null}, \"value\": {\"kind\": \"value\", \"type\": {\"name\": \"urn:law:std#Money\"}, \"value\": \"4325\", \"currency\": \"KZT\"}, \"anchors\": [\"urn:demo:diagnostics#law#article-9\"]}]}", "law.lock": "{\"lockVersion\": \"0.2\", \"resources\": [{\"capability\": \"compile_time\", \"contentHash\": \"sha256:c2d7bc8d1106c70b73fc5d75265c3962f541b48bc2a30da8f03755346540dcea\", \"id\": \"urn:demo:diagnostics#mrp\", \"kind\": \"parameter-dataset\", \"path\": \"mrp.lawparam.json\"}]}"}, "expect": "LDC-E8703"}
```
## Fix
```run
{"argv": ["check", "$ROOT"], "files": {"law.toml": "[package]\nname = \"demo.diagnostics\"\nversion = \"0.1.0\"\nlanguage = \"0.2\"\nnamespace = \"urn:demo:diagnostics\"\n", "main.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:demo:diagnostics\";\n\nentity Person;\n", "mrp.lawparam.json": "{\"schemaVersion\": \"law.params/0.1\", \"kind\": \"parameter-dataset\", \"id\": \"urn:demo:diagnostics#mrp\", \"parameter\": \"urn:demo:diagnostics#MRP\", \"valueType\": {\"name\": \"urn:law:std#Money\"}, \"timeAxis\": \"legal_time\", \"granularity\": \"date\", \"coverage\": {\"start\": \"2025-01-01\", \"endExclusive\": null}, \"values\": [{\"id\": \"urn:demo:diagnostics#mrp#2025\", \"valid\": {\"start\": \"2025-01-01\", \"endExclusive\": \"2026-01-01\"}, \"value\": {\"kind\": \"value\", \"type\": {\"name\": \"urn:law:std#Money\"}, \"value\": \"3932\", \"currency\": \"KZT\"}, \"anchors\": [\"urn:demo:diagnostics#law#article-9\"]}, {\"id\": \"urn:demo:diagnostics#mrp#2026\", \"valid\": {\"start\": \"2026-01-01\", \"endExclusive\": null}, \"value\": {\"kind\": \"value\", \"type\": {\"name\": \"urn:law:std#Money\"}, \"value\": \"4325\", \"currency\": \"KZT\"}, \"anchors\": [\"urn:demo:diagnostics#law#article-9\"]}]}", "law.lock": "{\"lockVersion\": \"0.2\", \"resources\": [{\"capability\": \"compile_time\", \"contentHash\": \"sha256:4e67c8dd00f9f81714dac9ebb458546f98ab9a868cda961b9f181d474bdcb33d\", \"id\": \"urn:demo:diagnostics#mrp\", \"kind\": \"parameter-dataset\", \"path\": \"mrp.lawparam.json\"}]}"}, "expect": null}
```
## Engine message
The parameter checker reports this in its own wording:
```text
LDC-E8703: parameter row starts outside coverage
```
## Related
- [LDC-E8701](/diagnostics/LDC-E8701/) — the neighbouring parameter refusal.