docs← Back to article

Markdown for LLMs

Different language editions

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# Different language editions

## Intention

I want to show the difference of conclusions of two language editions without automatically choosing one.

Two language editions may conclude differently; the alignment between them chooses neither.

## Incorrect form and why it stays silent

```text title="Incorrect form"
align KkClause with RuClause { relation corresponding_official_text; status reviewed; reviewer Editor; }
// Из этого НЕ следует: licensed(p), если registered(p).
```

Alignment is an addressed correspondence, not an equivalence rule. On a registered person without a licence the editions give different answers; removing align changes neither answer.

## Correct form

```law
language "law.core" version "0.2";
package recipes.z.r07 version "0.1.0";
namespace "urn:recipe:z-interpretations:07";

source Standard { kind standard; jurisdiction "none"; }
edition Kk of Standard { language kk-KZ; officiality official; in_force [@2026-01-01, infinity); }
edition Ru of Standard { language ru-KZ; officiality official; in_force [@2026-01-01, infinity); }
fragment KkClause in Kk { kind paragraph; locator "1"; text kk-KZ official "Тіркелген тұлға жіберіледі."; }
fragment RuClause in Ru { kind paragraph; locator "1"; text ru-KZ official "Лицо допускается при наличии лицензии."; }
align KkClause with RuClause { relation corresponding_official_text; status reviewed; reviewer Editor; }
entity Person;
relation registered(p: Person);
relation licensed(p: Person);
relation admitted(p: Person);
rule FromKk strict { for p: Person; when registered(p); then admitted(p); }
rule FromRu strict { for p: Person; when licensed(p); then admitted(p); }
interpretation KkReading of KkClause { status disputed; include FromKk; }
interpretation RuReading of RuClause { status disputed; include FromRu; }
interpretation_group Meaning { alternatives KkReading, RuReading; selection exactly_one; }
```

## Frozen execution scene

| Facts and choice | Question | Answer |
|---|---|---|
| 1. registered, KkReading chosen | `admitted` | `TRUE_ONLY` / `COMPUTED` |
| 2. registered, RuReading chosen | `admitted` | `NEITHER` / `COMPUTED` |
| 3. alignment removed, Russian reading | `admitted` | `NEITHER` / `COMPUTED` |
| 4. alignment without a choice | `admitted` | `NEITHER` / `INTERPRETATION_REQUIRED` |

```law
test "registered, Kazakh reading chosen" {
    given {
        context {
            legal_time @2026-09-13;
            decision_time @2026-09-13T09:00:00+05:00;
            knowledge_time @2026-09-13T09:00:00+05:00;
            timezone "Asia/Almaty";
            interpretation KkReading;
        }
        assert registered(entity_ref("urn:recipe:z-interpretations:07:p"));
    }
    evaluate truth(admitted(entity_ref("urn:recipe:z-interpretations:07:p")));
    expect truth_status == TRUE_ONLY;
    expect evaluation_status == COMPUTED;

}
```

```law
test "registered, Russian reading chosen" {
    given {
        context {
            legal_time @2026-09-13;
            decision_time @2026-09-13T09:00:00+05:00;
            knowledge_time @2026-09-13T09:00:00+05:00;
            timezone "Asia/Almaty";
            interpretation RuReading;
        }
        assert registered(entity_ref("urn:recipe:z-interpretations:07:p"));
    }
    evaluate truth(admitted(entity_ref("urn:recipe:z-interpretations:07:p")));
    expect truth_status == NEITHER;
    expect evaluation_status == COMPUTED;

}
```

```law
test "alignment removed, Russian reading" {
    given {
        context {
            legal_time @2026-09-13;
            decision_time @2026-09-13T09:00:00+05:00;
            knowledge_time @2026-09-13T09:00:00+05:00;
            timezone "Asia/Almaty";
            interpretation RuReading;
        }
        assert registered(entity_ref("urn:recipe:z-interpretations:07:p"));
    }
    evaluate truth(admitted(entity_ref("urn:recipe:z-interpretations:07:p")));
    expect truth_status == NEITHER;
    expect evaluation_status == COMPUTED;

}
```

```law
test "alignment without choice" {
    given {
        context {
            legal_time @2026-09-13;
            decision_time @2026-09-13T09:00:00+05:00;
            knowledge_time @2026-09-13T09:00:00+05:00;
            timezone "Asia/Almaty";

        }
        assert registered(entity_ref("urn:recipe:z-interpretations:07:p"));
    }
    evaluate truth(admitted(entity_ref("urn:recipe:z-interpretations:07:p")));
    expect truth_status == NEITHER;
    expect evaluation_status == INTERPRETATION_REQUIRED;

}
```




An executable resource check from the repository root:

```python
>>> import runpy
>>> checks = runpy.run_path("docs/recipes/z-interpretations/resources/check.py")
>>> print(checks["check_divergence"]())
diverged=true; kk-KZ и ru-KZ; lawc = lawref
```

## Counterfactual

Sidecar mutation: `alternatives KkReading, RuReading;` → `alternatives KkReading;`; expected `LDC-E0201`. Additional scenes with fragment deletion are marked in the table; the outcome is checked by both evaluators.

## Boundary

The texts are synthetic on purpose and do not quote a real act. A divergence report compares formalizations; it does not translate the text and does not choose an authentic language. The resource report is checked by both evaluators.

## Pitfall

Alignment leaves Established for the kk-KZ reading and Not established, not refuted for the ru-KZ reading; removing the alignment does not change either answer.