# LDC-E5102 — A fragment pointing at a missing edition ## What it means Every fragment lives in one declared edition: the `in` reference says which edition carries the quoted text. When that name matches no edition in the package, the fragment cannot be placed and the compiler refuses the dangling reference. Declare the edition, or correct the name after `in`. The same refusal covers an alignment endpoint that names something other than a local fragment. The same error covers a local `fragment.parent` that is missing or names another declaration kind. A qualified foreign parent must resolve to a public fragment in the pinned context; a wrong target kind is E5102, while a missing context or export is E1105. It also rejects a missing or wrong-kind edition target of `publication.of` or `revision.previous` / `revision.next`. Revision endpoints are checked even when the edge carries no operations. A publication without `of` is rejected as well. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; source S1 { kind statute; } edition E1 of S1 { language en; officiality official; } fragment F1 in Missing { text en official "Duty applies."; } ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; source S1 { kind statute; } edition E1 of S1 { language en; officiality official; } fragment F1 in E1 { text en official "Duty applies."; } ``` ## Engine message The engine reports this in its own wording: ```text example.law:7:16: error LDC-E5102: fragment "F1": edition "Missing" is not declared (§194: unresolved fragment) ``` ## Related - [Sources](/constructs/sources/) — how works, editions, and fragments are declared.