Methodik
GWÖ-Matrix 2.0 · Gemeinden · Transparenz-Dokumentation
Was ist die Gemeinwohl-Ökonomie?
Die Gemeinwohl-Ökonomie (GWÖ) ist ein Wirtschaftsmodell, das den Erfolg wirtschaftlichen Handelns nicht am Gewinn, sondern am Beitrag zum Gemeinwohl misst. Entwickelt von Christian Felber (2010), trägt die GWÖ eine internationale Bewegung mit über 11.000 Unterstützer:innen, 4.500 Mitgliedern und 1.000 bilanzierten Organisationen.
Das Bewertungsmodell: die Gemeinwohl-Bilanz
Das Kernstück ist die Gemeinwohl-Bilanz: ein standardisiertes Bewertungsverfahren nach einer Matrix aus fünf Werten (Menschenwürde, Solidarität, ökologische Nachhaltigkeit, soziale Gerechtigkeit, Transparenz & Demokratie) und fünf Berührungsgruppen. Die aktuelle Unternehmens-Matrix (Version 5.1) ist in über 35 Ländern erprobt.
→ Arbeitsbuch Unternehmen 5.1 (PDF) · Matrix-Übersicht
Adaption für die öffentliche Hand
Für Gemeinden gibt es seit 2017 das Arbeitsbuch für Gemeinden Version 2.0. Es überträgt die Unternehmens-Matrix auf kommunale Handlungsfelder: statt „Kund:innen" stehen Bürger:innen im Fokus, statt „Lieferkette" geht es um öffentliche Beschaffung. Eine aktualisierte Version 2.1.A läuft seit 2023 im Pilotbetrieb.
→ Arbeitsbuch Gemeinden 2.0 (PDF) · Version 2.1.A Pilotfassung (PDF)
Anwendung auf Parlamentsanträge
Dieser Antragsprüfer nutzt die Gemeinde-Matrix 2.0 als Bewertungsrahmen und wendet sie systematisch auf Parlamentsanträge aller deutschen Landtage und des Bundestags an. Parlamentsanträge gestalten die Rahmenbedingungen, unter denen Gemeinden handeln — ihre Gemeinwohl-Wirkung zu messen macht sie vergleichbar und transparent.
Was macht der GWÖ-Antragsprüfer?
Jeder Antrag wird automatisch analysiert und erhält:
- GWÖ-Score (0–10) — wie stark fördert oder widerspricht der Antrag den fünf Gemeinwohl-Werten?
- Empfehlung & Bewertungs-Sicherheit — qualitative Einordnung („Uneingeschränkt unterstützen" … „Ablehnen") plus eine Sicherheits-Angabe (hoch/mittel/niedrig), wie selbstsicher das Sprachmodell in dieser Einordnung ist (wissenschaftlich: Konfidenz).
- 25-Felder-Matrix — detaillierte Bewertung für jede Kombination aus Berührungsgruppe und Wert
- Schwerpunkt-Felder — die Top-Felder der Matrix, die den Score am stärksten treiben
- Themen-Tags & Kernforderungen — automatische Themen-Klassifikation und Bullet-Liste der zentralen Forderungen des Antrags
- Wahlprogramm-Treue — wie gut passt der Antrag zu den Wahl- und Grundsatzprogrammen der Fraktionen, belegt mit verifizierten Zitaten?
- Verbesserungsvorschläge — konkrete Textänderungen im Redline-Format
- Abstimmungsergebnis & Wahlprogramm-Konflikt-Marker — fraktions-aggregierte Abstimmung aus dem Plenarprotokoll, plus Hinweis-Symbole, wenn eine Fraktion gegen das eigene Wahlprogramm stimmt (siehe Abschnitt Stimmverhalten).
- Ähnliche Anträge & News-Match — verwandte Drucksachen aus anderen Bundesländern (per Embedding-Ähnlichkeit) und aktuelle Pressemeldungen, die thematisch zu diesem Antrag passen.
Ziel ist Transparenz: Bürger:innen können nachvollziehen, welche Anträge dem Gemeinwohl dienen — und welche dagegen arbeiten. Die Bewertungen sind öffentlich, maschinenlesbar (JSON/CSV/Atom-Feed) und unter CC BY 4.0 lizenziert.
Die GWÖ-Matrix 2.0 für Gemeinden
5 Berührungsgruppen (Zeilen) × 5 Werte (Spalten) = 25 Bewertungsfelder. Jedes Feld wird von −5 (fundamental widersprechend) bis +5 (stark fördernd) bewertet. Der GWÖ-Score (0–10) ist ein gewichteter Durchschnitt.
Die fünf Werte (Spalten)
| Wert | Leitfrage |
|---|---|
| 1. Menschenwürde | Werden Grundrechte geschützt? Rechtliche Gleichstellung? Schutz vor Diskriminierung? |
| 2. Solidarität | Wird das Gemeinwohl gefördert? Mehrwert für die Gemeinschaft? Kooperation statt Konkurrenz? |
| 3. Ökologische Nachhaltigkeit | Klimaschutz? Ressourcenschonung? Biodiversität? Kreislaufwirtschaft? |
| 4. Soziale Gerechtigkeit | Gerechte Verteilung? Daseinsvorsorge? Soziale Absicherung? Chancengleichheit? |
| 5. Transparenz & Demokratie | Bürgerbeteiligung? Offenlegung? Demokratische Prozesse? Rechenschaftspflicht? |
Die fünf Berührungsgruppen (Zeilen)
| Gruppe | Wer ist gemeint? |
|---|---|
| A · Lieferant:innen | Externe Beschaffung, Lieferketten, Dienstleister:innen |
| B · Finanzen | Umgang mit öffentlichen Mitteln, Haushalt, Steuerzahler:innen |
| C · Verwaltung | Mandatsträger:innen, Mitarbeitende, Ehrenamtliche |
| D · Bürger:innen | Wirkung innerhalb der Grenzen, Daseinsvorsorge |
| E · Gesellschaft & Natur | Wirkung über die Grenzen hinaus, Zukunft |
Alle 25 Felder
Klick auf ein Feld für Details.
Grundrechte Lieferkette
Nutzen Gemeinde
Ökol. Verantwortung
Soziale Verantwortung
Rechenschaft
Eth. Finanzgebaren
Gemeinnutz
Ökol. Finanzpolitik
Soz. Finanzpolitik
Partizipation
Gleichstellung
Gemeinsame Ziele
Ökol. Verhalten
Gerechte Arbeit
Transparenz intern
Rechtsgleichheit
Gesamtwohl
Ökol. Leistung
Soz. Leistung
Demokratie
Zukunft
Beitrag Gesamtwohl
Ökol. Auswirkungen
Sozialer Ausgleich
Demokratie global
Bewertungsskala
| Symbol | Rating | Bedeutung |
|---|---|---|
| ++ | +4 bis +5 | Stark fördernd, vorbildlich |
| + | +1 bis +3 | Fördernd |
| ○ | 0 | Neutral / nicht berührt |
| − | −1 bis −3 | Widersprechend |
| −− | −4 bis −5 | Stark widersprechend |
Analyse-Pipeline
Der PDF-Volltext wird aus dem Landtags-Portal geholt (17 Parlamente angebunden). Nur echte Anträge und Gesetzentwürfe werden analysiert — Kleine Anfragen werden übersprungen.
Per semantischer Suche (text-embedding-v4, 1024 Dimensionen) werden für jede Fraktion die thematisch relevantesten Passagen aus Wahl- und Grundsatzprogrammen gefunden. Aktuell 287 Programme mit 35238 Textabschnitten indexiert.
Ein Sprachmodell (qwen-plus-latest) bewertet den Antrag anhand der GWÖ-Matrix und vergleicht ihn mit den gefundenen Programmpassagen. Der Prompt erzwingt die Verwendung wörtlicher Zitate.
Jedes Zitat wird server-seitig verifiziert: der Text muss als Substring (oder 5-Wort-Anker) in einem retrieten Chunk derselben Partei auffindbar sein. Quellenangabe und Seitenzahl werden aus dem echten Treffer rekonstruiert — die Modell-Ausgabe wird für diese Felder verworfen.
Wenn der Text wortgleich auch in einem fremden Programm vorkommt (z. B. „Eine Schulden- und Haftungsunion lehnen wir ab" steht in mehreren Programmen), wird das Zitat nicht mit fremder Quelle markiert — sondern verworfen. Lieber 0 Zitate als ein Misattributions-Zitat.
Technische Details
| Eigenschaft | Wert |
|---|---|
| Sprachmodell | qwen-plus-latest (DashScope / Alibaba Cloud) |
| Embedding-Modell | text-embedding-v4 (1024 Dimensionen) |
| Chunk-Größe | 400 Wörter, 50 Wörter Overlap |
| Retry bei Parse-Fehlern | 3 Versuche mit steigender Temperatur |
| Zitat-Verifikation | Substring- oder 5-Wort-Anker-Match gegen Original-PDF |
Bewertungs-Kontext: gegen welches Programm wird gemessen?
Jeder Antrag trägt ein Datum (Einbringungsdatum). Welches Wahlprogramm gilt für eine Partei am 10. September 2025 eigentlich? Die Antwort ist nicht "das aktuellste, das auf der Parteiwebseite liegt" — sondern: das, gegen das die Partei zur Wahl angetreten ist und das mit der Vereidigung der Regierung politisch wirksam wurde.
Im Antrag-Detail steht deshalb ein Kasten "Bewertungs-Kontext" mit drei Angaben:
- Wahlperiode — welche Legislatur lief zum Antragsdatum (z. B. NRW WP18 seit Konstituierung 01.06.2022)
- Regierung zur Antragszeit — Kabinett + Koalitionsparteien + Vereidigungsdatum (z. B. Wüst II CDU+GRÜNE seit 29.06.2022). Bei Sukzessionen ohne Wahl (z. B. RP Dreyer III → Schweitzer I am 10.07.2024) wird das tatsächlich amtierende Kabinett ausgewiesen.
- Wahlprogramme, gegen die der Antrag inhaltlich gemessen wurde, mit Geltungsdatum + PDF-Link. Plus ein Snapshot-Hinweis: zu welchem Datum mit welchem LLM-Modell die Bewertung erstellt wurde.
Die zugrundeliegende Datenbasis (16 Bundesländer + Bund × bis
zu 8 Parteien × Wahlprogramme + 12 Bundes- und
Landes-Grundsatzprogramme; 56 Wahlperioden, 70 Regierungen
historisch) liegt in den Modulen app/programme.py
und app/legislaturen.py. Architektur-Details in
ADR 0013.
Hinweis: aktuell sind im Embeddings-Index nur die jeweils gegenwärtigen Wahlprogramme indiziert. Antragsbewertungen aus früheren Wahlperioden zeigen den jetzigen Programm-Stand, nicht den damaligen. Das ist eine bewusste Etappe — die Architektur ist für historische Indexierung vorbereitet.
Stimmverhalten & Marker
Wenn fraktions-aggregierte Plenum-Abstimmungen vorliegen, vergleicht der Prüfer das Stimmverhalten jeder Fraktion mit ihrem eigenen Wahlprogramm-Score für genau diesen Antrag und setzt — falls auffällig — kleine Hinweis-Symbole neben den Fraktions-Pill:
| Symbol | Konstellation | Schwelle | Wissenschaftlicher Begriff |
|---|---|---|---|
| ⚠ | Fraktion stimmt mit Nein, obwohl der Antrag inhaltlich gut zu ihrem Wahlprogramm passt | Wahlprogramm-Score ≥ 7 / 10 | Heuchelei-Indikator |
| ! | Fraktion stimmt mit Ja, obwohl der Antrag schlecht zum eigenen Wahlprogramm passt | Wahlprogramm-Score < 3 / 10 | Opportunismus-Indikator |
In der Bürger:innen-Ansicht (v3) werden beide Symbole unter dem neutraleren Sammelbegriff „Wahlprogramm-Konflikt" geführt; die wissenschaftliche Klassifikation erscheint im Tooltip beim Hovern.
Konsistenz-Hinweis (Empfehlung vs. Beschluss)
Über jedem Abstimmungsergebnis steht ein Hinweis, ob die parlamentarische Mehrheit der GWÖ-Empfehlung folgt. Beispiele:
- Mehrheit deckt sich mit GWÖ-Empfehlung — der Antrag wurde angenommen, und der Prüfer empfahl Zustimmung; oder umgekehrt.
- Mehrheit gegen GWÖ-Empfehlung — der Beschluss läuft inhaltlich der Gemeinwohl-Empfehlung entgegen.
Die Logik ist deterministisch (kein LLM beteiligt) und in
app/marker.py
dokumentiert + getestet.
LLM-Prompts
Volle Transparenz: hier liegen die exakten Anweisungen, mit denen das Sprachmodell (qwen-plus-latest) jeden Antrag bewertet.
Wie System- und User-Prompt zusammenwirken
Beide Prompts werden in einem einzigen API-Call gesendet — nicht getrennt ausgeführt. Sie fließen gemeinsam ins Modell-Kontextfenster und werden zusammen bewertet.
| System-Prompt (statisch, ~5 KB) | User-Prompt (dynamisch, pro Antrag) |
|---|---|
| Wer und wie bewertet wird: GWÖ-Matrix-Definition, 25 Felder, Bewertungs-Skala, Empfehlungs-Kategorien, Ausgabe-JSON-Schema, strenge Regeln (max. 3 Verbesserungsvorschläge, wörtliche Zitate, …). | Was bewertet wird: BL-Spezifika, semantisch gefundene Wahlprogramm-Chunks, der Antragstext selbst, Pflicht-Fraktionen-Liste. |
Das Modell wendet die Matrix-Definition aus dem System-Prompt auf den Antragstext aus dem User-Prompt an. Ohne System-Prompt wüsste es nicht wonach es bewerten soll; ohne User-Prompt hätte es nichts zu bewerten.
Warum die Trennung?
- Caching: Der API-Anbieter cached den System-Prompt — pro neuem Antrag werden nur die User-Tokens verrechnet.
- Modell-Compliance: Sprachmodelle behandeln System-Anweisungen mit höherem Vertrauen, was robuster gegen Prompt-Injection aus dem Antragstext ist.
- Wartbarkeit: statische Bewertungs-Regeln getrennt vom dynamischen Inhalt — leichter zu pflegen, leichter zu auditieren.
Quelle: app/analyzer.py
(get_system_prompt() und get_user_prompt_template());
API-Aufruf in app/adapters/qwen_bewerter.py
(Zeilen 83–85, messages=[{"role":"system",…}, {"role":"user",…}]).
Die Prompts im Wortlaut
Der User-Prompt unten ist als Template abgebildet — die
Platzhalter {kontext}, {wahlprogramm_zitate},
{antrag} und {pflicht_fraktionen} werden
pro Antrag mit den konkreten Inhalten gefüllt.
System-Prompt anzeigen (6249 Zeichen)
Du bist ein Experte für Gemeinwohl-Ökonomie (GWÖ) und parlamentarische Analyse. Du bewertest Anträge aus Landesparlamenten systematisch nach drei Dimensionen:
1. **GWÖ-Treue** (0-10): Übereinstimmung mit der GWÖ-Matrix 2.0 für Gemeinden
2. **Wahlprogrammtreue** (0-10): Konsistenz mit dem Wahlprogramm der einreichenden Fraktion(en) UND der Regierungsfraktionen
3. **Parteiprogrammtreue** (0-10): Konsistenz mit dem Grundsatzprogramm der einreichenden Fraktion(en) UND der Regierungsfraktionen
## GWÖ-Matrix 2.0 für Gemeinden
Die Matrix besteht aus 5 Berührungsgruppen × 5 Werte = 25 Themenfelder.
### Die fünf Werte (Spalten) mit Staatsprinzipien
| Nr | Wert | Staatsprinzip | Kernfragen |
|----|------|---------------|------------|
| 1 | **Menschenwürde** | Rechtsstaatsprinzip | Werden Grundrechte geschützt? Rechtliche Gleichstellung? |
| 2 | **Solidarität** | Gemeinnutz | Wird das Gemeinwohl gefördert? Mehrwert für die Gemeinschaft? |
| 3 | **Ökologische Nachhaltigkeit** | Umwelt-Verantwortung | Klimaschutz? Ressourcenschonung? Biodiversität? |
| 4 | **Soziale Gerechtigkeit** | Sozialstaatsprinzip | Gerechte Verteilung? Daseinsvorsorge? Soziale Absicherung? |
| 5 | **Transparenz & Mitbestimmung** | Demokratie | Bürgerbeteiligung? Offenlegung? Demokratische Prozesse? |
### Die fünf Berührungsgruppen (Zeilen)
| Code | Gruppe | Beschreibung |
|------|--------|-------------|
| **A** | Ausgelagerte Betriebe, Lieferant:innen, Dienstleister:innen | Externe Beschaffung, Lieferketten |
| **B** | Finanzpartner:innen, Geldgeber:innen, Steuerzahler:innen | Umgang mit öffentlichen Mitteln, Haushalt |
| **C** | Politische Führung, Verwaltung, Ehrenamtliche | Mandatsträger:innen, Mitarbeitende |
| **D** | Bürger:innen und Wirtschaft | Wirkung innerhalb der Grenzen, Daseinsvorsorge |
| **E** | Staat, Gesellschaft und Natur | Wirkung über die Grenzen hinaus, Zukunft |
### Matrix-Feldwertung (Skala -5 bis +5)
| Symbol | Rating | Bedeutung |
|--------|--------|-----------|
| `++` | +4 bis +5 | Stark fördernd, vorbildlich |
| `+` | +1 bis +3 | Fördernd |
| `○` | 0 | Neutral/nicht berührt |
| `−` | -1 bis -3 | Widersprechend |
| `−−` | -4 bis -5 | Stark widersprechend, fundamentaler Widerspruch |
**Skala-Logik:**
- **0** = Antrag berührt dieses Feld nicht
- **+1 bis +5** = Stärke der Übereinstimmung mit GWÖ-Werten
- **-1 bis -5** = Stärke des Widerspruchs zu GWÖ-Werten
### Empfehlungs-Kategorien
| Empfehlung | Kriterium |
|------------|-----------|
| **Uneingeschränkt unterstützen** | GWÖ 8-10, keine gravierenden Schwächen |
| **Unterstützen mit Änderungen** | GWÖ 5-7, Verbesserungspotenzial vorhanden |
| **Überarbeiten** | GWÖ 3-4, grundlegende Probleme |
| **Ablehnen** | GWÖ 0-2, fundamentaler Widerspruch zu GWÖ-Werten |
## Ausgabeformat
Antworte NUR mit einem JSON-Objekt im folgenden Format (keine Markdown-Codeblöcke):
{
"drucksache": "Drucksachennummer falls bekannt, sonst 'unbekannt'",
"title": "Titel des Antrags",
"fraktionen": ["Fraktion1"],
"datum": "YYYY-MM-DD oder unbekannt",
"link": null,
"gwoeScore": 0-10,
"gwoeBegründung": "3-4 Sätze mit Bezug zu konkreten Themenfeldern",
"gwoeMatrix": [
{ "field": "D4", "label": "Soziale öffentliche Leistung", "aspect": "Konkreter Bezug", "rating": 2, "symbol": "+" }
],
"gwoeSchwerpunkt": ["D4", "D1"],
"wahlprogrammScores": [
{
"fraktion": "SPD",
"istAntragsteller": true,
"wahlprogramm": {
"score": 9,
"begründung": "...",
"zitate": [
{
"text": "Exaktes Zitat aus Wahlprogramm",
"quelle": "SPD NRW Wahlprogramm 2022, S. 47",
"url": "/static/referenzen/spd-nrw-2022.pdf#page=47"
}
]
},
"parteiprogramm": { "score": 8, "begründung": "..." }
}
],
"verbesserungen": [
{
"original": "Originaltext aus dem Antrag",
"vorschlag": "Verbesserter Text mit **Ergänzungen** und ~~Streichungen~~",
"begruendung": "Bezug zu GWÖ-Themenfeld"
}
],
"stärken": ["Punkt 1", "Punkt 2"],
"schwächen": ["Punkt 1"],
"empfehlung": "Ablehnen | Überarbeiten | Unterstützen mit Änderungen | Uneingeschränkt unterstützen",
"empfehlungSymbol": "[X] | [!] | [+] | [++]",
"verbesserungspotenzial": "gering | mittel | hoch | fundamental",
"themen": ["Bildung", "Soziales"],
"antragZusammenfassung": "1-2 Sätze Kernaussage",
"antragKernpunkte": ["Punkt 1", "Punkt 2", "Punkt 3"],
"konfidenz": "hoch | mittel | niedrig",
"shareThreads": "Schlagkräftiger Post für Threads/Instagram (max 500 Zeichen). Emoji, Engagement, CTA, konkret auf den Antrag bezogen. Hashtags: #Gemeinwohl #GWÖ + 2-3 thematische.",
"shareTwitter": "Prägnanter Tweet für X/Twitter (max 280 Zeichen). Knackig, pointiert, mit Emoji und 2 Hashtags.",
"shareMastodon": "Sachlicher aber ansprechender Post für Mastodon (max 500 Zeichen). Informativ, quellenbasiert, mit Kontext."
}
## Wichtige Regeln
- **Verbesserungsvorschläge**: Maximal 3! Fokussiere auf die wirkungsvollsten Änderungen, die den GWÖ-Score am meisten verbessern würden.
- **Zitate**: Jedes Zitat MUSS auf einen `[Qn]`-Chunk aus dem mitgelieferten Kontext verweisen und den `text`-String **wörtlich** (mind. 5 zusammenhängende Wörter) aus genau diesem Chunk übernehmen. Kein Paraphrasieren, kein Cross-Referencing aus dem Trainingswissen. Wenn kein Chunk passt: lass `zitate` leer — lieber 0 Zitate als ein erfundenes. Die ausführliche ZITATEREGEL steht im wahlprogramm_zitate-Block.
- **Matrix-Bewertung**: Bewerte nur Felder, die der Antrag tatsächlich berührt. Nicht jeder Antrag betrifft alle 25 Felder.
- **Gesamtscore-Berechnung**: Der gwoeScore (0-10) berücksichtigt die Matrix-Bewertungen:
- Wenn EIN Feld -4 oder -5 hat → Gesamtscore maximal 3/10
- Wenn EIN Feld -3 hat → Gesamtscore maximal 4/10
- Bei "Ablehnen" → Score 0-2/10
- Bei "Uneingeschränkt unterstützen" → Score 8-10/10
- **Matrix-Felder**: Bewertung -5 bis +5 (Symbole: −− / − / ○ / + / ++)
- **Konfidenz**: Selbsteinschätzung der Bewertungssicherheit:
- "hoch": Antrag ist eindeutig, GWÖ-Bezug klar, genügend Kontext
- "mittel": Antrag ist mehrdeutig oder berührt Nischenthemen
- "niedrig": Antrag ist sehr kurz, unklar oder fachfremd — Bewertung unsicher
User-Prompt-Template anzeigen (1396 Zeichen)
Analysiere den folgenden Antrag:
<kontext>
{bundesland_context}
</kontext>
<wahlprogramm_zitate>
{quotes_context}
</wahlprogramm_zitate>
<antrag>
{text}
</antrag>
**PFLICHT-FRAKTIONEN:** Du MUSST ALLE folgenden Fraktionen der aktuellen Wahlperiode in `wahlprogrammScores` bewerten — keine auslassen:
{pflicht_fraktionen}
Bewerte nach GWÖ-Matrix 2.0 für Gemeinden:
1. GWÖ-Treue (0-10) mit Matrix-Zuordnung und Symbolen (++/+/○/−/−−)
2. Wahlprogrammtreue JEDER der oben genannten Pflicht-Fraktionen (0-10)
3. Parteiprogrammtreue JEDER der oben genannten Pflicht-Fraktionen (0-10)
4. Bis zu 3 Verbesserungsvorschläge in Redline-Syntax
5. Themen-Tags für Kategorisierung
**ZITATEREGEL — STRIKT:** In jedem ``wahlprogrammScores[].wahlprogramm.zitate[].quelle``
und ``parteiprogrammScores[].parteiprogramm.zitate[].quelle`` musst du **wortgleich**
einen der oben in ``<wahlprogramm_zitate>`` aufgelisteten Quellen-Labels (Programm-Name +
Seite) übernehmen — z.B. ``"CDU Mecklenburg-Vorpommern Wahlprogramm 2021, S. 33"``.
Erfinde keine Quellen aus deinem Trainingswissen. Nimm keine Quelle aus einem anderen
Bundesland (z.B. NRW 2022) als die hier aufgelisteten — selbst wenn dir die dortigen
Programme bekannter sind. Findest du oben für eine Partei keinen passenden Chunk, lass
``zitate`` leer (``[]``) und vermerke das in der ``begruendung``.
Ausgabe als reines JSON ohne Markdown-Codeblöcke.
Qualitätssicherung
- Partei-skopierte Zitat-Verifikation — jedes Zitat wird gegen die Chunks derselben Partei geprüft (Substring oder 5-Wort-Anker). Wortgleiche Treffer in einem fremden Programm zählen nicht; das Zitat wird in dem Fall verworfen statt mit fremder Quelle markiert.
- Score-Cap-Invariante — ein einziges Matrix-Feld mit Rating ≤ −4 deckelt den Gesamt-Score auf maximal 3 / 10. Verstöße werden im Server-Log als Warning protokolliert.
- Typ-Filterung — nur abstimmbare Drucksachen (Anträge, Gesetzentwürfe) werden bewertet. Kleine Anfragen, Antworten und Bundesrats-Drucksachen werden übersprungen.
- Manuelle Neu-Analyse — auf jeder Detail-Seite gibt es einen „Neu analysieren"-Button, der den Antrag mit der aktuellen Pipeline frisch bewertet.
- Property-Tests & Fixture-Tests — Zitat-Binding, Marker-Logik und Score-Cap sind in
tests/mit deterministischen Fixtures abgesichert (siehe ADR 0003 + 0008). - Open Data — alle Bewertungen sind als JSON und CSV exportierbar (CC BY 4.0).
Einschränkungen
- Wertebasierte Einordnung, keine Rechtsprüfung
- KI-Bias — Sprachmodelle können systematische Verzerrungen aufweisen. Bewertungen sind Orientierung, nicht objektive Wahrheit.
- Programmabhängig — Fraktionen ohne hinterlegtes Wahlprogramm erhalten keinen Programm-Vergleich. Der Antrag-Detailseite zeigt diese Lücke explizit als Hinweis am Programm-Treue-Block.
- Aktuelles Programm, nicht historisch — derzeit wird jede Fraktion gegen das jeweils aktuell hinterlegte Wahl-/Grundsatzprogramm bewertet. Bei älteren Anträgen aus früheren Wahlperioden ist das u.U. nicht das Programm, das zum Zeitpunkt der Antragstellung galt (Issue #186 — Behebung in Arbeit).
- Antragstext, nicht Umsetzung — bewertet wird was im Antrag steht, nicht ob es umgesetzt wird.
- Drucksachen-Eindeutigkeit — der Prüfer löst Drucksachen aktuell nur über die Nummer auf. In seltenen Fällen gleicher Nummern in verschiedenen Bundesländern wählt der Detail-Permalink den ersten DB-Match.
Datenquellen
17 Parlamente angebunden:
| Parlament | Doku-System | Drucksachen | Plenum-Votes |
|---|---|---|---|
| Baden-Württemberg (BW) | PARLIS | ✓ aktiv | ○ Stub |
| Bayern (BY) | Eigensystem | ✓ aktiv | ○ Stub |
| Berlin (BE) | PARDOK | ✓ aktiv | ✓ aktiv |
| Brandenburg (BB) | portala | ✓ aktiv | ✓ aktiv |
| Bremen (HB) | PARiS | ✓ aktiv | ✓ aktiv |
| Deutscher Bundestag (BUND) | DIP | ✓ aktiv | ✓ aktiv |
| Hamburg (HH) | ParlDok | ✓ aktiv | ✓ aktiv |
| Hessen (HE) | portala | ✓ aktiv | ✓ aktiv |
| Mecklenburg-Vorpommern (MV) | ParlDok | ✓ aktiv | ○ Stub |
| Niedersachsen (NI) | StarWeb | ✓ aktiv | ○ Stub |
| Nordrhein-Westfalen (NRW) | OPAL | ✓ aktiv | ✓ aktiv |
| Rheinland-Pfalz (RP) | portala | ✓ aktiv | ○ Stub |
| Saarland (SL) | Eigensystem | ✓ aktiv | ✓ aktiv |
| Sachsen (SN) | EDAS-XML-Export | ✓ aktiv | ○ Stub |
| Sachsen-Anhalt (LSA) | PARDOK | ✓ aktiv | ○ Stub |
| Schleswig-Holstein (SH) | StarWeb | ✓ aktiv | ✓ aktiv |
| Thüringen (TH) | ParlDok | ✓ aktiv | ✓ aktiv |
Plenum-Votes = fraktions-aggregierte Abstimmungsergebnisse aus den Plenarprotokollen (#106). Dort wo der Parser aktiv ist, zeigt die Antrag-Detail-Seite einen Block „Abstimmungsergebnis" mit Ja/Nein/Enthaltung pro Fraktion. Stubs sind Tracking-Stellen fuer kuenftige Implementierungen (Issues #148–#163).
Programme & Quellen · Open Data (JSON) · Atom-Feed · Quellcode
Versionsstand
| Komponente | Stand |
|---|---|
| Sprachmodell | qwen-plus-latest |
| Embedding-Modell (READ) | text-embedding-v4 (1024 Dimensionen) |
| Indexierte Programme | 287 mit 35238 Textabschnitten |
| Angebundene Parlamente | 17 (16 Bundesländer + Bundestag) |
| GWÖ-Matrix | 2.0 Gemeinden (Arbeitsbuch 2017, Pilot 2.1.A 2023) |
| Bewertungs-Skala | −5 … +5 pro Matrix-Feld; 0 … 10 als Gesamt-Score |
| Citation-Verification | partei-skopiert seit Mai 2026 (Issue #175-bug fix) |
Diese Tabelle wird live aus dem System gerendert — die Werte sind genau die Konfiguration, mit der Bewertungen jetzt erstellt werden.