# LDC-E1315 — No case to lower ## What it means Lowering a case turns a described situation into computation input — but the file declares no case at all, or the requested name matches none of the declared ones. There is nothing to lower: a file of bare vocabulary describes no situation, and a name that matches nothing selects nothing. The compiler stops at the start of the file rather than lowering an empty world. The repair is to declare the case, or to name one the file actually contains. A case holds a context and its assertions; the lowering selects one by name when the file holds several. ## Example ```run {"argv": ["lower-case", "$ROOT/case.law"], "files": {"case.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:law:demo:diagnostics\";\n\nentity A;\n"}, "expect": "LDC-E1315"} ``` ## Fix ```run {"argv": ["lower-case", "$ROOT/case.law"], "files": {"case.law": "language \"law.core\" version \"0.2\";\npackage demo.diagnostics version \"0.1.0\";\nnamespace \"urn:law:demo:diagnostics\";\n\nentity A;\n\ncase Solo {\n context {\n legal_time @2026-08-26;\n }\n}\n"}, "expect": null} ``` ## Engine message The engine reports this in its own wording: ```text $ROOT/case.law:1:1: error LDC-E1315: the file declares no case (§168) ``` ## Related - [LDC-E1320](/diagnostics/LDC-E1320/) — a case whose import names no version. - [Facts and evidence](/constructs/facts-and-evidence/) — asserting what a case observes.