# LDC-E2701 โ€” A precedent pointing at a missing dictionary ## What it means Every precedent belongs to a factor dictionary declared in the same package: the dictionary fixes the signature, the domain, and which side each factor argues for. A precedent that names a dictionary the package never declares has no vocabulary to argue in โ€” its factors, outcome, and sides cannot be checked against anything. The compiler refuses the precedent at the dictionary name. The fix declares the missing dictionary before the precedent, or corrects the name to the dictionary the precedent was meant to follow. Factors naming undeclared side members fail the same way under this code. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity Case; entity Item; relation clear(c: Case, i: Item) kind empirical; relation vague(c: Case, i: Item) kind empirical; factors Deal { for c: Case, i: Item; domain clear(c, i), vague(c, i); plaintiff clear; defendant vague; courts Alpha; } precedent P1 of Missing { court Alpha; decided @2020-01-01; plaintiff clear; defendant vague; outcome clear(c, i); } ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity Case; entity Item; relation clear(c: Case, i: Item) kind empirical; relation vague(c: Case, i: Item) kind empirical; factors Deal { for c: Case, i: Item; domain clear(c, i), vague(c, i); plaintiff clear; defendant vague; courts Alpha; } precedent P1 of Deal { court Alpha; decided @2020-01-01; plaintiff clear; defendant vague; outcome clear(c, i); } ``` ## Engine message The engine reports this in its own wording: ```text example.law:16:17: error LDC-E2701: precedent P1: dictionary `Missing` is not declared in the package (ยง276.3) ``` ## Related - [Facts and evidence](/constructs/facts-and-evidence/) โ€” what an assertion carries.