# LDC-E4110 — An exception on a strict rule ## What it means A strict conclusion is not defeasible, so an exception clause on a strict rule has nothing to defeat: the exception mechanism lifts by defeat, and there is no defeat to lift with. The compiler stops at the exception keyword and refuses the rule. Either make the rule defeasible, or carry the exact applicability condition into the strict body so no exception is needed. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity A; relation p(a: A) kind institutional; relation q(a: A) kind institutional; relation s(a: A) kind institutional; rule r1 strict { for a: A; when p(a); unless s(a); then q(a); } ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity A; relation p(a: A) kind institutional; relation q(a: A) kind institutional; relation s(a: A) kind institutional; rule r1 defeasible { for a: A; when p(a); unless s(a); then q(a); } ``` ## Engine message The engine reports this in its own wording: ```text example.law:9:39: error LDC-E4110: r1: `unless` on a strict rule (§149) — make the rule defeasible or move the applicability condition into the strict body ``` ## Related - [Strict rules](/constructs/rule-strict/) — what a strict conclusion guarantees. - [Defeasible rules](/constructs/rule-defeasible-unless/) — how exceptions defeat a conclusion.