From 43e91612875de3cc6e7466eee56023ab55cefd89 Mon Sep 17 00:00:00 2001 From: Matthias Andreas Benkard Date: Fri, 24 Jul 2026 22:29:35 +0200 Subject: Add Lower Saxony NEFG acceptance case and two parser robustness fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Second §-structured Landesrecht case for wave six: the Lower Saxony ELER Support Act (NEFG, unchanged since 2022, derived from the two-column Nds. GVBl 2022 No. 33) plus the amending act of 28 Jan 2026 (Nds. GVBl 2026 No. 10). Five of seven commands apply — both "erhält folgende Fassung" re-enactments (§ 1(1), § 2), the citation replacement in § 1(5), the words insertion in § 6(1), and the § 13 → § 14 renumbering. - LandesRechtTextParser: a norm head no longer accepts a title ending in a full stop, so a cross-reference sentence at line start ("§ 7 GAPInVeKoSG findet entsprechend Anwendung.") is not misread as a norm head "§ 7" (which had made the monotonicity check swallow the norms in between). - TextBereiniger: strip the Lower Saxony GVBl running footer and publisher line. The footer sat between two enumerated items and otherwise attached to the preceding re-enactment quote, defeating its end-of-sentence anchor. - Add sampledata/Niedersachsen/NEFG-alt.txt and EndToEndTest.nefgAcceptance. Two insertion forms remain documented residues (manuell prüfen): inserting a §-block with a space-separated sub-number ("§ 2 a") and a chapter-scoped §-block insertion ("In Kapitel 4 wird nach § 12 … angefügt"). 221 tests green; federal, Bavarian and Saxon pinned numbers unchanged. Co-Authored-By: Claude Opus 4.8 Change-Id: Ie23eee1f596ec8eecc6a73f6ce585a22e73ec6c9 --- FASSUNGEN.txt | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'FASSUNGEN.txt') diff --git a/FASSUNGEN.txt b/FASSUNGEN.txt index 366a254..d3605b2 100644 --- a/FASSUNGEN.txt +++ b/FASSUNGEN.txt @@ -67,6 +67,42 @@ Unfallentschädigung) und die Neufassung des § 80 Absatz 1 Satz 2 (Allgemeine Anpassung) werden vollständig angewandt, ohne Rest. +Artikel 4 +Normköpfe tragen keine ganzen Sätze + +Der Landesrecht-Textparser (LandesRechtTextParser) las einen am Zeilenanfang +stehenden Querverweis-Satz („§ 7 GAPInVeKoSG findet entsprechend Anwendung.“) als +Normkopf „§ 7“, wodurch die dazwischenliegenden Normen der Monotonie-Prüfung zum +Opfer fielen. Ein Normkopf trägt jedoch eine Überschrift, keinen ganzen Satz; +deshalb schließt das Normkopf-Muster nunmehr Titel aus, die auf einen Punkt enden. + + +Artikel 5 +Fußzeile und Herausgeberzeile des Niedersächsischen GVBl + +Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch die +laufende Fußzeile des Niedersächsischen Gesetz- und Verordnungsblatts („Nds. GVBl. +2026 Nr. 10 vom 4. Februar 2026 Seite 2“) und die Herausgeberzeile. Die zwischen +zwei Aufzählungsgliedern stehende Fußzeile hängte sich sonst an das voranstehende +Neufassungs-Zitat, sodass dessen Satzende-Anker nicht mehr griff. + + +Artikel 6 +Belegfall Niedersächsisches ELER-Fördergesetz + +Als weitere Beispieldaten treten die konsolidierte Fassung des seit 2022 +unveränderten NEFG (sampledata/Niedersachsen/NEFG-alt.txt, kanonischer Klartext, +aus dem zweispaltig gesetzten Nds. GVBl 2022 Nr. 33 abgeleitet) und ein +End-to-End-Akzeptanztest (EndToEndTest.nefgAcceptance) hinzu: Von den sieben +Befehlen werden fünf angewandt — darunter zwei Neufassungen „erhält folgende +Fassung“ (§ 1 Abs. 1, § 2), die Angaben-Ersetzung in § 1 Abs. 5, die +Wörter-Einfügung in § 6 Abs. 1 und die Umnummerierung § 13 → § 14. Zwei +Einfügeformen bleiben als „manuell prüfen“ stehen (bewusst dokumentierte Grenze): +die Einfügung eines §-Blocks mit durch Leerzeichen getrennter Sachnummer („§ 2 a“) +sowie die kapitelbezogene §-Block-Einfügung („In Kapitel 4 wird nach § 12 … +angefügt“). + + ════════════════════════════════════════════════════════════════════════════════ Fassung vom 19. Juli 2026, zuletzt geändert durch die am 19. Juli 2026 vorgenommenen Änderungen -- cgit v1.2.1