# LDC-E1105 — Unresolved qualified reference ## What it means A qualified name such as `other::Hidden` reaches across a package boundary, and the compiler only follows it when the named package is visible: either the own package or a declared import. A prefix that is neither means the reference points at a world the check cannot see, so the compiler stops at the reference instead of guessing. The repair is to declare what the reference needs: import the package, or spell a local type that is actually in scope. A reference the compiler cannot place never lowers silently. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity Applicant; relation covered(person: demo.other::Hidden) kind institutional; ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity Applicant; relation covered(person: Applicant) kind institutional; ``` ## Engine message The engine reports this in its own wording: ```text example.law:6:26: error LDC-E1105: qualified reference to type demo.other::Hidden does not resolve: lowering runs without a resolve context (§23; dependency pinning §11 — `lawc lower --imports `) ``` ## Related - [Vocabulary](/constructs/vocabulary/) — how names are declared and which positions take them. - [Facts and evidence](/constructs/facts-and-evidence/) — what a package may address from outside.