# 08 — Explainability, Zitate + Supersede **Zweck:** Jedes Ergebnis muss sich **belegen** lassen — woher es kommt, womit es verbunden ist, und ob es noch gilt. Das ist die Grundlage für Zitierfähigkeit und für die spätere Citation-Gating-Logik. ## Zitate + Graph-Kanten Aus der Qdrant-Payload geladen (Phase-2-Graph-Metadaten): | Feld | Inhalt | Verwendung | |------|--------|-----------| | `CitationUnit` | kanonischer Artikel-/Anhang-Identifier | Dedup, Primärnorm-Label | | `article_label` | menschenlesbare Fundstelle (z.B. „Art. 13 CRA") | Anzeige, Begründung | | `citation_style` | Zitierformat-Marker | Anzeige | | `references_out` | Normen, die dieser Chunk **zitiert** (Forward-Kanten) | Graph-Expansion ([01](01-retrieval.md)) + `ConnectedNorms` | | `references_in` | Normen, die **diesen** Chunk zitieren (Reverse-Kanten) | **nur** Metadaten — nicht expandiert (Flutungsschutz) | `Assess()` ([06](06-assessment.md)) verdichtet die Kanten zu `ConnectedNorms` — so wird sichtbar, dass z.B. Art. 13 CRA auf Anhang I verweist (die eigentliche Pflichtquelle). ## Supersede-Handling Recht ändert sich; ein veralteter Stand darf den aktuellen nicht schlagen — aber Übergangs-/History-Fragen müssen ihn noch finden. | Mechanik | Wert / Feld | Verhalten | |----------|-------------|-----------| | **Erkennung** | Payload `status == "superseded"` → `Superseded`-Flag | markiert die abgelöste Alt-Quelle | | **Demotion** | `supersededPenalty = 0.50` (`authorityScore`, [02](02-authority.md)) | konsequente Zurückstufung | | **Philosophie** | — | „Alt-Quelle demoted (nicht versteckt) — Default-Fragen sehen die eu-v1-Norm, History bleibt auffindbar" | > **Nicht entfernt, nur bestraft:** Eine abgelöste Norm kann bei einer expliziten History-Frage trotzdem hoch ranken — sie wird nur konsistent demoted, nicht ausgeblendet. Das ist dieselbe „Reihenfolge, nichts löschen"-Linie wie beim Authority-Rerank. ## Code - `legal_rag_client.go` → Payload-Mapping (`references_out/in`, `status`) - `legal_rag_graph.go` → Forward-Kanten-Expansion, Reverse-Kanten als Metadaten - `legal_rag_assess.go` → `ConnectedNorms` - `authority_rerank.go` → `supersededPenalty` ## Adressierte Fehlerklassen - **„Aussage ohne Fundstelle"** → `CitationUnit` / `article_label`. - **„Pflichtquelle hinter Verweis versteckt"** → Forward-Kanten-Expansion (Art. 13 → Anhang I). - **„veralteter Rechtsstand gewinnt"** → `supersededPenalty`, aber auffindbar.