= Beispieldaten: Landesrecht weiterer Länder
Matthias Andreas Benkard
// SPDX-FileCopyrightText: 2026 Matthias Andreas Benkard <code@mail.matthias.benkard.de>
// SPDX-License-Identifier: AGPL-3.0-or-later

Ergänzend zum bayerischen Belegfall (`BayJG/`) sind hier Änderungsgesetze und
Änderungsverordnungen aus dem Landesrecht weiterer Länder gesammelt. Sie dienen als
Kandidaten für künftige Ertüchtigungswellen und decken Konventionen ab, die im Bundes- und
im bayerischen Recht so nicht vorkommen.

WICHTIG: Anders als Bayern (Art./§-Inversion) gliedern alle übrigen Länder ihre Stammgesetze
in *§* (wie der Bund) mit `Artikel N` als Änderungsgesetz-Container. Die neuen Testdimensionen
liegen daher im *PDF-Layout* und in *Befehlsidiom-Varianten*, nicht in der Gliederung.

Zu jedem Beispiel gehört ein *Änderungsgesetz*; wo auch die *konsolidierte Stammfassung* vorliegt
(nötig für einen Akzeptanztest wie bei BayJG), ist der Fall bis zur Anwendung belegt. Die
Stammfassung kommt je Land aus dem Portal des Landes oder als handgepflegter Klartext analog zu
`BayJG/BayJG-alt.txt`; welcher Weg trägt, steht unter „Beschaffung der Stammfassungen“.

== Übersicht

[cols="1,3,3",options="header"]
|===
|Land |Datei / Fundstelle |Besonderheit für das Werkzeug

|Berlin
|`Berlin/GVBl-2026-17_ASOG-LAF-AendG.pdf` — GVBl. für Berlin Nr. 17 vom 11.06.2026, S. 234
(Gesetz zur Änderung des ASOG und des LAF-Errichtungsgesetzes vom 03.06.2026)
|*Zweispaltiges Layout* (Herausgabe über Wolters Kluwer). Innerhalb einer Spalte ist die
Reihenfolge des Inhaltsstroms bereits die Lesereihenfolge; die ganzseitenbreiten Rahmen dagegen
stehen an falscher Stelle im Strom — der Titelblock wird *zuletzt* gezeichnet, obgleich er über
beiden Spalten steht, und landete damit mitten im Fließtext. Seit Welle 21 folgt die Reihenfolge
dem Satzbild (Rinne zwischen den Spalten, breite Zeilen als Bandgrenzen), und der Titelblock steht,
wo er hingehört. Tiefe Verschachtelung
a)/aa)/bb)/cc); Artikel 1 ändert eine *Anlage*, deren Einheiten als *Überschriften* („Nummer 6")
statt als Aufzählungsmarken gesetzt sind. Artikel 2 (LAF-Errichtungsgesetz) ist ein voller
Akzeptanzfall; das Portal setzt die amtlichen *Satznummern als angeklebte Ziffern* („(2) 1Gegen …").

|Schleswig-Holstein
|`SchleswigHolstein/GVOBl-2026-27_Kommunalrecht-AendG.pdf` — GVOBl. Schl.-H. 2026/27 vom
30.03.2026 (Gesetz zur Änderung des Gesetzes zur Änderung kommunalrechtlicher Vorschriften)
|Neues Neufassungsidiom „§ 34a Absatz 1 *erhält folgende Fassung*:" (statt „wird wie folgt
gefasst"); *hochgestellte Fußnotenmarker an Artikel-Überschriften* („Artikel 1 ¹)"); Meta-
Änderung an einem anderen Änderungsgesetz („Artikel 5 wird gestrichen"). Voller Akzeptanzfall für
*zwei* Stammgesetze zugleich (Gemeindeordnung, Kreisordnung); der Portalsatz trennt die
*Sachnummer* ab („§ 57 c") und setzt im Klammerzusatz einen *Bindestrich* statt des
Gedankenstrichs.

|Hessen
|`Hessen/GVBl-2026-05_11-AendVO-verkehrsrechtl-Zustaendigkeiten.pdf` — GVBl. Hessen Nr. 5 vom
03.02.2026 (Elfte Verordnung zur Änderung der Verordnung zur Bestimmung verkehrsrechtlicher
Zuständigkeiten)
|*Sperrsatz* in Datums- und Signaturzeilen („3 . F e bru a r 2 02 6", „Der Mi n is t er pr
äs i d e nt") — er trifft, anders als erwartet, nur den Unterschriftenblock und keinen Befehl;
*abgekürztes „Abs."/„Nr." im §-Kontext*; die *FFN-Fußnote der Überschrift* („* Ändert FFN 61-60")
steht am Seitenfuß mitten zwischen zwei Gliederungspunkten. Die Stammverordnung führt *keine
Paragraphenüberschriften* und gliedert sich in *ausgeschriebene Ordinalzahlen* („Erster Teil").
Voller Akzeptanzfall, Stammfassung `Hessen/StVRZustV-alt.txt`, Prüfmaßstab
`Hessen/StVRZustV-neu.txt`.

|Niedersachsen
|`Niedersachsen/Nds-GVBl-2026-10_ELER-Foerdergesetz-AendG.pdf` — Nds. GVBl. 2026 Nr. 10 vom
04.02.2026 (Gesetz zur Änderung des Niedersächsischen ELER-Fördergesetzes) +
`Nds-GVBl-2026-23_BeurtVO-Steuer_amtliche-Satznummern.pdf` — Nr. 23 vom 18.03.2026
|*Hochgestellte amtliche Satznummern ¹²³* wie Bayern, aber im *§-Modus* (nicht invertiert) →
das bayerische Superskriptmodul wäre wiederverwendbar. Nr. 23 (Verordnung) zeigt die
Satznummern deutlich; Nr. 10 ist das eigentliche Änderungsgesetz (Idiom „Absatz 1 erhält
folgende Fassung"). Saubere einspaltige PDFs über die stabile API `verkuendung-niedersachsen.de`.

|Baden-Württemberg
|`BadenWuerttemberg/GBl-2026-26_KommunalwahlO-AendVO.pdf` — GBl. BW 2026 Nr. 26 vom 27.02.2026
(Verordnung des Innenministeriums zur Änderung der Kommunalwahlordnung)
|Standard-HdR-Befehle im GBl-Layout; „werden nach dem Wort … die Wörter … eingefügt",
„werden die Wörter … gestrichen". Unterscheidend ist der *Seitenfuß mitten im Befehlstext* — er
trennt dort den Zieltext eines Befehls von seinem Verb —, dazu die *Blattzählung* („Seite 2 von
7") zwischen zwei Gliederungspunkten, der *Dativ ohne Artikel* („Absatz 2 wird folgender Satz
angefügt") und der *Klammerzusatz hinter einer Anlagenbezeichnung*. Voller Belegfall,
Stammfassung `BadenWuerttemberg/KomWO-BW-alt.txt`, Prüfmaßstab `KomWO-BW-neu.txt`.

|Nordrhein-Westfalen
|`NRW/GV-NRW-2026-S202_22-Rundfunkaenderungsgesetz.pdf` — GV. NRW. 2026 Nr. 7 vom 31.03.2026,
S. 202 (22. Rundfunkänderungsgesetz)
|Umfangreiches Mehrgesetz-Artikelgesetz (17 S.); „Die Inhaltsübersicht wird wie folgt
geändert", „§ … (weggefallen)". Bereitgestellt aus dem amtlichen recht.nrw.de-PDF. *Unbalancierte
Anführungszeichen* im amtlichen Satz (Artikel 2 Nr. 7 b und Nr. 11). Konsolidierte Fassungen sind
über `recht.nrw.de/lrgv/gesetz/<TTMMJJJJ>-<Kurztitel-Slug>` frei und serverseitig gerendert
abrufbar; der Datumspräfix ist der Gültigkeitsbeginn der jeweiligen Fassung.

|Sachsen
|`Sachsen/SaechsGVBl-2026-S134_AendG-SaechsBeamtVG_revosax.pdf` — SächsGVBl. S. 134
(Gesetz zur Änderung des Sächsischen Beamtenversorgungsgesetzes vom 13.04.2026)
|Kompaktes Änderungsgesetz, Verschachtelung a)/aa)/bb)/cc), „wird durch den folgenden Satz
ersetzt". Quelle: revosax-Gesamtansicht (nicht der Original-GVBl-Satz — recht-sachsen.de ist ein
cookie-/kostenpflichtiger Shop).

|Brandenburg
|`Brandenburg/GVBl-I-2026-12_FraktG-AendG.pdf` — GVBl. I Brandenburg 2026 Nr. 12 vom 22.04.2026
(Erstes Gesetz zur Änderung des Fraktionsgesetzes)
|Erstes Land mit *offenem Portal* statt juris-Einseitenanwendung: BRAVORS gibt seine Vorschriften
als gewöhnliches HTML und führt unter „Änderungshistorie" *jede Fassung einzeln* — Vor- und
Nachfassung entstammen damit derselben Quelle. Die Hefte lassen sich am *Dokumententitel des PDF*
einordnen (`/Title` = „FraktG-1AendG"). Beim Aufbereiten: Die Abschnittsbezeichnung steht im
Kopfelement *vor* der Überschrift, die Aufzählungen sind echte `<ol>`-Listen, deren Marken erst das
Stilblatt erzeugt, und an ehemaligen Trennstellen führt das Portal vereinzelt *Steuerzeichen*
(U+0002) mit. Voller Akzeptanzfall (4/4 Befehle, alle 24 Normen).

|Bremen
|`Bremen/BremGBl-2026-87_BerufsfachschulVO-AendVO.pdf` — Brem.GBl. 2026 Nr. 87 vom 20.08.2026,
S. 573 (Änderung der Verordnung über die Berufsfachschule für technische und kaufmännische
Assistentinnen und Assistenten vom 10.08.2026)
|Einspaltiges, sauberes Blatt; die Eigenheiten liegen in der *Befehlssprache*: die Neufassung des
*Namens* der Verordnung, die bloße Aufzählungsmarke als Stellenangabe („In e) …“, „f) wird
gestrichen“), die Marke mit Schlusspunkt („Nummer 1. wird wie folgt gefasst“), „durch die Worte …
*geändert*“ statt „ersetzt“, die Anfügung „am Ende um Satz 2 ergänzt“ und das *benannte*
Satzzeichen („das Satzzeichen „Punkt“ wird aufgehoben und folgendes angefügt“). Dazu *zwei* nicht
geschlossene Zitate in einem Abschnitt. Voller Belegfall; Vor- *und* Nachfassung stammen aus
demselben offenen Portal (`transparenz.bremen.de`, Schaltfläche „Frühere Fassungen“).

|Mecklenburg-Vorpommern
|`MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf` — GVOBl. M-V 2026 Nr. 21 vom
21.07.2026, S. 719, 740 (Artikel 44 des Besoldungsanpassungsgesetzes vom 08.07.2026)
|*Mantelgesetz mit rund sechzig Artikeln*, von denen jeder ein anderes Werk ändert — der schärfste
Prüfstein der Artikelwahl. Zweispaltiger Satz; Kolumnentitel *und* Seitenfuß stehen im
Inhaltsstrom, mitten im Befehlstext, und zerschneiden Wörter. Der erste Befehl ändert die
*Inhaltsübersicht* („die Angabe zu § 10 wird durch die folgende Angabe ersetzt“), der siebte die
Überschrift des § 10 selbst. Dazu eine Bereichs-Streichung samt Bereichs-Umnummerierung („Die
Nummern 4 bis 6 werden *zu* den Nummern 2 bis 4“). Belegfall bis zur Anwendung; eine Nachfassung
gibt es nicht, weil die Änderung erst zum 01.09.2026 in Kraft tritt.

|Hamburg
|`Hamburg/HmbGVBl-2026-17_GutachterausschussVO-AendVO.pdf` — HmbGVBl. Teil I Nr. 17 vom
26.05.2026, S. 147 (Verordnung zur Änderung der Verordnung über den Gutachterausschuss für
Grundstückswerte vom 12.05.2026)
|Sammelheft mit drei Verkündungen, deren erste sich in *Artikel*, deren zweite sich in
*Paragraphen* gliedert — beide Gliederungen nebeneinander in einem Heft. Die Änderungsbefehle
sind *dezimal* gegliedert („6.1“, „7.1.1“, „7.2.3“). Der Satz setzt zwischen § und Nummer ein
*schmales Leerzeichen* (U+2009), führt den Kolumnentitel im Inhaltsstrom und lässt das
Schlusswort der Eingangsformel („verordnet:“) in die rechte Spalte fallen. Idiome: „die
Textstelle „…““, „Hinter § 7 wird folgender § 7a eingefügt“, „Es wird folgender Absatz 3
angefügt“, „§§ 6 und 7 erhalten folgende Fassung“. Voller Belegfall, Stammfassung
`Hamburg/GAusschV-HH-alt.txt` (Ursprungsfassung aus HmbGVBl. Nr. 20/2009, S. 124), Prüfmaßstab
`GAusschV-HH-neu.txt`. Das Blatt selbst liegt bei `luewu.de` frei; das Portal ist eine
juris-Einseitenanwendung *ohne* Fassungsliste — es führt nur die aktuelle Gesamtausgabe und
eine Änderungshistorie.

|Rheinland-Pfalz
|`RheinlandPfalz/GVBl-2026-21_UKAPOGS-E3-AendVO.pdf` — GVBl. RP 2026 Nr. 21 vom 10.08.2026
(Erste Landesverordnung zur Änderung der Ausbildungs- und Prüfungsordnung … Unfallkasse)
|Nur bis zur *Befehlserkennung* belegt: Das Portal führt *keine früheren Gesamtausgaben* (ebenso
Saarland und Sachsen-Anhalt; geprüft 24.08.2026), sodass die Vorfassung fehlt — der Stamm ist hier
die Nachfassung, und die neun „Zieltext nicht vorhanden" sind gerade der Beleg dafür. Zwei
allgemeine Funde: Das Land schreibt „die *Worte*" statt „die Wörter" (ohne die Nebenform blieben
sieben von 23 Befehlen unerkannt), und der *Seitenfuß* steht im Inhaltsstrom und zerschneidet das
Zitat einer Neufassung. Offen bleiben drei Idiome: Satzzeichen-Ersetzung im Verbund mit einer
Halbsatz-Anfügung („durch einen *Strichpunkt* ersetzt und folgender Halbsatz angefügt"), „In der
*Einleitung*" als Ziel, und die Verweisung auf einen anderen Punkt („entsprechend der vorstehenden
Nummer 8 Buchst. a").

|Thüringen
|`Thueringen/GVBl-TH-2026-02_KiGaFinanzVO-AendVO-ua.pdf` — GVBl. Freistaat Thüringen Nr. 2 vom
13.02.2026 (u. a. Vierte Verordnung zur Änderung der Thüringer Kindergartenfinanzierungs-
verordnung)
|Sammelheft (28 S.) mit vier Verkündungen, davon eine Änderungsverordnung. Unterscheidend: Das
Blatt führt *kein einziges* `„`, sondern setzt gerade Anführungszeichen beidseitig; dazu das
Idiom „die Verweisung „X" durch die Verweisung „Y" ersetzt", ein Rahmen, der sich auf eine
Untereinheit der umnummerierten Norm verengt, und eine Bereichs-Umnummerierung über einen
aufgehobenen Platzhalter hinweg. Voller Akzeptanzfall, Stammfassung
`Thueringen/ThuerKigaFinVO-alt.txt`.
|===

== Stand der Umsetzung

* *Sachsen* ist als erster nichtbayerischer Belegfall vollständig umgesetzt: konsolidierte
  Vorfassung `Sachsen/SaechsBeamtVG-alt.txt` (kanonischer Klartext, Fassung vom 01.02.2025, aus
  der archivierten revosax-Volltextfassung abgeleitet) und End-to-End-Akzeptanztest
  (`EndToEndTest.saechsBeamtVgAcceptance`; fünf Befehle, kein Rest).
* *Niedersachsen* ist umgesetzt: `Niedersachsen/NEFG-alt.txt` (seit 2022 unveränderter NEFG, aus
  dem zweispaltigen Nds. GVBl 2022 Nr. 33) und `EndToEndTest.nefgAcceptance` (alle sieben Befehle
  angewandt, kein Rest — einschließlich der beiden niedersächsischen Einfügeformen: Sachnummer mit
  Leerzeichen „§ 2 a“ und gliederungsbezogene Einfügung „In Kapitel 4 wird nach § 12 …“).
* *Schleswig-Holstein* ist *vollständig* umgesetzt
  (`EndToEndTest.kommunalrechtAendGSchleswigHolstein`): Artikel 1 trifft die Gemeindeordnung,
  Artikel 2 die Kreisordnung, je ein Neufassungsbefehl, kein unbekannter Befehl — und beide
  Gesetze gleichen nach der Anwendung Norm für Norm der amtlichen Nachfassung vom 31. März 2026
  (167 bzw. 86 Normen). Artikel 3 ändert ein anderes Änderungsgesetz und wird zu Recht nicht
  gewählt. Beide Stammfassungen sind über die Browsersteuerung beschafft.

* *Nordrhein-Westfalen* ist der Massentest-Fall: aus demselben Heft sind alle vier ändernden
  Artikel als Akzeptanzfälle hinterlegt.
+
--
`EndToEndTest.tmzGesetzAcceptance`:: Artikel 3 (Telemedienzuständigkeitsgesetz), vier Befehle,
kein Rest. Stamm `NRW/TMZ-Gesetz-alt.txt`.
`EndToEndTest.wdrGesetzAcceptance`:: Artikel 1 (WDR-Gesetz), 101 Befehle an 31 Normen, davon 100
angewandt. Stamm `NRW/WDR-Gesetz-alt.txt` (Fassung vom 01.01.2025). Der Fall trägt die
Umnummerierungs-Kaskaden (§ 3: Absatz 2 → zwei Absätze, die Absätze 3 bis 11 rücken auf, ein neuer
Absatz 13 kommt hinzu; § 15 Absatz 3: Nummer 22 entfällt, 23 bis 37 rücken auf), den Sammelrahmen
„Es werden ersetzt:“ und die Angabe-Befehle auf die Inhaltsübersicht. Einziges Residuum ist
Nr. 13 e) aa): „der Punkt am Ende des Satzes“ ist in einer zweisätzigen Nummer nicht eindeutig.
`EndToEndTest.lmgNrwAcceptance`:: Artikel 2 (Landesmediengesetz), 18 Befehle, kein Rest. Stamm
`NRW/LMG-NRW-alt.txt` (Fassung vom 01.01.2025).
`EndToEndTest.rundfunkAusfuehrungsgesetzAcceptance`:: Artikel 4 (17. RÄStV-AusfG), ein Befehl,
kein Rest. Stamm `NRW/17-RAEStV-AusfG-alt.txt` (Erstfassung vom 17.12.2015, bis 2026 unverändert).
Der Artikel führt seinen Befehl *ohne* Gliederungspunkt — der Text nach der Änderungsformel ist
der Befehl —, und das Zitat der neuen Fassung trägt verschachtelte Anführungszeichen (ein
vollständiges „durch Artikel 3 …“ innerhalb einer eckigen Klammer). Beides trägt die vorhandene
Maschinerie.
--
+
Alle vier Ergebnisse sind normweise gegen die amtliche Fassung vom 01.04.2026 abgeglichen. Es
bleiben nur Abweichungen, in denen die amtliche Nachfassung selbst vom Befehlswortlaut abweicht
(§ 15 WDR-Gesetz: „des“ vor „Bundesreisekostengesetzes“ entfallen; § 7 und § 21 WDR-Gesetz: ein
überzähliges Anführungszeichen aus dem Änderungsgesetz; § 93 LMG NRW: zusätzlich die Wörter
„Film (“ gestrichen) — ÄndGgner wendet dort den Wortlaut an. Damit ist das Heft GV. NRW. 7/2026
vollständig belegt.
* *Mecklenburg-Vorpommern* ist umgesetzt (`EndToEndTest.apoAmtsTaMecklenburgVorpommern`): 24
  Befehle gelesen, 20 angewandt. Liegen bleiben allein die vier, die die Anlagen betreffen — die
  Stammfassung führt sie nicht mit (Tabellen und Vordrucke), und der letzte verweist auf einen
  Anhang des ändernden Gesetzes. Der Fall hat zwei Muster für das Gesetzblatt gebracht
  (`GVOBL_MV_KOPF`, `GVOBL_MV_FUSS`) und eine Nebenform der Inhaltsübersichts-Anweisung („durch die
  folgende Angabe ersetzt“ neben „wie folgt gefasst“). Die Stammfassung ist gegen die
  Gesamtausgabe des Portals geprüft, die zum Stichtag noch die Vorfassung ist.
* *Bremen* ist umgesetzt (`EndToEndTest.berufsfachschulVOBremen`): 41 Befehle gelesen, 37
  angewandt; 26 von 29 Normen gleichen der amtlichen Nachfassung, eine fehlt. Der Fall hat sechs
  allgemeine Funde gebracht: Die *Aufzählungs-Zitatgrenze* darf nicht verlangen, dass der Rest des
  Abschnitts ausbalanciert zurückbleibt — ein Abschnitt kann mehrere offene Zitate tragen, und
  jedes ist an seiner eigenen Grenze zu schließen; sie prüft nunmehr, dass kein schließendes
  Anführungszeichen ohne öffnendes zurückbleibt. Eine *unvollendet endende Neufassung*
  (Doppelpunkt, Komma) meint den Vordersatz allein und lässt die Untergliederung stehen. Das
  Zitat des *ersten* Satzes trägt die Absatzbezeichnung mit, die dem Absatz gehört und nicht dem
  Satz. Ein *Platzhalter* „(weggefallen)“ hält nur Platz innerhalb desselben Blockes — die
  Buchstaben einer anderen Nummer gehen ihn nichts an. Eine angefügte Einheit, die ihre *Nummer*
  nennt, tritt an den genannten Platz und nicht ans Ende. Und ein Umbruch mitten im Satz ist
  Satzspiegel: Endet die vorige Zeile auf ein Binde- oder Verhältniswort, so wird
  zusammengezogen. Dazu ein aufgedeckter stiller Mangel: „*hinter* dem Wort“ war zwar im Muster
  zugelassen, wurde aber nirgends geprüft — die Wörter traten vor den Anker statt dahinter.
* *Hamburg* ist umgesetzt (`EndToEndTest.gutachterausschussVOHamburg`): 21 Befehle gelesen,
  17 angewandt; zehn von vierzehn Normen gleichen der amtlichen Nachfassung. Der Fall hat sechs
  allgemeine Funde gebracht: die Dezimalgliederung der Befehle; die §-Teilung eines Heftes, das
  daneben Artikel führt; das schmale Leerzeichen; den Kolumnentitel im Inhaltsstrom; die
  Grundlinien-Ordnung innerhalb einer Spalte; und drei Anwendungsfunde (ein Satzzeichen, das an
  die Stelle eines Wortes tritt, nimmt dessen Zwischenraum mit; ein an eine Aufzählung angefügter
  Satz steht auf eigener Zeile in der Einrückung des Blockes; die Neufassung einer Bezeichnung,
  die eine aufsteigende Umnummerierung räumt, tritt hinter diese zurück, damit der bisherige
  Wortlaut nicht verlorengeht). Von den vier Abweichungen liegen drei an der Vorlage: Zwei Befehle
  schreiben „wir“ statt „wird“ (ein Verkündungsfehler — geraten wird nicht), und in § 6 setzt das
  Gesetzblatt ein Komma, das das Portal führt, nicht. Die vierte ist eine benannte Grenze: die
  Neufassung einer soeben geräumten Bezeichnung als Einfügung zu vollziehen.

* *Berlin* ist umgesetzt (`EndToEndTest.asogLafAendGBerlin`). Artikel 2
  (LAF-Errichtungsgesetz) ist ein *voller* Akzeptanzfall: beide Befehle angewandt, alle fünf
  Normen gleich der amtlichen Nachfassung vom 12. Juni 2026. Artikel 1 (ASOG) wird vollständig
  erkannt und zu fünf Sechsteln angewandt; 169 der 171 Normen gleichen danach der Nachfassung.
  Die Nummern der Anlage sind seit dieser Welle *eigene Normen* („Anlage Nummer 23“), wie das
  Portal sie führt — damit trägt die vorhandene Absatz-Maschinerie ihre Befehle. Beide
  Stammfassungen sind über die Browsersteuerung beschafft.
+
--
Die zwei Abweichungen sind benannt und liegen nicht in der Anwendung: § 67 (das Portal setzt
amtliche Satznummern, das Gesetzblatt nicht) und Anlage Nummer 23 (der eine Rest, siehe unten).
Die Anlage Nummer 31 war die dritte, bis die Lesereihenfolge dem Satzbild folgte: Der
ganzseitenbreite Titelblock stand im Inhaltsstrom mitten in ihrem Zitat. Der eine liegengebliebene
Befehl benennt eine Grenze des Klartextformats:
Ein Zwischentitel ohne Absatzbezeichnung („Aus dem Bereich Verkehr:“) wird dem vorangehenden
Absatz zugeschlagen, weshalb dessen Text nicht auf den Punkt endet, den der Befehl meint.
--
* *Hessen* ist *vollständig* umgesetzt (`EndToEndTest.verkehrsZustVAendVOHessen`): alle
  21 Befehle des Artikels 1 werden erkannt und angewandt, und alle 52 Normen gleichen danach
  zeichengenau der amtlichen Nachfassung vom 4. Februar 2026. Die Stammfassung ist über eine
  *Browsersteuerung* aus dem Landesrechtsportal beschafft; damit ist die juris-Sackgasse
  aufgebrochen (siehe „Beschaffung der Stammfassungen“).

* *Baden-Württemberg* ist umgesetzt (`EndToEndTest.kommunalwahlOAendVOBadenWuerttemberg`):
  37 Befehle, 31 angewandt; 91 der 93 Normen gleichen der amtlichen Fassung vom 1. Mai 2026.
  Die sechs liegengebliebenen Befehle ändern sämtlich die *Muster* der Anlagen (Wahlschein,
  Merkblätter, deren Fußnoten und Spiegelstriche). Sie sind nicht anwendbar, weil das Portal die
  Muster nicht als Text ausliefert: Die Anlagen 2 bis 14 bestehen dort nur aus Kopf und
  Fundstelle. Was nicht vorliegt, lässt sich nicht ändern — eine Grenze der Quelle, nicht des
  Werkzeugs. Die zweite benannte Abweichung sitzt in § 20: Der Befehl ersetzt „Name" durch „der
  vollständige Familienname", und im Zieltext steht davor bereits „der"; die amtliche Nachfassung
  räumt das auf, der Befehlswortlaut tut es nicht.

== Beschaffung der Stammfassungen

Für einen vollen Akzeptanztest wird die Fassung *vor* dem Änderungsgesetz gebraucht. Welcher Weg
dafür trägt, hängt allein vom Portal ab; die drei erprobten Wege:

`recht.nrw.de` (Nordrhein-Westfalen):: Der bequemste Fall. Serverseitig gerendertes HTML, keine
Single-Page-Anwendung, `robots.txt` erlaubt alles. Das URL-Schema
`recht.nrw.de/lrgv/gesetz/<TTMMJJJJ>-<Kurztitel-Slug>` trägt den *Gültigkeitsbeginn der jeweiligen
Fassung* im Datumspräfix — Vor- und Nachfassung sind damit unmittelbar adressierbar, und das
Ergebnis lässt sich gegen die amtliche Nachfassung prüfen. Die Slugs findet die Suchmaske nicht
(Formular); sie stehen im Sitemap-Index (`robots.txt` listet `sitemap/page/1..47/sitemap.xml`, je
1000 Einträge). Alte `lmi/owa/br_*`-URLs leiten auf die neuen Slugs um.

`revosax.sachsen.de` (Sachsen):: Liefert Volltext-PDFs je Fassung, aber nur die aktuelle live. Die
Vorfassung kommt über die Wayback-CDX-API: Fassungs-IDs abfragen, die zum Zeitraum passende wählen,
per `…id_/…`-Rohform laden. Achtung, `WebFetch` erreicht `web.archive.org` nicht — nur `curl`.

juris-Landesportale, Browsersteuerung:: Der Weg, der die Sackgasse aufbricht — *erprobt an Hessen*.
Diese Portale sind Einseitenanwendungen: Jede Skriptabfrage erhält nur die rund 5,4 kB große
Anwendungshülle, gleich unter welcher Adresse. Ein *Browser* dagegen bekommt den Text. Er ist
deshalb Dokument für Dokument über eine Browsersteuerung auszulesen, nicht im Massenabzug.
Maßgeblich ist die Schaltfläche „Gesamtausgaben-Liste“ der Dokumentansicht: Sie führt jede Fassung
mit ihrem Geltungszeitraum und macht sie unter einer *datierbaren* Adresse abrufbar —
`/<Kennung>/document/aiz-jlr-<Dokumentkennung>@<JJJJMMTT>`; Vor- und Nachfassung sind damit
unmittelbar adressierbar und das Ergebnis gegen die amtliche Nachfassung prüfbar. Zwei
Fallstricke: Die Seite rendert nachlädig, sodass ein Auszug des sichtbaren Bereichs mitten im
Gesetz abbricht — maßgeblich ist der Textinhalt des Dokumentbehälters (`div.docLayoutText`); und
die Portale führen im Seitenkopf eine Vorbehaltsangabe zum Text- und Data-Mining
(„tdm-reservation“), die für gemeinfreie amtliche Werke nach § 5 UrhG keine Wirkung entfalten
kann. Rezept im einzelnen: `Hessen/SOURCES`.

juris-Landesportale, Skript:: Sackgasse — *geprüft* für `gesetze-rechtsprechung.sh.juris.de`
(Schleswig-Holstein), `gesetze.berlin.de` (Berlin, trotz Eigennamen dieselbe Anwendung),
`landesrecht-bw.de` (Baden-Württemberg) und `rv.hessenrecht.hessen.de` (Hessen, Kennung `bshe`).
und `landesrecht.thueringen.de` (Thüringen).
Alle fünf sind seit etwa Ende 2022 reine Single-Page-Anwendungen; sämtliche Dokument-URLs liefern
nur die leere Anwendungshülle (rund 5,4 kB), die Inhalte hängen an einer tokenpflichtigen
Schnittstelle. Auch archivierte
Einzelnorm-Seiten sind bereits Hüllen. Brauchbar sind allenfalls Wayback-Snapshots aus der Zeit
*vor* der Umstellung — die sind aber meist zu alt für die gesuchte Fassung. Für
`voris.niedersachsen.de` ist dasselbe zu erwarten, aber *nicht* nachgeprüft: Ein Versuch lohnt,
bevor man aufgibt.

Parlamentsdokumentationen:: Der Ausweg, wo das Landesrechtportal versperrt ist. Gibt der Landtag
das Gesetzblatt heraus — in Thüringen ist das so —, so liegen dessen Hefte oft frei in der
Parlamentsdatenbank, auch die alten:
`parldok.thueringer-landtag.de/ParlDok/dokument/<WP>/art/GVBl/num/<Heft>/jahr/<Jahr>[/seite/<S>]`.
Damit lässt sich eine konsolidierte Fassung aus dem Stammheft und den Änderungsheften
zusammensetzen, wenn kein Portal sie fertig liefert (Rezept in `Thueringen/SOURCES`). Das Archiv
der Staatskanzlei (`thueringen.de/th1/tsk/gvbl/`) hilft dagegen nicht: Es antwortet Skripten mit
einer Bot-Schutz-Fehlerseite.

Fällt das Portal aus, bleibt der Weg über das Gesetzblatt selbst: Trägt der Einleitungssatz des
Änderungsgesetzes kein „zuletzt geändert durch“, so ist die Originalfassung zugleich die
Stammfassung (so bei Niedersachsen). Die Extraktion zweispaltiger Hefte übernimmt `--extract-only`
des Werkzeugs selbst; `pdftotext -layout` verschränkt dort die Spalten.

Ein Fallstrick beim Prüfen extrahierter Hefte: Das GV.-NRW.-Heft 7/2026 kodiert einen Teil seiner
Umlaute *zerlegt* (`u` + U+0308 statt `ü`, 79 Stellen, darunter dutzende „eingefügt:“/„angefügt:“).
Im Text ist das unsichtbar, für jedes Befehlsmuster aber ein anderes Wort. `TextBereiniger.bereinige`
normalisiert deshalb ganz früh nach NFC — nicht NFKC, das plättete die amtlichen Satznummern ¹²³ zu
gewöhnlichen Ziffern. Wer Klartext von Hand aufbereitet, sollte ihn ebenfalls in NFC ablegen; der
Klartext-Zweig des Loaders normalisiert zur Sicherheit mit.

== Noch offen


* *Vorfassungen bei knapp gehaltenen juris-Portalen* — Rheinland-Pfalz, Saarland und
  Sachsen-Anhalt führen nur die aktuelle Gesamtausgabe nebst einer Aufzählung der Änderungen; die
  Schaltfläche „Gesamtausgaben-Liste", über die Hessen, Schleswig-Holstein, Berlin und
  Baden-Württemberg jede Fassung datierbar ausgeben, fehlt dort. Ohne Vorfassung ist kein
  Akzeptanzfall möglich, sondern nur die Prüfung bis zur Befehlserkennung. Ein Ausweg wäre, die
  Vorfassung aus den *Einzelnormen* mit ihren Stichtagen zusammenzusetzen.
* Saarland und Sachsen-Anhalt: noch nicht erfasst.

== Wo weitermachen

Kein Land scheitert noch an reiner Extraktionsschwäche, und jedes Land mit einem Änderungs-
dokument trägt nunmehr einen Belegfall bis zur Anwendung. Seit Welle 23 ist überdies der
Prüfmaßstab selbst eine Leistung des Erzeugnisses: `--nachfassung` stellt das Ergebnis normweise
gegen die amtliche Fassung, und `--neufassung` gibt die errechnete Fassung als kanonischen
Klartext aus. Ein weiteres Land kostet damit Stammfassung, Heft und Nachfassung — keinen eigenen
Prüfcode mehr. Nach absteigendem Nutzen:

. *Weitere Länder erfassen* — Saarland und Sachsen-Anhalt (Bremen und Mecklenburg-Vorpommern sind
  seit Welle 25 erfasst). Die Beschaffungswege sind für alle geprüft (26./27.08.2026):
+
--
Mecklenburg-Vorpommern:: *Gegangen* (Welle 25). Das Gesetzblatt liegt vollständig und
skriptlesbar; die Übersicht
`regierung-mv.de/Landesregierung/jm/service_justizministerium/verkuendungsblaetter/gesetz-verordnungsblaetter/`
führt die Jahrgänge 2014 bis heute (rund 440 Hefte). Adressform der neueren Hefte:
`…/GVOBI.M-V/GVOBl.%20Nr.%20<N>%20v.%20<T.M.JJJJ>.pdf` — *Tag und Monat ohne führende Null*, mit
Null antwortet der Wirt mit 404; die älteren liegen unter `…/GVOBI.M-V/Dateien/…` mit
uneinheitlichen Namen. Das Portal `landesrecht-mv.de` bleibt eine juris-Einseitenanwendung *ohne*
Fassungsliste; auch die Adressform `…/document/<Kennung>@<JJJJMMTT>` weist es ab, und selbst die
Kennung ist nur über die Suche der Anwendung zu erreichen. Die Vorfassung kommt deshalb aus dem
Gesetzblatt: Nennt der Einleitungssatz die Stammvorschrift *ohne* jede frühere Änderung, so ist die
Ursprungsfassung beweisbar die Vorfassung. Die aktuelle Gesamtausgabe des Portals taugt dann als
Gegenprobe — und, solange die Änderung noch nicht in Kraft ist, gerade nicht als Nachfassung.
Bremen:: *Gegangen* (Welle 25). `transparenz.bremen.de` antwortet einer Skriptabfrage mit
gewöhnlichem HTML und führt — als drittes offenes Portal nach BRAVORS und recht.nrw.de, und als
erstes außerhalb Brandenburgs — jede *frühere* Gesamtausgabe einzeln adressierbar: Vorschrift über
`…/metainformationen/<Slug>-<Id>?asl=…&template=20_gp_ifg_meta_detail_d`, von dort „Frühere
Fassungen“ (`…&template=20_gp_ifg_meta_fassungen_d`) und „Änderungshistorie“
(`…&template=20_gp_ifg_meta_historie_d`). Die Hefte des Gesetzblatts liegen unter
`gesetzblatt.bremen.de/fastmedia/218/<JJJJ_MM_TT>_GBl_Nr_<NNNN>_signed.pdf`, die Heftliste
(`gesetzblatt.bremen.de/?skip=<N>&max=100`) nennt zu jedem den geänderten Gegenstand. Siehe
`Bremen/SOURCES`.
Saarland und Sachsen-Anhalt:: unverändert ohne Vorfassungen (siehe „Noch offen“); dort bleibt es
bei der Prüfung bis zur Befehlserkennung, es sei denn, die Einzelnormen mit ihren Stichtagen
tragen.
--

*Erledigt in Welle 23:* Die Frage nach den _Anlagen-Nummern im gii-XML_ war falsch gestellt. Eine
Zerlegung braucht es nicht — der `StellenAufloeser` probiert längst beide Wege. Der Fehler saß im
Überschrift-Zweig des Anwenders, der jede feinere Komponente schweigend verwarf und stets auf den
Normtitel griff; die Überschrift einer Anlagen-Nummer ist im gii-XML die Kopfzeile ihres
Aufzählungsblocks. Ebenso erledigt sind die drei rheinland-pfälzischen Idiome (Strichpunkt samt
Halbsatz-Anfügung, „In der Einleitung“, Verweisung auf einen anderen Punkt — die letzte wird
gelesen und ausdrücklich als Grenze gerügt) und der Skopus einer Wortoperation im Verbund: Die
norm-weite Auflösung behält den Vorrang, bei Mehrdeutigkeit entscheidet die soeben umnummerierte
Einheit. Der Artikel 1 der GEG-Novelle ist damit vollständig angewandt (119/119).

*Erledigt:* _Brandenburg_ ist umgesetzt (Fraktionsgesetz, 4/4 Befehle, alle 24 Normen gleich der
amtlichen Nachfassung). Der Fall hat gezeigt, dass nicht jedes Landesportal eine juris-Einseiten-
anwendung ist: BRAVORS gibt HTML und führt jede Fassung einzeln, sodass Vor- und Nachfassung
derselben Quelle entstammen. Ein Fund fürs Aufbereiten: An ehemaligen Trennstellen führt das
Portal vereinzelt Steuerzeichen (U+0002) mit, die kein Textbestand sind.

*Erledigt:* _Baden-Württemberg_ ist umgesetzt. Der Fall hat vier allgemeine Funde gebracht: Der
Seitenfuß eines Gesetzblatts kann mitten im Befehlstext stehen und dessen Zieltext von seinem Verb
trennen; die Blattzählung kann für sich allein zwischen zwei Gliederungspunkten stehen; der Dativ
einer Anfügung darf seinen Artikel verlieren („Absatz 2 wird folgender Satz angefügt“); und hinter
einer Anlagenbezeichnung darf ein beschreibender Klammerzusatz stehen. Dazu ein Anwendungsfund:
Ein gestrichener Halbsatz nimmt sein Semikolon mit, und der Satz behält seinen Schlusspunkt.

*Erledigt:* _Berlin_ ist umgesetzt. Die Nummern einer Anlage sind eigene Normen mit eigener
Absatzzählung, deren Bezeichnung die Anlage voranstellt („Anlage Nummer 23“) — so führt sie das
Portal, und so sprechen die Befehle sie an. Drei weitere Funde kamen dabei ans Licht: Die
Umnummerierung eines solchen Absatzes galt als die einer Aufzählungseinheit und tauschte eine
Marke, die es nicht gab — der Befehl hieß angewandt und bewirkte nichts; ein Absatz, der „vor
den Wörtern …“ eingefügt wird, wurde eine Zeile im Nachbarabsatz statt eines Absatzes; und die
Bezeichnung eines so eingefügten Absatzes verlor die Nummer der Anlage, weshalb die
Schritt-Ordnung ihre Abhängigkeit nicht sah. Die amtlichen Satznummern des Portals (angeklebte
Ziffern) schreibt die Aufbereitung um.

*Erledigt:* _Schleswig-Holstein_ ist vollständig umgesetzt — der erste Fall mit *zwei*
Stammgesetzen in einem Änderungsgesetz. Zwei Eigenheiten des Portalsatzes waren zu beheben: Er
trennt die Sachnummer ab („§ 57 c“ statt „§ 57c“, zehn Normen der Gemeindeordnung wären sonst
dem Gesetz entgangen), und er setzt im Klammerzusatz einen Bindestrich statt des amtlichen
Gedankenstrichs, weshalb Kurztitel und Abkürzung ungetrennt blieben und kein Artikel gewählt
wurde. Der Parser nimmt den Strich nunmehr in beiden Gestalten an, sofern Leerraum ihn umgibt.

*Erledigt:* _Hessen_ ist vollständig umgesetzt (`EndToEndTest.verkehrsZustVAendVOHessen`,
einundzwanzig Befehle, kein Rest; alle zweiundfünfzig Normen gleichen der amtlichen Nachfassung).
Der Fall hat den Beschaffungsweg über die Browsersteuerung eröffnet und fünf allgemeine Befunde
gebracht: Ein Normkopf darf ohne Überschrift stehen; eine Gliederung darf ihr Ordinale
ausschreiben („Erster Teil“); die Streichung einer Absatzbezeichnung nimmt dem Wortlaut seine
Nummer, statt ihn zu beseitigen; ein Platzhalter „(weggefallen)“ steht nur dort, wo ihm eine
weitere Einheit folgt, deren Bezeichnung er schonen soll; und ein Wort, das an die Stelle eines
Satzzeichens tritt, bekommt seinen Zwischenraum. Zwei vorbestehende stille Mängel kamen dabei ans
Licht: `List.remove` erhielt einen geboxten Index und entfernte deshalb nichts (das traf auch die
Neufassung eines Absatzes durch mehrere), und ein Aufzählungsglied, das auf „und“ endet, galt als
Unter-Überschrift.

*Erledigt:* _Thüringen_ ist vollständig umgesetzt (`EndToEndTest.thuerKiGaFinVOAendVO`, zehn
Befehle, kein Rest). Es war das letzte beschaffte, nie angefasste Heft und hat drei allgemeine
Befunde gebracht: gerade Anführungszeichen werden paarweise gelesen, wenn ein Text kein deutsches
öffnendes Zeichen führt; eine Bereichs-Umnummerierung nennt Bezeichnungen, meint aber Einheiten und
bleibt deshalb bis zur Anwendung ungeteilt; und der Wortbestand eines Dokuments entscheidet, ob ein
Trennstrich vor einem Großbuchstaben eine Silbentrennung war. Die Stammfassung ist aus vier
Gesetzblättern zusammengesetzt — siehe `Thueringen/SOURCES`.

*Erledigt:* Die _Stellung eines eingefügten Blocks_ war der letzte sichtbare Rest an Art. 56 des
BayJG. Ursache war nicht die Einfügung selbst, sondern die Neufassung der Nr. 4 einen Punkt zuvor:
Sie setzte ihren Wortlaut ohne Einrückung, worauf der Zeilenblock dieser Marke bis ans Absatzende
reichte — er reicht so weit, wie tiefer eingerückt wird. Art. 56 Abs. 1 gleicht seither in Aufbau
und Wortlaut der amtlichen Nachfassung; der Akzeptanztest prüft das.

Regressionsschutz: `./mvnw verify` prüft die bestehenden Belegfälle mit. Gepinnt ist dabei nicht
überall dieselbe Art von Zahl — für UWG, AGG und ProdHaftG, dass *kein* Befehl manuell bleibt; für
das BayJG die 154 erkannten Befehle, die vollständige Anwendung und den Wortlaut des
Bußgeldkatalogs — dort auch Aufbau und Einrückung, weil an ihnen die Stellung eingefügter Blöcke
hängt; für Sachsen,
Niedersachsen und die vier NRW-Artikel die vollständige Anwendung bis auf das eine benannte
Residuum im WDR-Gesetz; für Hessen die vollständige Anwendung und den Gleichlauf
aller 52 Normen mit der amtlichen Nachfassung; für Schleswig-Holstein die vollständige Anwendung auf beide
Stammgesetze; für Berlin die vollständige Anwendung des Artikels 2, fünf von sechs
Befehlen des Artikels 1 und die drei benannten Abweichungen von der Nachfassung; für
Baden-Württemberg einunddreißig von siebenunddreißig Befehlen und die zwei benannten
Abweichungen; für Bremen einundvierzig gelesene und siebenunddreißig angewandte Befehle, die
fehlende Norm und die zwei benannten Abweichungen; für Mecklenburg-Vorpommern die Wahl des
vierundvierzigsten Artikels, vierundzwanzig gelesene und zwanzig angewandte Befehle sowie die vier
namentlich aufgeführten Reste. Wer eine dieser Zahlen
ändern muss, sollte den Grund im Test vermerken.
