# LDC-E1329 — Duplicate clause in a rule block ## What it means Some rule clauses are scalars: one scope, one effective moment, one defeat per block. Repeating one would force the compiler to pick silently between two records the author both wrote, so the repetition stops the check at the second occurrence. (Repeated `when` lines are the deliberate exception — they conjoin.) The repair is to keep one: merge the two records into the intended single clause. One block carries each scalar once. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; relation p(x: Text) kind institutional; relation q(x: Text) kind institutional; rule R1 strict { scope p(v0); scope p(v0); for v0: Text; when p(v0); then q(v0); } ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; relation p(x: Text) kind institutional; relation q(x: Text) kind institutional; rule R1 strict { scope p(v0); for v0: Text; when p(v0); then q(v0); } ``` ## Engine message The engine reports this in its own wording: ```text example.law:9:5: error LDC-E1329: duplicate `scope` clause in rule — at most one per block (§94, E-0114) ``` ## Related - [Strict rules](/constructs/rule-strict/) — rule blocks and the clauses they carry.