blob: ad304baa7f30b85e87fc2191d5525925562156e7 [file] [log] [blame]
Matthias Andreas Benkard73c5dba2026-07-13 21:42:38 +02001╔══════════════════════════════════════════════════════════════════════════════╗
2
3 V E R Z E I C H N I S D E R F A S S U N G E N
4 des Softwareerzeugnisses „ÄndGgner
5 (Werkzeug zur Erstellung von Synopsen für Änderungsgesetze)
6
7╚══════════════════════════════════════════════════════════════════════════════╝
8
9Vorbemerkung zur Führung dieses Verzeichnisses
10──────────────────────────────────────────────
11(1) Dieses Verzeichnis dokumentiert nach Maßgabe der nachstehenden Bestimmungen
12 den jeweiligen Stand des Quelltextes des vorbezeichneten Erzeugnisses.
13(2) Für jeden Kalendertag, an dem Änderungen am Quelltext vorgenommen werden, ist
14 ein gesonderter Abschnitt nach dem Muster der nachfolgenden Fassungen anzu-
15 legen; die Abschnitte sind in absteigender zeitlicher Reihenfolge (jüngste
16 Fassung zuerst) zu führen.
17(3) Die Änderungen sind in sachlich gegliederter Form, unter fortlaufender
18 Nummerierung und unter Angabe der betroffenen Bestandteile (Klassen, Dateien)
19 zu bezeichnen. Maßgeblich ist die im Handbuch der Rechtsförmlichkeit nieder-
20 gelegte Ausdrucksweise entsprechend.
21
22
23════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +020024 Fassung vom 16. August 2026,
25 zuletzt geändert durch die am 16. August 2026 vorgenommenen Änderungen
26════════════════════════════════════════════════════════════════════════════════
27
28Die Browserfassung war bislang für den öffentlichen Betrieb gesperrt: Die
29Anbieterkennzeichnung und die Datenschutzerklärung führten Platzhalter, und der
30Verweis auf den Quelltext, den die Lizenz des Erzeugnisses beim Netzbetrieb
31verlangt, zeigte auf keine Adresse. Mit dieser Fassung wird die Sperre
32aufgehoben; zugleich wird die Auslieferung auf den Betrieb unter einem Unterpfad
33einer bestehenden Domain eingerichtet.
34
35
36Artikel 1
37Anbieterkennzeichnung und Datenschutzerklärung
38
39(1) Die Anbieterkennzeichnung (impressum.html) wird mit den Angaben nach § 5 DDG
40 versehen; hinzu treten die Bezeichnung des nach § 18 Abs. 2 MStV
41 Verantwortlichen sowie ein Hinweis darauf, dass der Dienst unentgeltlich und
42 nichtkommerziell erbracht wird und die Synopsen ohne Gewähr ergehen.
43
44(2) Die Datenschutzerklärung (datenschutz.html) wird um die Bezeichnung des
45 Verantwortlichen (Art. 4 Nr. 7 DSGVO) und um die Rechte der betroffenen
46 Personen (Art. 15 bis 21, Art. 77 DSGVO) ergänzt. Für die Zugriffsprotokolle
47 werden die Rechtsgrundlage (Art. 6 Abs. 1 lit. f DSGVO) und die
48 Aufbewahrungsfrist (vierzehn Tage) benannt.
49
50(3) Die Aussage über die Dateien der Nutzer:innen bleibt unverändert; sie trifft
51 zu, weil die Verarbeitung ausschließlich im Browser stattfindet.
52
53
54Artikel 2
55Beilegung des Quelltextes
56
57(1) Es wird das Skript deploy/webpaket.sh eingeführt. Es tritt in der Phase
58 package des Profils -Pwasm hinter den Übersetzer und macht aus dessen
59 Ergebnis ein auslieferbares Verzeichnis:
60 a) Der Textzwischenschritt (aendggner.js.wat) wird entfernt.
61 b) Der Quelltext der gebauten Fassung wird als aendggner-quelltext.tar.gz
62 nebst der Kennung der Fassung (quelltext-fassung.txt) beigelegt.
63 c) Die großen Dateien werden nach .gz und .br vorkomprimiert.
64
65(2) Trägt der Arbeitsbaum uneingecheckte Änderungen, so bricht der Bau ab. Der
66 Grund ist folgender: Der beigelegte Quelltext wäre alsdann nicht derjenige
67 der ausgelieferten Fassung, und die Auflage des § 13 AGPLv3 wäre verfehlt.
68 Für Probeläufe kann die Prüfung durch QUELLTEXT_UNGEPRUEFT=1 abbedungen
69 werden.
70
71(3) Der Fuß der Startseite (index.html) verweist fortan auf den beigelegten
72 Quelltext; die fortlaufende Quelle wird als Zweitverweis daneben genannt.
73
74
75Artikel 3
76Auslieferungsvorlage
77
78Die Vorlage (deploy/nginx-aendggner.conf) wird vom eigenen server-Block auf ein
79location-Schnipsel umgestellt, das in den bestehenden Server eingefügt wird. Sie
80wird wie folgt geändert:
81
821. Aufgenommen wird die Weiterleitung des Pfades ohne abschließenden
83 Schrägstrich; ohne sie zielten sämtliche relativen Verweise der Seite auf die
84 Wurzel der Domain.
85
862. Die Dateien werden über root statt über alias zugeordnet, weil try_files
87 in einer Präfix-Location gegen den root auflöst und mit alias fehlgeht.
88
893. Die Haltefrist von sieben Tagen entfällt und wird durch Revalidierung
90 ersetzt. Der Grund ist folgender: Die Dateinamen tragen keine
91 Fassungskennung; ein Browser mit altem Steuerskript und neuem Rechenwerk
92 erhielte sonst eine Mischfassung, die es nie gegeben hat.
93
944. Die vorkomprimierten Dateien werden ausgeliefert, statt das Rechenwerk je
95 Abruf neu zu packen.
96
975. Aufgenommen werden die Sicherheitskopfzeilen nebst einer Inhaltsrichtlinie.
98 Zwei ihrer Freigaben sind unvermeidlich und in der Vorlage begründet:
99 diejenige für die Instanziierung des Moduls und diejenige für eingebettete
100 Stile, weil die Synopse als blob:-Dokument die Richtlinie der erzeugenden
101 Seite erbt, ihr Stylesheet aber eingebettet trägt.
102
103
104Artikel 4
105Ergänzungen der Oberfläche
106
1071. Die Startseite erhält einen Hinweis für den Fall abgeschalteten JavaScripts;
108 bislang blieb das Formular alsdann wortlos wirkungslos.
109
1102. Es wird ein Sinnbild (favicon.svg) eingeführt und in allen Seiten relativ
111 verwiesen; unter einem Unterpfad griffe der Abruf der Wurzel ins Leere.
112
1133. Die Startseite erhält eine Kurzbeschreibung und die Angabe ihrer kanonischen
114 Adresse; das Stilblatt wird um die Auszeichnung der Überschriften zweiter
115 Ordnung, der Anschriften und der Hinweise ergänzt.
116
117
118Schlussbestimmung
119
120Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
121(dreihundertvier an der Zahl) bestätigt worden. Die Inhaltsrichtlinie ist gegen
122die laufende Anwendung erprobt worden: Der Lauf des IfSG-Falles im Browser hat
123unter ihr achtundvierzig angewandte Befehle, siebenundzwanzig zur manuellen
124Prüfung und einundzwanzig geänderte Normen ergeben, mithin dasselbe wie die
125Befehlszeile, und keine Beanstandung hinterlassen; die Erforderlichkeit der
126Freigabe für eingebettete Stile ist dadurch belegt, dass die Synopse ohne sie
127unformatiert erscheint.
128
129
130════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard74a84c52026-08-16 06:08:42 +0200131 Fassung vom 15. August 2026,
132 zuletzt geändert durch die am 15. August 2026 vorgenommenen Änderungen
133════════════════════════════════════════════════════════════════════════════════
134
135Das Erzeugnis hat die mehrschrittige Umnummerierungssequenz bislang als eine ihm
136wesenseigene Grenze behandelt und ihre Folgeänderungen dem Abschnitt Manuell
137prüfen zugewiesen. Die Prüfung des bayerischen Belegfalls (Art. 56 des
138Bayerischen Jagdgesetzes, Neunummerierung des Bußgeldkatalogs durch § 1 Nr. 48
139des Gesetzes vom 31. März 2026) hat ergeben, dass es sich um keine Grenze der
140Sache, sondern um drei voneinander unabhängige Mängel gehandelt hat. Sie werden
141mit dieser Fassung behoben.
142
143
144Artikel 1
145Ordnung der Anwendung nach Schritten
146
147(1) Der Anwender (BefehlAnwender) faltet die Befehlsliste vor der Anwendung zu
148 einer Liste von Schritten auf; ein Verbund (Sammelbefehl) liefert je
149 Teilbefehl einen Schritt, jeder andere Befehl einen einzigen. Geordnet
150 werden fortan die Schritte, protokolliert wird unverändert je Befehl.
151
152(2) Der Grund der Trennung ist folgender: Ein Verbund aus einer Umnummerierung
153 und einer Begleitänderung trägt zwei gegenläufige zeitliche Ansprüche. Die
154 Umnummerierung gehört vor denjenigen Befehl, der ihre Bezeichnung neu
155 besetzt; die Begleitänderung gehört an ihre Stelle im Dokument, denn sie
156 setzt die vorangegangenen Punkte als vollzogen voraus. Bislang setzte sich
157 der erste Anspruch für die ganze Einheit durch und zog die Begleitänderung
158 mit sich; sie traf dann auf einen Stand, den das Änderungsgesetz nicht
159 voraussetzt.
160
161(3) Die Ordnungsregel selbst bleibt unverändert („wer eine Bezeichnung räumt,
162 kommt vor demjenigen, der sie neu besetzt“), wird aber nunmehr vollständig
163 durchgesetzt: Vor jedem Schritt laufen erst diejenigen Schritte, die ihm
164 eine Bezeichnung räumen, und vor diesen wiederum die ihren. Eine ringförmige
165 Abhängigkeit bricht ab; die beteiligten Schritte behalten dann ihre
166 Dokumentreihenfolge.
167
168
169Artikel 2
170Erkennung der abgekürzten lokativen Folgeklausel
171
172Das Muster der lokativen Klausel (BefehlErkenner) schloss mit einer Wortgrenze.
173Hinter einem abgekürzten Bezeichnungswort steht jedoch bereits der
174Abkürzungspunkt, und zwischen ihm und dem folgenden Leerzeichen liegt keine
175Wortgrenze; der Klausel entging deshalb jede Kurzform („in Abs. 2 …“, in
176Buchst. b …“). An die Stelle der Wortgrenze tritt die Bedingung, dass kein
177Buchstabe folgt.
178
179
180Artikel 3
181Auflösung der Aufzählungseinheit ohne eigenen Text
182
183Der Stellenaufloeser (StellenAufloeser) verlangte hinter der Aufzählungsmarke
184Text auf derselben Zeile. Eine Einheit, die sich vollständig in ihre
185Untergliederung ergießt, führt ihre Marke aber allein auf der Zeile (Art. 56
186Abs. 2 Nr. 12 des Bayerischen Jagdgesetzes, darunter nur die Buchstaben a und
187b); sie galt deshalb als nicht auffindbar. Der Text hinter der Marke ist fortan
188wahlfrei.
189
190
191Schlussbestimmung
192
193(1) Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
194 (dreihundertvier an der Zahl) sowie durch die vollständige Erstellung
195 (mvnw verify) bestätigt worden.
196
197(2) Der bayerische Belegfall weist nunmehr sämtliche einhundertvierundfünfzig
198 Anweisungen als angewandt aus (zuvor einhunderteinundfünfzig); die
199 Ausschussfassung der Beschlussempfehlung zum Gebäudeenergiegesetz weist
200 achtundsechzig statt siebenundsechzig aus. Die übrigen Bezugszahlen des
201 Bundes und der Länder sind unverändert geblieben.
202
203(3) Nicht behoben ist die Stellung eines eingefügten Blocks: Die Anweisung Nach
204 Nr. 4 werden die folgenden Nrn. 5 bis 7 eingefügt (Art. 56 Abs. 1 des
205 Bayerischen Jagdgesetzes) wird angewandt, ihr Block tritt aber an das Ende
206 des Absatzes statt hinter die Nummer 4; ebenso verbleibt der leere
207 Platzhalter 7. (aufgehoben)“ der Altfassung zwischen den Nummern 9 und 10.
208 Beides bestand schon vor dieser Fassung und ist im Belegfall festgehalten.
209
210(4) Ferner ist festgehalten: Die Heilung doppelter Leerzeichen nach einer
211 Streichung (BefehlAnwender) wirkt auf den gesamten Zieltext und verkürzt
212 dabei die Einrückung der Aufzählungszeilen. Auch dies bestand schon zuvor.
213
214
215════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard7235b342026-08-14 18:58:25 +0200216 Fassung vom 14. August 2026,
217 zuletzt geändert durch die am 14. August 2026 vorgenommenen Änderungen
218════════════════════════════════════════════════════════════════════════════════
219
220Das Erzeugnis nimmt bislang zwei Sorten von Änderungsdokumenten entgegen und
221behandelt sie gleich: verkündete Artikelgesetze und Gesetzentwürfe. Damit fehlt
222ihm die zweite Hälfte des Gesetzgebungsverfahrens die Dokumente, die einen
223Entwurf ändern statt ein Gesetz. Diese Fassung führt den Begriff der Dokumentart
224ein, wendet Änderungsanträge auf den Entwurf an, auf den sie zielen, und trennt
225die Spalten einer Zusammenstellung.
226
227
228Artikel 1
229Erkennung der Dokumentart
230
231(1) Die Art eines Änderungsdokuments wird nunmehr aus seinem Kopf erschlossen
232(DokumentErkenner, DokumentArt, DokumentKopf). Unterschieden werden das
233verkündete Artikelgesetz, der Gesetzentwurf, der Änderungsantrag, die
234Beschlussempfehlung sowie das Dokument ohne Änderungsbefehle
235(Entschließungsantrag, schlichter Antrag, Plenarprotokoll, Bericht).
236
237(2) Maßgeblich ist allein der Text; der Dateiname bleibt außer Betracht. Die
238Beispieldaten belegen die Notwendigkeit: Die Datei mit dem Namen
239BT-Drs-21-7071_Beschlussempfehlung.pdf enthält einen Entschließungsantrag.
240
241(3) Die Erkennung arbeitet auf dem unbereinigten Extraktionstext, da der
242Textbereiniger gerade diejenigen Drucksachenköpfe entfernt, aus denen Art und
243Nummer hervorgehen. Erfasst werden dabei auch die eigene Drucksachennummer und
244die Nummern der in Bezug genommenen Drucksachen.
245
246(4) Ein Dokument ohne Änderungsbefehle wird übergangen und in der Synopse
247gemeldet; bisher führte es stillschweigend zu keinem Befehl.
248
249(5) Ist an einer Synopse ein Entwurf, ein Antrag oder eine Beschlussempfehlung
250beteiligt, so trägt sie den Hinweis, dass sie eine Entwurfsfassung und nicht
251geltendes Recht zeigt (HtmlRenderer). Die Quellenzeile nennt je Datei die
252erkannte Art.
253
254(6) Die Grenze des Begründungsteils wird für Entwürfe und Anträge um die dort
255üblichen Überschriften erweitert („A. Allgemeiner Teil“, Zu Artikel 1“); für
256verkündete Gesetze bleibt es bei der schlichten Marke, damit ein Gesetzblatt
257nicht an einem gleichlautenden Wort abbricht (AenderungsgesetzParser).
258
259
260Artikel 2
261Änderungsanträge
262
263(1) Ein Änderungsantrag ändert nicht das Stammgesetz, sondern eine Drucksache.
264Sein Rahmensatz benennt daher zwei Ebenen zugleich: die Stelle in der Drucksache
265und die Stelle in dem Text, den der dort stehende Befehl zitiert. Beide werden
266gesondert geführt (AenderungsantragParser mit den Sätzen DrucksachenStelle und
267MetaBefehl); die Drucksachenstelle wird bewusst nicht als Stelle modelliert, da
268diese eine Fundstelle im Gesetz bezeichnet und ein anderes Bezugssystem meint.
269
270(2) Die Befehle werden auf den Lineartext des Entwurfs angewandt
271(EntwurfsPatcher). Der Gesetzesanwender bleibt unberührt: Ein Entwurf ist kein
272Gesetz, sondern eine Folge von Befehlen, deren Zitate erst künftig Gesetz werden
273sollen; der Antrag greift in eben diese Zitate ein.
274
275(3) Bei der Suche nach der Drucksachenstelle werden die Zitate zeichengleich
276ausgeblendet. Andernfalls gälten die Aufzählungen des zitierten Gesetzestextes
277(„1. Haarwild:“) als Gliederungspunkte der Drucksache und ließen den gesuchten
278Punkt vorzeitig enden.
279
280(4) Welcher Entwurf gemeint ist, entscheidet die vom Antrag genannte
281Drucksachennummer, nicht die Reihenfolge der Argumente (Pipeline). Fehlt der
282Entwurf, bleibt der Antrag unangewandt und wird gemeldet; eine ersatzweise
283Anwendung auf das Stammgesetz unterbleibt, da die Stellenangaben auf die
284Drucksache zielen.
285
286(5) Erkannt wird die elliptische Antragsform, die das Hilfsverb nur einmal in
287der Beschlussformel führt („In Nr. 1.29 die Angabe „,“ am Ende durch die Angabe
288„;“ ersetzt.“). Das fehlende Hilfsverb wird an der Stelle ergänzt, an der es im
289vollständigen Satz stünde (BefehlErkenner).
290
291(6) Das allgemeine Ersetzungsmuster lässt nunmehr den Zusatz am Ende zwischen
292Ziel und durch zu und führt ihn als solchen. Bisher kannte diesen Zusatz nur
293das Muster für Satzzeichen.
294
295(7) Der Stellenparser nimmt gestufte Nummern an („Nr. 1.29“), wie sie in
296dezimal durchgezählten Listen vorkommen.
297
298
299Artikel 3
300Zusammenstellung einer Beschlussempfehlung
301
302(1) Die Zusammenstellung stellt links den Entwurf und rechts die Beschlüsse des
303Ausschusses gegenüber. Anders als beim alten Bundesgesetzblatt und beim Gesetz-
304und Verordnungsblatt für Berlin stehen die Spalten nicht nacheinander im
305Inhaltsstrom, sondern zeilenweise verschränkt; sie werden daher erstmals anhand
306der Koordinaten getrennt (FontgroessenFilter, PatchTextExtraktor).
307
308(2) Geschnitten wird an der Blattmitte, jedoch nur dort, wo ein tatsächlicher
309Spaltensteg vorliegt. Eine über die Blattmitte durchlaufende Zeile ist
310ganzseitenbreit (Vorblatt, Bericht, Seitenkopf); sie bleibt ungeschnitten und
311wird der linken Spalte zugeschlagen, damit sie genau einmal erscheint.
312
313(3) Der gesperrt gesetzte Vermerk der Ausschussspalte wird auf seine Normalform
314gebracht, der laufende Spaltenkopf als Kolumnentitel entfernt (TextBereiniger).
315
316(4) Die Auflösung der rechten Spalte unterbleibt einstweilen. Sie druckt
317Unverändertes nicht ab, sondern vermerkt es und zwar nicht nur je
318Gliederungspunkt, sondern auch zeilenweise innerhalb zitierter Blöcke. Die
319rechte Spalte ist damit für sich genommen kein vollständiges Dokument; ihre
320Anführungszeichen gehen nicht auf. Eine Auflösung über die Gliederungspfade
321allein wurde erprobt und ist daran gescheitert; erforderlich ist die zeilenweise
322Zuordnung beider Spalten über ihre gemeinsame Grundlinie im Satzspiegel. Bis
323dahin wird eine Beschlussempfehlung erkannt und unter Angabe des Grundes
324übergangen, verbunden mit dem Hinweis auf die Drucksachennummer des Entwurfs,
325der sich stattdessen eignet.
326
327
328Artikel 4
329Prüffälle
330
331(1) Es treten hinzu: die Einordnung von zwölf Beispieldokumenten nach ihrer Art
332(DokumentErkennerTest), das Lesen und Anwenden eines Änderungsantrags
333(AenderungsantragParserTest, EntwurfsPatcherTest) sowie vier Fälle in
334EndToEndTest der Antrag der Fraktion BÜNDNIS 90/DIE GRÜNEN zum bayerischen
335Jagdgesetz (Ltg.-Drs. 19/10365), die Unberührtheit des Stammgesetzes durch
336ebendiesen Antrag, die Spaltentrennung der Zusammenstellung zur Drucksache
33720/7619 und die Behandlung eines Entschließungsantrags.
338
339(2) Der Antragsfall belegt beides: Der Antrag streicht den Goldschakal aus der
340Artenliste des neuen § 18 der Ausführungsverordnung und schließt die Aufzählung
341mit einem Semikolon ab; die Synopse des Bayerischen Jagdgesetzes bleibt dabei
342zu Recht unverändert, weil der Antrag auf einen Paragraphen des Entwurfs zielt,
343der die Verordnung und nicht das Gesetz ändert.
344
345(3) Die Spaltentrennung wird daran gemessen, dass die linke Spalte der
346Zusammenstellung Befehl für Befehl den Regierungsentwurf ergibt, aus dem sie
347gebaut ist (117 Befehle, wie aus Drucksache 20/6875).
348
349
350Artikel 5
351Handbuch
352
353Das Handbuch (README.adoc) erhält den Abschnitt Quellformate: Gesetz, Entwurf,
354Antrag“. Die bisherige Angabe, Metanderungen an Drucksachen seien bewusst
355nicht abgedeckt, entfällt. Das Hinweisfeld der Web-Anwendung nennt die nunmehr
356zulässigen Dokumentarten.
357
358
359════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +0200360 Fassung vom 26. Juli 2026,
361 zuletzt geändert durch die am 26. Juli 2026 vorgenommenen Änderungen
362════════════════════════════════════════════════════════════════════════════════
363
364Der zweispaltige Belegfall Berlin (Gesetz zur Änderung des Allgemeinen
365Sicherheits- und Ordnungsgesetzes und des LAF-Errichtungsgesetzes vom 3. Juni
3662026, GVBl. S. 234) wird untersucht. Der Befund widerlegt die bisherige Annahme:
367Die Reihenfolge des Inhaltsstroms ist bereits die Lesereihenfolge; eine
368koordinatenbasierte Spaltenerkennung ist nicht erforderlich. Die tatsächlichen
Matthias Andreas Benkard81777012026-07-26 08:53:10 +0200369Hindernisse liegen anderswo davon werden vier behoben. Von den sechs Befehlen
370des Heftes werden danach fünf erkannt.
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +0200371
372
373Artikel 1
374Eingebettetes Rahmenziel in Paragraphenform
375
376Der Änderungsgesetz-Parser (AenderungsgesetzParser) übernahm ein in der
377Änderungsformel selbst genanntes Ziel („§ 2 Satz 1 des Gesetzes zur Errichtung
378eines Landesamtes wird wie folgt geändert:“) nicht als Kontext der
379nachfolgenden Gliederungspunkte. Ursache war die vordere Wortgrenze des Musters
380EINGEBETTETES_ZIEL: „§“ ist selbst kein Wortzeichen, eine Wortgrenze davor
381verlangte also ein vorangehendes Wortzeichen. Der §-Zweig des Musters war damit
382unerreichbar und allein der bayerische Art.“-Zweig wirksam. An die Stelle der
383Wortgrenze tritt nunmehr die Bedingung, dass kein Buchstabe und keine Ziffer
384vorangeht.
385
386
387Artikel 2
388Laufender Seitenkopf des Gesetz- und Verordnungsblatts für Berlin
389
390Der laufende Seitenkopf des GVBl. für Berlin („235Gesetz- und Verordnungsblatt
391für Berlin 82. Jahrgang Nr. 17 11. Juni 2026“) steht im Inhaltsstrom nicht auf
392einer eigenen Zeile, sondern klebt samt Seitenzahl mitten im Fließtext der
393folgenden Spalte. Er ist deshalb nicht als Kolumnentitel zu entfernen, sondern
394aus dem laufenden Text herauszuschneiden (TextBereiniger, Muster
395GVBL_BERLIN_KOPF).
396
397
398Artikel 3
399Prüffall Berlin
400
401Ein Test bis einschließlich der Befehlserkennung tritt hinzu
402(EndToEndTest.asogLafAendGBerlin). Er hält das Ergebnis des Spaltenspikes fest
403die Befehle beider Artikel stehen unverschränkt in Lesereihenfolge und prüft,
404dass die beiden Punkte des Artikels 2 ihr Ziel aus der Änderungsformel erben.
405
406Ein voller Akzeptanztest ist nicht möglich: gesetze.berlin.de ist wie das
Matthias Andreas Benkard81777012026-07-26 08:53:10 +0200407schleswig-holsteinische Portal eine anmeldepflichtige juris-Anwendung.
408
409
410Artikel 4
411Unnummerierte, benannte Anlagen
412
413Ein Gesetz mit einer einzigen Anlage benennt sie nach der Vorschrift, zu der sie
414gehört („Die Anlage zu § 2 Absatz 4 Satz 1“). Der Stellenparser (StellenParser)
415verlangte hinter Anlage stets eine Nummer und wies solche Angaben zurück; der
416Rahmenbefehl des Artikels 1 blieb deshalb unerkannt und seine Unterpunkte ohne
417Kontext. Die Anlage trägt nunmehr wie der Anhang die Bezeichnung Anlage“.
418Der benennende Zusatz wird übersprungen: Er reicht bis zum Ende der
419Stellenangabe, und würde er mitgelesen, so läse der Parser das darin genannte
420„§ 2 als Änderungsziel und änderte die falsche Norm.
421
422Damit ist zugleich die Annahme der Fassung vom 26. Juli 2026 richtigzustellen:
423Anlagen sind als Änderungsziel unterstützt (im gii-XML sind sie eigene Normen,
424Stelle.anlagenEnbez() löst sie auf). Offen bleibt allein, dass der
425Landesrecht-Textparser keine Anlagen-Normköpfe kennt, eine handgepflegte
426Stammfassung also keine Anlage tragen kann.
427
428
429Artikel 5
430Steuerzeichen und zerrissene Befehlsvokabeln
431
432Der Textbereiniger (TextBereiniger) entfernt nunmehr C0-Steuerzeichen außer
433Tabulator und Zeilenumbruch (Muster STEUERZEICHEN). Im GVBl. für Berlin trägt
434der Einzug der Aufzählungsglieder ein U+0007; es steht unsichtbar vor dem Befehl
435und ließ dessen Zeilenanfangs-Anker ins Leere greifen. Ebenso werden
436Befehlsvokabeln zusammengeführt, die der amtliche Satz durch ein Leerzeichen
437zerreißt („ein gefügt statt eingefügt“) beschränkt auf Fügungen, die als
438Wortfolge im Deutschen nicht vorkommen.
439
440Von den vier Befehlen des Artikels 1 werden damit drei erkannt. Der vierte
441bestimmt die Einfügestelle über einen Wortanker („Vor den Wörtern Aus dem
442Bereich Verkehr:“ wird folgender Absatz 5 eingefügt“); eine Struktureinfügung
443trägt bislang nur eine Stellenangabe. Beides ist in
444sampledata/Landesrecht-Beispiele.adoc vermerkt.
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +0200445
446
447════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +0200448 Fassung vom 25. Juli 2026,
449 zuletzt geändert durch die am 25. Juli 2026 vorgenommenen Änderungen
450════════════════════════════════════════════════════════════════════════════════
451
Matthias Andreas Benkard35e90f42026-07-25 10:00:36 +0200452Der Abschluss der sechsten und der Beginn der siebten Ertüchtigungswelle: Zwei
453weitere Belegfälle treten hinzu.
454
455Schleswig-Holstein (Artikel 1 bis 4): das Gesetz zur Änderung des Gesetzes zur
456Änderung kommunalrechtlicher Vorschriften vom 26. März 2026 (GVOBl. Schl.-H.
4572026/27). Es führt drei bislang unbekannte Eigenheiten ein den laufenden Seiten-
458kopf des GVOBl. Schleswig-Holstein, hochgestellte Fußnotenmarker an den Artikel-
459Überschriften und einen Flattersatz, in dem die geometrische Randerkennung
460versagt. Ein voller Akzeptanztest bleibt vorerst aus, weil die konsolidierte
461Gemeindeordnung aus freien Quellen nicht in der maßgeblichen Fassung zu
462beschaffen ist.
463
464Nordrhein-Westfalen (Artikel 5 bis 7): Artikel 3 des 22. Rundfunkänderungsgesetzes
465vom 24. März 2026 (GV. NRW. S. 202) ändert das Telemedienzuständigkeitsgesetz.
466Alle vier Befehle werden erkannt und angewandt; das Ergebnis ist gegen die
467amtliche Fassung vom 1. April 2026 abgeglichen. Dazu werden die Trennung von
468Kurztitel und Abkürzung im Klammerzusatz und eine Strukturgrenze für unbalancierte
469Anführungszeichen nötig.
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +0200470
Matthias Andreas Benkard83ba9f02026-07-25 10:35:45 +0200471Schließlich (Artikel 8 bis 10) werden die beiden niedersächsischen Einfügeformen
472ertüchtigt, die bislang als Grenze dokumentiert waren; das Niedersächsische
473ELER-Fördergesetz wird damit ohne Rest umgesetzt.
474
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +0200475
476Artikel 1
477Seitenkopf des Gesetz- und Verordnungsblatts für Schleswig-Holstein
478
479Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch den
480zweizeiligen Titelkopf und den laufenden Seitenkopf des Gesetz- und Verordnungs-
481blatts für Schleswig-Holstein („Gesetz- und Verordnungsblatt für Schleswig-
482Holstein nebst 2026/27 vom 30. März“, Muster GVOBL_SH_KOPF, GVOBL_SH_LAND und
483GVOBL_SH_HEFT). Der laufende Kopf steht zwischen zwei Artikeln und klebte sonst
484an der folgenden Artikelberschrift.
485
486
487Artikel 2
488Fußnotenmarker an Artikelberschriften
489
490Schleswig-Holstein verweist an der Artikelberschrift eines Änderungsgesetzes
491mit einer hochgestellten Ziffer auf die Gliederungsnummer-Fußnote am Seitenfuß
492(„Artikel 1 ¹)“). Solche Überschriften genügten dem Muster der Artikel-Teilung
493(AenderungsgesetzParser.ARTIKEL_UEBERSCHRIFT) nicht. Der Textbereiniger streift
494den Marker nunmehr ab (TextBereiniger.loeseArtikelFussnoten, Muster
495ARTIKEL_FUSSNOTE) und trennt dabei eine in derselben Zeile stehende Einleitung
496wieder ab.
497
498
499Artikel 3
500Silbentrennung bei hartem Zeilenende
501
502Der Textbereiniger (TextBereiniger.verbindeUmbrueche) zog eine Silbentrennung am
503Zeilenende bislang nie zusammen, wenn die geometrische Randerkennung des
504Fontgrößenfilters ein hartes Zeilenende meldete. Im Flattersatz wie ihn das
505GVOBl. Schl.-H. verwendet findet diese Erkennung jedoch keinen Ausrichtungs-
506Cluster und stuft auch volle Zeilen als hart ein. Klebt der Trennstrich ohne
507Trailing-Whitespace am Zeilenende, ist er deshalb nunmehr auch dort als
508Silbentrennung zu lesen; bewusst gesetzte Suspensivstriche tragen den Trailing-
509Whitespace des Extraktors und bleiben unberührt.
510
511
512Artikel 4
513Belegfall Kommunalrechtnderungsgesetz Schleswig-Holstein
514
515Als weiterer Prüffall tritt ein Test bis einschließlich der Befehlserkennung
516hinzu (EndToEndTest.kommunalrechtAendGSchleswigHolstein): Artikel 1 trifft die
517Gemeindeordnung, Artikel 2 die Kreisordnung, Artikel 3 ein anderes Änderungs-
518gesetz; je Zielgesetz wird genau ein Neufassungsbefehl („§ 34a Absatz 1 erhält
519folgende Fassung“, „§ 29a Absatz 1 …“) erkannt, kein Befehl bleibt unbekannt.
520Ein voller Akzeptanztest ist nicht möglich: Das Landesportal
521gesetze-rechtsprechung.sh.juris.de gibt seine Dokumentinhalte nur über eine
522anmeldepflichtige Schnittstelle aus, und die letzte frei archivierte Gesamt-
523ausgabe der Gemeindeordnung (14. November 2022) kennt den geänderten § 34a noch
524nicht. Die Fundstelle ist in sampledata/Landesrecht-Beispiele.adoc vermerkt.
525
526
Matthias Andreas Benkard35e90f42026-07-25 10:00:36 +0200527Artikel 5
528Kurztitel und Abkürzung im Klammerzusatz
529
530Der Landesrecht-Textparser (LandesRechtTextParser) las den Klammerzusatz der
531Titelzeile stets als Abkürzung. Landesgesetze führen dort jedoch häufig Kurztitel
532und Abkürzung nebeneinander („(Telemedienzuständigkeitsgesetz TMZ-Gesetz)“,
533„(Gemeindeordnung GO –)“), und das Änderungsgesetz zitiert das Stammgesetz mit
534dem Kurztitel, nicht mit der Abkürzung; die Artikelauswahl
535(AenderungsgesetzParser.betrifft) griff deshalb nicht. Der Parser trennt den
536Klammerzusatz nunmehr am Gedankenstrich (Muster KURZTITEL_TRENNER) und führt den
537Kurztitel als Kurzüberschrift des Gesetzes.
538
539
540Artikel 6
541Strukturgrenze bei unbalancierten Anführungszeichen
542
543Der Zitatextraktor (ZitatExtraktor) schlug den gesamten Folgetext einem Zitat zu,
544wenn im amtlichen Satz ein schließendes Anführungszeichen fehlte. Im 22. Rundfunk-
545änderungsgesetz (Artikel 2 Nr. 11) ist das der Fall; das offene Zitat verschlang
546dort die Artikel 3 bis 5, sodass überhaupt kein Änderungsbefehl mehr gefunden
547wurde. Ein Änderungsgesetz zitiert jedoch nie über eine Artikelberschrift
548hinweg. Der Extraktor schließt ein offenes Zitat deshalb vor einer Zeile, die nur
549aus Artikel N besteht, und meldet dies als Warnung. Zitierte Paragraphen bleiben
550unberührt, weil das bayerische Landesrecht seine Normköpfe als Art. N führt.
551
552
553Artikel 7
554Belegfall Telemedienzuständigkeitsgesetz
555
556Als weitere Beispieldaten treten die konsolidierte Vorfassung des TMZ-Gesetzes
557(sampledata/NRW/TMZ-Gesetz-alt.txt, kanonischer Klartext, Fassung vom 27. April
5582022 aus der Fassungshistorie von recht.nrw.de) und ein End-to-End-Akzeptanztest
559(EndToEndTest.tmzGesetzAcceptance) hinzu: Von den vier Befehlen des Artikels 3
560werden alle angewandt die Neufassung der Gesetzesüberschrift, die Neufassung des
561§ 1 Absatz 2, die Fundstellen-Ersetzung im Satzteil vor Nummer 1 des § 2 und die
562Neufassung der Nummern 1 und 2 des § 2. Die Artikel 1, 2 und 4 desselben Heftes
563(WDR-Gesetz, Landesmediengesetz, Siebzehnter Rundfunkänderungsstaatsvertrag
564Ausführungsgesetz) werden zutreffend nicht gewählt.
565
566
Matthias Andreas Benkard83ba9f02026-07-25 10:35:45 +0200567Artikel 8
568Sachnummern mit Leerzeichen
569
570Niedersachsen zitiert eingeschobene Paragraphen mit einem Leerzeichen vor der
571Sachnummer („§ 2 a“), die übrige Rechtssprache ohne („§ 2a“). Stellen- und
572Ebenenparser erkannten die niedersächsische Form nicht. Der Textbereiniger zieht
573sie nunmehr auf die kanonische Form zusammen (Muster SACHNUMMER_MIT_LEERZEICHEN);
574ein folgender Aufzählungsmarker des Änderungsgesetzes („… nach § 8 c) In Absatz 2
575…“) bleibt ausgenommen.
576
577
578Artikel 9
579Gliederungsbezogene Einfügung eines Paragraphen
580
581Der Befehlserkenner (BefehlErkenner) erkannte die Einfügung eines Paragraphen nur
582in der ankergeführten Form („Nach § 12 wird der folgende § 13 angefügt“). Die
583gliederungsbezogene Form In Kapitel 4 wird nach § 12 der folgende neue § 13
584angefügt tritt hinzu (Muster STRUKTUR_EINFUEGUNG_IN_GLIEDERUNG); die
585Gliederungsangabe nennt nur den Abschnitt, maßgeblich für die Position bleibt der
586Anker. Zugleich wird das Beiwort neu in beiden Formen zugelassen.
587
588
589Artikel 10
590Vorrang der Umnummerierung vor der Neubesetzung
591
592Der Befehlsanwender (BefehlAnwender) wandte die Befehle stets in der Reihenfolge
593des Änderungsgesetzes an. Besetzt eine Einfügung einen Paragraphen neu, dessen
594bisheriger Träger erst durch einen nachfolgenden Befehl umnummeriert wird („In
595Kapitel 4 wird nach § 12 der folgende neue § 13 angefügt vor Der bisherige § 13
596wird § 14“), so führte das auf zwei Paragraphen gleicher Bezeichnung und die
597Einfügung wurde zurückgewiesen. Das Wort bisherig bezeichnet den Stand vor der
598Änderung; die Umnummerierung geht der Neubesetzung sachlich voraus und wird
599deshalb vorgezogen (BefehlAnwender.anwendungsReihenfolge). Protokolliert wird
600weiterhin in der Reihenfolge des Änderungsgesetzes.
601
602
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +0200603════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard3f81add2026-07-24 05:34:32 +0200604 Fassung vom 24. Juli 2026,
605 zuletzt geändert durch die am 24. Juli 2026 vorgenommenen Änderungen
606════════════════════════════════════════════════════════════════════════════════
607
608Die sechste Ertüchtigungswelle wird um den ersten nichtbayerischen Landesrecht-
609Belegfall ergänzt: das paragraphengegliederte Sächsische Beamtenversorgungsgesetz
610(SächsBeamtVG) in seiner Fassung vom 1. Februar 2025 nebst dem Gesetz zur Änderung
611des SächsBeamtVG vom 13. April 2026 (SächsGVBl. S. 134). Alle fünf Befehle werden
612erkannt und angewandt. Dazu wird der Landesrecht-Textparser um die in den meisten
613Ländern übliche arabische Gliederungsform ertüchtigt und die Fußzeile der revosax-
614Volltextausgabe als Kolumnentitel entfernt.
615
616
617Artikel 1
618Arabische, schlüsselwort-erste Gliederungsberschriften
619
620Der Landesrecht-Textparser (LandesRechtTextParser) erkannte Gliederungs-
621Überschriften bislang allein in der bayerischen Form I. Abschnitt Titel (römische
622Zählung, nachgestelltes Schlüsselwort). Die übrigen Länder gliedern in der Form
623Abschnitt 1“, Unterabschnitt 2“, Teil 3 (arabische Zählung, vorangestelltes
624Schlüsselwort, Titel auf der Folgezeile). Der Parser wird um ein entsprechendes
625Muster (GLIEDERUNG_ARABISCH) ergänzt, das solche Überschriften nach der
626kanonischen Zusammenführung von Schlüsselwort, Nummer und Titel auf eine Zeile
627als Gliederungsgrenzen erkennt. Das bayerische Verhalten bleibt unberührt.
628
629
630Artikel 2
631Fußzeile der revosax-Volltextausgabe
632
633Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch die
634Fußzeile der Volltextausgaben des sächsischen Rechtsportals revosax
635(„https://www.revosax.sachsen.de Fassung vom 13.04.2026 Seite 1 von 1“, Muster
636REVOSAX_FUSS), die Herausgeber-URL, Fassungsdatum und Seitenangabe trägt.
637
638
639Artikel 3
640Belegfall Sächsisches Beamtenversorgungsgesetz
641
642Als Beispieldaten treten die konsolidierte Vorfassung des SächsBeamtVG
643(sampledata/Sachsen/SaechsBeamtVG-alt.txt, kanonischer Klartext, aus der
644archivierten revosax-Volltextfassung abgeleitet) und ein End-to-End-Akzeptanztest
645(EndToEndTest.saechsBeamtVgAcceptance) hinzu: Die Ersetzungen in § 47 (Einmalige
646Unfallentschädigung) und die Neufassung des § 80 Absatz 1 Satz 2 (Allgemeine
647Anpassung) werden vollständig angewandt, ohne Rest.
648
649
Matthias Andreas Benkard43e91612026-07-24 22:29:35 +0200650Artikel 4
651Normköpfe tragen keine ganzen Sätze
652
653Der Landesrecht-Textparser (LandesRechtTextParser) las einen am Zeilenanfang
654stehenden Querverweis-Satz („§ 7 GAPInVeKoSG findet entsprechend Anwendung.“) als
655Normkopf „§ 7“, wodurch die dazwischenliegenden Normen der Monotonie-Prüfung zum
656Opfer fielen. Ein Normkopf trägt jedoch eine Überschrift, keinen ganzen Satz;
657deshalb schließt das Normkopf-Muster nunmehr Titel aus, die auf einen Punkt enden.
658
659
660Artikel 5
661Fußzeile und Herausgeberzeile des Niedersächsischen GVBl
662
663Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch die
664laufende Fußzeile des Niedersächsischen Gesetz- und Verordnungsblatts („Nds. GVBl.
6652026 Nr. 10 vom 4. Februar 2026 Seite 2“) und die Herausgeberzeile. Die zwischen
666zwei Aufzählungsgliedern stehende Fußzeile hängte sich sonst an das voranstehende
667Neufassungs-Zitat, sodass dessen Satzende-Anker nicht mehr griff.
668
669
670Artikel 6
671Belegfall Niedersächsisches ELER-Fördergesetz
672
673Als weitere Beispieldaten treten die konsolidierte Fassung des seit 2022
674unveränderten NEFG (sampledata/Niedersachsen/NEFG-alt.txt, kanonischer Klartext,
675aus dem zweispaltig gesetzten Nds. GVBl 2022 Nr. 33 abgeleitet) und ein
676End-to-End-Akzeptanztest (EndToEndTest.nefgAcceptance) hinzu: Von den sieben
677Befehlen werden fünf angewandt darunter zwei Neufassungen erhält folgende
678Fassung 1 Abs. 1, § 2), die Angaben-Ersetzung in § 1 Abs. 5, die
679Wörter-Einfügung in § 6 Abs. 1 und die Umnummerierung § 13 § 14. Zwei
680Einfügeformen bleiben als manuell prüfen stehen (bewusst dokumentierte Grenze):
681die Einfügung eines §-Blocks mit durch Leerzeichen getrennter Sachnummer („§ 2 a“)
682sowie die kapitelbezogene §-Block-Einfügung („In Kapitel 4 wird nach § 12
683angefügt“).
684
685
Matthias Andreas Benkard3f81add2026-07-24 05:34:32 +0200686════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardc2b57de2026-07-19 10:15:00 +0200687 Fassung vom 19. Juli 2026,
688 zuletzt geändert durch die am 19. Juli 2026 vorgenommenen Änderungen
689════════════════════════════════════════════════════════════════════════════════
690
691In einer sechsten Ertüchtigungswelle wird das Erzeugnis über das bayerische
692Landesrecht hinaus für das Landesrecht der übrigen Länder vorbereitet. Da diese
693ihre Stammgesetze anders als Bayern in Paragraphen gliedern, wird der
694bayerische Lader zu einem gemeinsamen Landesrecht-Lader verallgemeinert, der das
695Sigel oder Art.) je Norm aus dem Text ableitet; der Superskript-Modus folgt
696nunmehr datengetrieben der Schreibweise des Stammgesetzes. Ferner wird die in
697mehreren Ländern übliche Neufassungsform erhält folgende Fassung erkannt. Als
698Beispieldaten sind bereits Änderungsgesetze aus acht Ländern hinterlegt
699(sampledata: Berlin, Schleswig-Holstein, Hessen, Niedersachsen, Baden-Württem-
700berg, Nordrhein-Westfalen, Sachsen, Thüringen); ihre konsolidierten Stammfassungen
701und die dazugehörigen Akzeptanzfälle folgen in weiteren Fassungen dieser Welle.
702
703
704Artikel 1
705Verallgemeinerung des bayerischen Laders zu einem Landesrecht-Lader
706
707Die Klassen BayRechtLoader und BayRechtTextParser (Paket gesetz.bayern) werden zu
708LandesRechtLoader und LandesRechtTextParser (Paket gesetz.land) verallgemeinert.
709Der Normkopf erkennt statt allein Art. N nunmehr „§ N wie Art. N und leitet
710das Sigel je Norm aus dem Treffer ab (Norm.enbez), sodass die Gliederung des
711jeweiligen Landes ohne ein eigenes Land-Merkmal folgt. Das Querverweis-
712Schlüsselwort im Normkopf wird nur noch als ganzes Wort ausgeschlossen, damit ein
713Normtitel wie Satzungen nicht am Verweis-Wort Satz scheitert; die
714Juris-Abkürzung darf mehrteilig sein („(GO NRW)“). Das bayerische Verhalten
715bleibt unverändert.
716
717
718Artikel 2
719Datengetriebener Superskript-Modus aus der Stammfassung
720
721Ob ein Änderungsgesetz mit Erhalt der hochgestellten amtlichen Satznummern
722extrahiert wird, richtet sich nicht mehr danach, ob das Stammgesetz als gii-XML
723vorliegt, sondern danach, ob die geladene Stammfassung selbst amtliche Satznummern
724am Satzanfang trägt (Superskript.traegtSatznummern). Damit erhalten das bayerische
725Landesrecht und das niedersächsische Recht ihre Superskripte, das Bundesrecht und
726die Länder ohne amtliche Satzzählung verwerfen sie wie bisher.
727
728
729Artikel 3
730Erkennung der Neufassungsform erhält folgende Fassung
731
732Der Befehlserkenner erkennt die Neufassung nunmehr auch in der in Schleswig-
733Holstein und Niedersachsen üblichen Form „… erhält (erhalten) folgende Fassung:“,
734neben der bisherigen Form „… wird (werden) wie folgt gefasst:“. Die Erweiterung
735ist rein zusätzlich (Verb-Baustein NEUFASSUNG_VERB) und lässt die Muster des
736Bundes- und des bayerischen Rechts unberührt.
737
738
739════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200740 Fassung vom 17. Juli 2026,
741 zuletzt geändert durch die am 17. Juli 2026 vorgenommenen Änderungen
742════════════════════════════════════════════════════════════════════════════════
743
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +0200744Auf Grund eines gemeldeten Wiedergabefehlers wird der Textbereiniger um eine
745geometrische Zeilenend-Klassifikation auf Basis von PDFBox-Koordinaten ergänzt;
746ferner wird die Strukturierung hängend eingerückter Definitionslisten (z.B. im
747UWG-Anhang) sowohl im PDF-Extraktor als auch im XML-Flattener vereinheitlicht.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200748
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +0200749Sodann wird das Erzeugnis in einer fünften Ertüchtigungswelle für das Landes-
750recht des Freistaates Bayern ertüchtigt (Artikel 4 bis 10): Stammgesetze in
751Artikel-Gliederung aus der konsolidierten Fassung von gesetze-bayern.de,
752paragraphengegliederte Änderungsgesetze aus dem Bayerischen Gesetz- und
753Verordnungsblatt und aus Landtags-Drucksachen, amtliche Satznummern als
754Superskripte sowie die bayerischen Befehlsformen. Belegfall ist das Gesetz zur
755Änderung des Bayerischen Jagdgesetzes und weiterer Rechtsvorschriften vom
75626. März 2026 (GVBl. S. 113) nebst Regierungsentwurf (Ltg-Drs. 19/9707).
757
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200758
759Artikel 1
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +0200760Geometrische Klassifikation der Zeilenenden nach Ausrichtungs-Clustern
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200761
762Der Textbereiniger (TextBereiniger.verbindeUmbrueche) zog eine Zeile, die ohne
763Leerraum am Ende mit einem Buchstaben schließt und deren Folgezeile klein
764beginnt, bislang stets ohne Trennzeichen mit der Folgezeile zusammen, in der
765Annahme, es handle sich um eine bei der PDF-Extraktion um den Bindestrich
766gebrachte Silbentrennung. Diese Annahme trifft auf einen bewussten Wortgrenzen-
767Umbruch (etwa das Stichwort einer hängend eingerückten Definition, wie er im
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +0200768Anhang zum UWG vorkommt) nicht zu. Zur Behebung bestimmt der PDF-Vorverarbeiter
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +0200769(FontgroessenFilter) das geometrische End-X jeder Zeile (unter Flush auch am
770Seitenende, damit die letzte Zeile einer Seite nicht die erste der Folgeseite
771verfälscht) und klassifiziert die Zeilenenden anhand von Ausrichtungs-Clustern
772in einem Fenster von 20 Zeilen davor/danach: Ein Zeilenende ist weich, wenn
773mindestens fünf Fensterzeilen (auf vier Punkt genau) gleich ausgerichtet enden
774(Satzspiegelrand des Blocksatzes), und hart, wenn ein solcher Rand mindestens
775zehn Punkt oberhalb des Zeilenendes verläuft dort wäre noch Platz gewesen,
776der Umbruch ist mithin gewollt. Cluster statt eines Fenster-Perzentils, weil am
777Spaltenwechsel des zweispaltigen alten Bundesgesetzblatts beide Spaltenränder
778in ein Fenster fallen; maßgeblich ist der Rand, an dem die Zeile selbst
779ausgerichtet ist. Der Textbereiniger zieht markerlose Umbrüche nur noch bei
780weichen Zeilenenden zusammen (in Ermangelung von Geometriedaten näherungsweise
781nach Zeichenzahl wie bisher), nie jedoch vor einer Folgezeile, die mit einem
782Aufzählungsmarker („d)“, 3.“) beginnt.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200783
784
785Artikel 2
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +0200786Zusammenzug weicher und Erhaltung harter Umbrüche
787
788Nach den Einzelzusammenzügen fügt der Textbereiniger geometrisch weiche
789Zeilenenden mit einem Leerzeichen zu Fließtext zusammen (Reflow); harte und
790unklassifizierte Umbrüche bleiben erhalten. Nach der Bereinigung ist damit
791jeder verbleibende Zeilenumbruch nach bester Einschätzung beabsichtigt, weshalb
792die Zitat-Normalisierung des Befehlsanwenders (normalisiereZitatText) Umbrüche
793nicht mehr zu Leerzeichen faltet. Ausgenommen vom Reflow sind Strukturzeilen
794(„Artikel 2“, „§ 19“, allein stehende Gliederungs-Bezeichnungen): Gleich
795breite, zentrierte Überschriften in Serie bilden ein Schein-Cluster, der Parser
796benötigt sie jedoch allein auf der Zeile.
797
798
799Artikel 3
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +0200800Strukturierung und Normalisierung hängend eingerückter Definitionslisten
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200801
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +0200802Damit die nunmehr erhaltenen hängenden Zeilenenden in Definitionslisten (wie
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +0200803beim UWG-Anhang oder in § 2 IfSG) korrekt strukturiert werden:
8041. Der XML-Flattener (ContentFlattener) trennt mehrere <LA>-Geschwister innerhalb
805 eines <DD>-Elements durch Zeilenumbrüche und rückt die Folgezeilen tiefer ein
806 als die Aufzählungszeile (Kindzeilen der Einheit für die Stellenauflösung).
8072. Der Befehlsanwender rückt beim Einsetzen von Zitattext (rueckeZitatEin)
808 Fortsetzungszeilen zwei Zeichen tiefer ein als die Aufzählungszeile.
809Beide Wege erzeugen dieselbe kanonische Zeilenform („ 2a. Stichwort nebst
810 Definitionstext“), welche für die korrekte Erkennung von Kindzeilen durch
811die Stellenauflösung (StellenAufloeser.zeilenBlock) erforderlich ist.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200812
813
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +0200814Artikel 4
815Verallgemeinerung der Normbezeichnung auf das Artikel-Sigel
816
817Die Stellenkomponente des Paragraphen (Stelle.Paragraph) führt neben der Nummer
818nunmehr das Sigel („§“ oder Art.“) und bildet daraus die Einzelnormbezeichnung
819(enbez). Der Stellenparser (StellenParser) nimmt Art.“ als Normbezeichnung
820sowie durchgehend die abgekürzten und deklinierten Einheitenwörter an („Abs.“,
821Nr.“, Nrn.“, Buchst.“, Sätzen“, Absätzen“); ferner wird die Komponente des
822Halbsatzes eingeführt (Auflösung durch Teilung des Satzes am Semikolon) und
823werden koordinierte Stellen mit nachgestellten Komponenten („Art. 18 Satz 2,
824Art. 19 und 20 Satz 1“) entfaltet. Befehlserkenner und Befehlsanwender bilden
825sämtliche bisher auf das „§“-Zeichen festgelegten Muster auf beide Sigel ab;
826das Verhalten gegenüber Bundesrecht bleibt unverändert.
827
828
829Artikel 5
830Amtliche Satznummern als Superskripte
831
832Bayerische Normtexte führen amtliche Satznummern als hochgestellte Ziffern.
833Der PDF-Vorverarbeiter (FontgroessenFilter) erhält einen Superskript-Modus:
834Ziffernfolgen, die kleiner gesetzt und gegenüber der Grundlinie ihres Laufs um
835zwei bis sechs Punkt gehoben sind, werden als Unicode-Superskripte ² ³)
836übernommen statt verworfen im selben Lauf klebende Satznummern und Fußnoten-
837marker („Enteignung⁶)“) eingeschlossen. Der Satzteiler (SatzTeiler) teilt
838nummerierte Texte exakt an den Satznummern und stellt die Nummer eines Satzes
839bereit; die Stellenauflösung löst Satzangaben in nummerierten Texten nach dem
840amtlichen Label statt nach der Position auf. Die Satz-Umnummerierung schreibt
841die Satznummer im Text um („Satz 5 wird Satz 4 „⁵“ wird „⁴“). Für Bundes-
842recht (Modus Entfernen“) bleibt das Verhalten unverändert.
843
844
845Artikel 6
846Kolumnentitel des GVBl und des Bayerischen Landtags; geschützte Leerzeichen
847
848Der Textbereiniger entfernt die Kolumnentitel des Bayerischen Gesetz- und
849Verordnungsblatts (mit links- oder rechtsstehender, auch an die Jahreszahl
850geklebter Seitenzahl: „… Nr. 6/202676“) sowie die Titel- und Seitenköpfe der
851Landtags-Drucksachen; eine am Seitenwechsel unterbrochene Silbentrennung heilt
852nach der Kopfentfernung („kurz-“ + fristige“). Geschützte Leerzeichen des
853GVBl-Satzes („§ 1“, Abs. 2“) werden früh auf gewöhnliche Leerzeichen
854normalisiert, da sie für die Muster des Parsers unsichtbar sind. Die Struktur-
855zeilen-Ausnahme des Reflows erfasst nunmehr auch Art. N“.
856
857
858Artikel 7
859Paragraphengegliederte Änderungsgesetze; Rahmenbefehl im Vorspann;
860Fortführungszeichen
861
862Bayerische Änderungsgesetze gliedern sich in Paragraphen. Der Parser
863(AenderungsgesetzParser) teilt ein Dokument ohne Artikelberschriften an
864freistehenden „§ N“-Zeilen; die Auswahl über den Einleitungssatz (betrifft)
865bleibt maßgeblich und wählt auch die Weitere Änderung desselben Stamm-
866gesetzes. Nennungen des Stammgesetzes als Genitiv-Attribut eines Ausführungs-
867oder Durchführungstitels („Verordnung zur Ausführung des Bayerischen Jagd-
868gesetzes“) zählen nicht als Treffer. Trägt der Vorspann nach der gesetzesweiten
869Änderungsformel einen Rahmenbefehl („… wird wie folgt geändert: Art. 28 Abs. 1
870wird wie folgt geändert:“) oder das Ziel eingebettet in der Formel selbst
871(„Art. 7 Abs. 2 des X-Gesetzes wird wie folgt geändert:“), so wird dieses
872Ziel Kontext aller Gliederungspunkte. Der Zitatextraktor behandelt das
873Fortführungszeichen des GVBl (jedes neugefasste Aufzählungsglied öffnet am
874Zeilenanfang erneut mit „, geschlossen wird einmal am Blockende) als
875Typografie statt als geschachteltes Zitat; der Begründungs-Abschneider nimmt
876auch Begründung:“ an. Ein GVBl-Heft, das zugleich ein artikelgegliedertes
877Änderungsgesetz enthielte, unterdrückte die Paragraphen-Teilung Ausweg ist
878die Handkorrektur über --extract-only.
879
880
881Artikel 8
882Stammgesetz-Lader für das bayerische Landesrecht
883
884Das neue Paket gesetz/bayern liest ein Stammgesetz aus der konsolidierten
885Fassung von gesetze-bayern.de als PDF ber den Superskript-erhaltenden
886Extraktionsweg) oder als kanonischen Klartext im Format der --extract-only-
887Ausgabe (BayRechtLoader, BayRechtTextParser). Erfasst werden Titelblock,
888Gliederungsberschriften samt nummerierten Unterberschriften (synthetische
889Kennzahlen), Normköpfe Art. N (Querverweise am Zeilenanfang werden über eine
890Negativliste und die Monotonie der Artikelnummern ausgeschlossen; vom Reflow an
891ein Satzende geklebte Normköpfe werden am doppelten Leerzeichen erkannt und
892wieder abgetrennt), aufgehobene Artikel sowie Fußnotenzeilen („⁶) [Amtl.
893Anm.:] …“), die superskript-normalisiert im tragenden Absatz verbleiben. Die
894Befehlszeile (AendGgner) wählt den Lader nach dem Dateityp des Stammgesetzes
895(XML gii, PDF/Klartext Bayern) und extrahiert Änderungsgesetze dann im
896Superskript-Modus.
897
898
899Artikel 9
900Bayerische Befehlsformen
901
902Der Befehlserkenner und der Befehlsanwender werden ergänzt um: die Aufhebung
903von Fußnoten („Fußnote 1 wird aufgehoben“, auch mehrere entfernt Fußnoten-
904zeile und Inline-Marker der Kontextnorm), die Streichung der Satznummerierung
905(„In Satz 1 wird die Satznummerierung 1 gestrichen“), die Wortlaut-Formen
906(„Der Wortlaut wird Satz 1“, Der bisherige Wortlaut wird Abs. 5 erhält nur
907der einzige unnummerierte Absatz die Nummer —, Dem Wortlaut werden die
908folgenden Abs. 1 bis 4 vorangestellt nebst lokativer Folgeklausel auf den
909nummerierten Absatz), stellenlose und koordinierte Streichungen („Die Angabe
910X wird gestrichen“, werden die Angabe X und die Angabe Y gestrichen“),
911Ersetzungspaare mit sowie und Einfügepaare mit Komma-Reihung, Bereichs- und
912Koordinations-Umnummerierungen in abgekürzter Form („Die bisherigen Abs. 1
913bis 3 werden die Abs. 2 bis 4“) sowie Klauselketten mit gemeinsamem Schluss-
914verb („… wird durch und wird durch ersetzt“). Die Absatz-Umnummerierung
915greift nur noch, wenn der Absatz selbst das Ziel ist (bei Satz 5 wird Satz 4
916stammt die Absatzangabe aus dem Kontextrahmen und der Satz-Zweig ist
917zuständig).
918
919
920Artikel 10
921Feinbehandlung von Satzgrenzen, Fußnoten und mehrschrittigen Aufhebungen bei
922der Anwendung
923
924Aus der vollständigen Anwendung der bayerischen Belegnovelle auf die (nach
925Artikel 8 wiederhergestellte) alte Jagdgesetz-Fassung ergeben sich folgende
926Verfeinerungen des Satzteilers, des Befehlserkenners und des Befehlsanwenders:
927
9281. Der Satzteiler (SatzTeiler) bestimmt die Satzgrenzen fortan als Textanfang
929 zuzüglich der Fundstelle jeder amtlichen Satznummer ab „²“. Eine allein
930 stehende Nummer 2 sei es, weil der erste Satz keine Nummer trägt, sei es,
931 weil seine Nummer zuvor gestrichen wurde („Verboten ist ²Art. 33 …“)
932 bildet damit eine eigene Grenze. Als Satzanfang gilt eine Satznummer auch vor
933 einem Paragraphzeichen („³§ 23 …“).
934
9352. Fußnoten-Definitionszeilen („⁶) [Amtl. Anm.:] …“) sind für die wortweisen
936 Operationen (Streichen, Ersetzen, Einfügen) kein Inhalt: Sie werden vor der
937 Operation abgetrennt und danach unverändert wieder angefügt, sodass die
938 Streichung eines Fußnotenmarkers („die Angabe „¹)“ wird gestrichen“) den in
939 den Text eingebetteten Marker trifft, nicht aber den gleichlautenden Kopf der
940 Definitionszeile (deren Beseitigung der Fußnoten-Aufhebung vorbehalten bleibt).
941
9423. Die Aufhebung eines durch seine Bezeichnung benannten Absatzes markiert
943 diesen unter Beibehaltung seiner Nummer als weggefallen. Eine nachfolgende
944 Absatz-Umnummerierung auf eine Zielnummer, die bereits von einem leeren Platz-
945 halter (weggefallen oder gegenstandslos) belegt ist, überschreibt diesen
946 (in Entsprechung zur Umnummerierung auf eine weggefallene Zielnorm), sodass
947 Folgen wie Abs. 2 wird aufgehoben; Abs. 3 wird Abs. 2 …“ vollständig aufgehen.
948
9494. In einem Verbund erbt eine reine Wortoperation ohne eigenen Lokativ den Skopus
950 der linken Klausel („In Abs. 2 Satz 1 wird A ersetzt und die Angabe B wird
951 gestrichen wirkt für beide Klauseln auf Abs. 2 Satz 1); das gemeinsame Verb
952 wird hierzu in die grammatische Normalform vorgezogen.
953
954
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200955Schlussbestimmung
956
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +0200957Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle (zwei-
958hundertelf an der Zahl) sowie durch die vollständige Erstellung (mvnw verify)
959bestätigt worden. Die Behebung des eingangs genannten Wiedergabefehlers wurde
960anhand der Beispieldaten (UWG-Anhang, Nummern 2a, 4c sowie 22; § 2 IfSG)
961verifiziert; die Anwendungs- und Prüfzahlen der bundesrechtlichen Beispiele (UWG,
962AGG, ProdHaftG, GEG, IfSG) bleiben durchgehend unverändert. Die Ertüchtigung für
963das bayerische Landesrecht ist durch die vollständige Anwendung der Belegnovelle
964(GVBl. 2026 S. 113, §§ 1 und 2) auf die wiederhergestellte alte Fassung des
965Bayerischen Jagdgesetzes belegt: Von einhundertvierundfünfzig Änderungsanweisungen
966werden einhundertneunundvierzig selbsttätig angewandt; keine bleibt unerkannt.
967Die fünf verbleibenden Anweisungen sind Folgeänderungen innerhalb zweier mehr-
968schrittiger Umnummerierungssequenzen (Neunummerierung des Bußgeldkatalogs in
969Art. 56 sowie die Absatzverschiebung in Art. 29a) und werden statt fehlerhaft
970gedeutet zu werden mit Begründung dem Abschnitt Manuell prüfen zugewiesen.
971Der Regierungsentwurf (Ltg-Drs. 19/9707) wird auf derselben Grundlage verarbeitet.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +0200972
973
974════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardb7e9f0f2026-07-16 21:12:08 +0200975 Fassung vom 16. Juli 2026,
976 zuletzt geändert durch die am 16. Juli 2026 vorgenommenen Änderungen
977════════════════════════════════════════════════════════════════════════════════
978
979Auf Grund der vierten Ertüchtigungswelle werden Anhänge und Anlagen als Norm-Ziele,
980die Angabe-Befehle der Inhaltsübersicht sowie die Einfügung und Ersetzung von
981Gliederungsberschriften einer Verarbeitung zugänglich gemacht; ferner wird der
982Befehlserkenner um weitere Verbund- und Bereichsformen sowie die Neufassung der
983Gesetzesüberschrift ergänzt und die Brotschriftbestimmung des PDF-Vorverarbeiters
984seitenweise gefasst.
985
986
987Artikel 1
988Anhänge und Anlagen als Norm-Ziele
989
990Die Stelle (Stelle) wird um die Unterscheidung zwischen echten Gliederungseinheiten
991(Teil, Abschnitt, Unterabschnitt und dergleichen) und Anhängen/Anlagen ergänzt
992(betrifftEchteGliederung, anlagenEnbez); Anhänge und Anlagen sind im gii-XML eigene
993Normen mit Text und werden fortan wie Paragraphen behandelt. Der Stellenaufloeser
994löst hierbei Nummer- und Buchstabe-Ketten verschachtelt und blockweise auf: die
995Aufzählungszeile einer Nummer oder eines Buchstabens wird um ihre tiefer
996eingerückten Kindzeilen erweitert, und eine Angabe ohne Absatzbezeichnung wird
997norm-weit gesucht, sofern sie in genau einem Absatz auffindbar ist.
998
999
1000Artikel 2
1001Selbsttätige Anwendung der Inhaltsübersichts-Angaben
1002
1003Es wird der Anwender InhaltsuebersichtAnwender eingeführt, der die Angabe-Befehle
1004(gefasst, ersetzt, eingefügt, gestrichen sowie die Neufassung der gesamten
1005Übersicht) auf das Zeilenmodell der Inhaltsübersichts-Norm anwendet. Eine adressierte
1006Zeile wird anhand der Gliederungs- und Paragraphen-Kette der Stelle verschachtelt
1007gesucht, wobei gleichrangige Gliederungseinheiten als Fenstergrenzen dienen. Bei der
1008Neufassung der gesamten Übersicht schützt eine Plausibilitätssperre vor der
1009Übernahme eines Zitats, das durch ein unbalanciertes Anführungszeichen Befehlssprache
1010nachfolgender Anweisungen mitgerissen hat; ein solcher Fall wird dem Abschnitt
1011Manuell prüfen zugewiesen.
1012
1013
1014Artikel 3
1015Einfügung und Ersetzung von Gliederungsberschriften
1016
1017Es wird der Befehl GliederungsUeberschriften eingeführt; die Anweisungen Nach
1018§ N werden die folgenden Überschriften zu ... eingefügt: „…““ sowie Die bisherigen
1019Überschriften zu ... werden durch die folgende Überschrift zu ... ersetzt: „…““
1020legen neue Einheiten im Gliederungsbaum an beziehungsweise ersetzen bisherige
1021Einheiten durch neue. Der Befehlsanwender (BefehlAnwender.wendeGliederungsUeberschriftenAn)
1022zieht die Titel der neuen Einheiten aus dem Zitat und ordnet sie an der Stelle der
1023ersetzten Einheiten beziehungsweise hinter dem Einfügeanker ein. Ferner wird die
1024Neufassung der Gesetzesüberschrift selbst („Die Überschrift wird wie folgt gefasst
1025ohne weitere Stellenangabe) erkannt und auf den Langtitel des Gesetzes angewandt.
1026
1027
1028Artikel 4
1029Weitere Erweiterungen des Befehlserkenners
1030
1031Der Befehlserkenner (BefehlErkenner) wird um Voranstellungen, Mehrfach-Ersetzungs-
1032und -Einfügepaare, Bereichsziele auf Nummern und Buchstaben, zusammengesetzte
1033Komma-Mehrfachpaare sowie Umnummerierungs-Verbünde („§ 50 wird zu § 38 und wird wie
1034folgt geändert: ...“) ergänzt.
1035
1036
1037Artikel 5
1038Seitenweise Brotschriftbestimmung
1039
1040Der Fontgrößenfilter (FontgroessenFilter) bestimmt die Brotschrift fortan seitenweise
1041statt dokumentweit: Auf jeder Seite gilt die größte Fontgröße mit mindestens 25 vom
1042Hundert Seitenanteil als Brotschrift, wobei eine absolute Mehrheit ab 60 vom Hundert
1043sofort entscheidet; Fußnoten werden als Kleingedrucktes unterhalb der letzten
1044Brotschriftzeile erkannt, Seitenfüße bleiben hiervon ausgenommen. Der Textbereiniger
1045(TextBereiniger) wird um die Toleranz weiterer Drucksachen-Artefakte (Seitenköpfe
1046und -füße, Vorabfassungs-Wasserzeichen, vertauschte oder gerade Anführungszeichen,
1047verklebte Wortgrenzen) ergänzt.
1048
1049
1050Schlussbestimmung
1051
1052Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle (einhundert-
1053dreiundsiebzig an der Zahl) sowie durch die vollständige Erstellung (mvnw verify)
1054bestätigt worden. Auf den Beispieldaten werden nunmehr sämtliche Befehle der
1055BGBl-Fassungen sowie der geprüften Entwürfe angewandt (UWG, AGG und ProdHaftG:
10560 manuell). Nicht selbsttätig verarbeitbar bleiben einstweilen Befehle gegen eine
1057ältere, im XML-Bestand nicht mehr vorhandene Gesetzesfassung sowie vereinzelte,
1058durch Extraktionsverluste im Quell-PDF verursachte Zitatlücken; diese werden
1059weiterhin, mit Begründung versehen, dem Abschnitt Manuell prüfen zugewiesen. Die
1060Unterstützung des bayerischen Landesrechts bleibt einem späteren Zeitpunkt
1061vorbehalten.
1062
1063
1064════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardebd5a7b2026-07-15 20:54:27 +02001065 Fassung vom 15. Juli 2026,
1066 zuletzt geändert durch die am 15. Juli 2026 vorgenommenen Änderungen
1067════════════════════════════════════════════════════════════════════════════════
1068
1069Auf Grund der weiteren Ertüchtigung des Befehlserkenners und des Befehlsanwenders
1070werden Bereichs- und Koordinationsziele bei Struktur-Ersetzungen, die Streichung
1071und Umnummerierung ganzer Struktureinheiten (Paragraphen und Gliederungs-
1072einheiten) sowie das Einfügen und Ersetzen ganzer Paragraphenblöcke einer
1073Verarbeitung zugänglich gemacht.
1074
1075
1076Artikel 1
1077Erweiterung der Struktur-Ersetzung um Ziel-Bereiche
1078
1079Der Aenderungsbefehl (Aenderungsbefehl.StrukturErsetzung) wird um das Feld
1080bisStelle ergänzt, welches bei einem zusammenhängenden, koordinierten Ziel-
1081Bereich („Die Absätze 8 und 9 werden durch die folgenden Absätze 8 bis 10
1082ersetzt: „…““, Die bisherigen Sätze 4 und 5 werden wie folgt gefasst: „…““)
1083das letzte Ziel bezeichnet; bei einem Einzelziel bleibt es unbesetzt. Der
1084Befehlsanwender (BefehlAnwender) löst den Bereich für Absätze, Sätze und
1085Paragraphen auf und ersetzt ihn durch den zitierten Block.
1086
1087
1088Artikel 2
1089Aufnahme struktureller Streichungen und Umnummerierungen
1090
1091Der Befehlserkenner wird wie folgt geändert:
1092
10931. Die Streichung ganzer Struktureinheiten („§ 9 wird gestrichen.“, Die §§ 34
1094 bis 39 werden gestrichen.“, Der bisherige Teil 3 wird gestrichen.“) wird als
1095 Aufhebung erkannt.
1096
10972. Die Umnummerierung wird auf Paragraphen und Gliederungseinheiten (Teil,
1098 Abschnitt, Unterabschnitt, Buch, Kapitel, Anlage) erstreckt sowie um die
1099 paarweise §-Umnummerierung („Die §§ 46 und 47 werden zu den §§ 34 und 35.“)
1100 ergänzt. Der Befehlsanwender benennt hierbei die betroffene Norm oder
1101 Gliederungseinheit um; eine bereits weggefallene Zielnorm wird überschrieben.
1102
11033. Die Neufassung eines §-Bereichs wird auf die Form ohne bisherige erstreckt
1104 und liefert bei mehrgliedrigem Ziel nunmehr eine bereichsbezogene Struktur-
1105 Ersetzung statt eines Einzelbefehls.
1106
11074. Die Neufassung der Überschrift einer benannten Einheit („In Anlage 7 wird die
1108 Überschrift durch die folgende Überschrift ersetzt: „…““) sowie der Inhalts-
1109 übersicht werden erkannt; letztere wird stets der manuellen Prüfung
1110 zugewiesen.
1111
11125. Die Entwurfsform der Struktur-Ersetzung, bei der die Aufzählungsbezeichnung
1113 außerhalb des Zitats steht („… ersetzt: 3. „…““), wird abgefangen und dem
1114 Ersatztext wieder vorangestellt.
1115
11166. Der Chapeau-Qualifier („Im Satzteil vor Nummer 1 …“, In der Angabe vor
1117 Nummer 1 …“) wird auf weitere Einleitungen erstreckt; steht er allein, ohne
1118 eigene Stelle, so bezieht sich die Operation auf die Kontextstelle.
1119
1120
1121Artikel 3
1122Einfügung und Ersetzung ganzer Paragraphenblöcke
1123
11241. Die Einfügung mehrerer Paragraphen in einem Zuge („Nach § 60a werden die
1125 folgenden §§ 60b und 60c eingefügt: „…““) sowie die Ersetzung eines §-Bereichs
1126 durch einen §-Block werden erkannt.
1127
11282. Der Befehlsanwender zerlegt den zitierten Block anhand der §-Überschriften
1129 (unter Ausschluss bloßer Querverweise wie „§ 71 Absatz 1“) in die einzelnen
1130 Paragraphen und fügt sie geschlossen ein oder setzt sie an die Stelle des
1131 ersetzten Bereichs.
1132
1133
1134Schlussbestimmung
1135
1136Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
1137(einhundertvierundvierzig an der Zahl) sowie durch die vollständige Erstellung
1138(mvnw verify) bestätigt worden. Nicht selbsttätig verarbeitbar bleiben
1139einstweilen die mehrquellige Struktur-Ersetzung über mehrere Gesetze hinweg
1140sowie vereinzelte Sonderfälle der Entwurfsfassung (Drucksachen); diese werden
1141dem Abschnitt Manuell prüfen zugewiesen. Die Unterstützung des bayerischen
1142Landesrechts bleibt einem späteren Zeitpunkt vorbehalten.
1143
1144
1145════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard73c5dba2026-07-13 21:42:38 +02001146 Fassung vom 13. Juli 2026,
1147 zuletzt geändert durch die am 13. Juli 2026 vorgenommenen Änderungen
1148════════════════════════════════════════════════════════════════════════════════
1149
1150Auf Grund der fortdauernden Ertüchtigung des Befehlserkenners werden die bis zu
1151diesem Tage nicht selbsttätig verarbeitbaren Änderungsanweisungen nach näherer
1152Maßgabe der nachstehenden Abschnitte einer Verarbeitung zugänglich gemacht. Die
1153Zahl der nicht erkannten Anweisungen (nachfolgend: unbekannte Befehle“) ver-
1154ringert sich hierdurch nach den vorliegenden Feststellungen wie folgt: im
1155Datensatz GEG von fünfzig (50) auf fünf (5), im Datensatz IfSG von elf (11) auf
1156drei (3), im Datensatz AGG von zwei (2) auf null (0) sowie im Datensatz UWG von
1157zwei (2) auf null (0).
1158
1159
1160Artikel 1
1161Übernahme des vorbefindlichen Bearbeitungsstandes
1162
1163Der zum Stichtag im Arbeitsverzeichnis vorgehaltene, noch nicht in die Versions-
1164verwaltung überführte Bearbeitungsstand wird eingecheckt. Erfasst werden ins-
1165besondere der Sammelbefehl (mehrere Teilbefehle als ein Protokolleintrag), die
1166mehrfache Stellenauflösung (StellenParser.parseMehrfach) sowie die Auflösung von
1167Bereichs-Umnummerierungen in absteigender Reihenfolge.
1168
1169
1170Artikel 2
1171Erkennung verbundener und mehrgliedriger Ersetzungsanweisungen
1172
1173Der Befehlserkenner (BefehlErkenner) wird wie folgt geändert:
1174
11751. Die Erkennung wird in eine Einzelbefehls-Stufe (erkenneEinzeln) und eine nach-
1176 geordnete Auffangstufe (erkennePaarErsetzung, erkenneVerbund) gegliedert. Trifft
1177 ein Muster zwar auf den Wortlaut, nicht aber auf eine auflösbare Stelle zu, so
1178 steht dies der Prüfung der nachfolgenden Muster und Auffangstufen nicht mehr
1179 entgegen.
1180
11812. Anweisungen der Form In <Stelle> werden die Wörter A durch die Wörter B
1182 und die Angabe C durch die Wörter D ersetzt werden erkannt; für jedes
1183 Ersetzungspaar wird eine Ersetzung gebildet und, im Falle koordinierter Stellen,
1184 das Kreuzprodukt aus Stellen und Paaren gebildet.
1185
11863. Anweisungen der Form „... und wird/werden ...“ werden an der Verbindungsstelle
1187 versuchsweise zerlegt; wird jede Teilklausel als eigenständiger Befehl erkannt
1188 unverändert, mit großem Anfangsbuchstaben oder unter Voranstellung des lokativen
1189 Präfixes der linken Klausel –, so entsteht ein Sammelbefehl.
1190
11914. Ergänzend werden die Einfügung eines Satzzeichens („... ein Komma eingefügt“)
1192 sowie die anker-voranstehende Einfügung („Nach der Angabe „...“ wird ...
1193 eingefügt“) als Muster aufgenommen.
1194
1195Der Stellenparser (StellenParser) wird dahin geändert, dass eine bloße Nummer oder
1196ein bloßer Buchstabe die Komponentenart der jeweils vorangehenden Stelle erbt
1197(„Absatz 1 und 5“).
1198
1199
1200Artikel 3
1201Erkennung von Bereichs-, Wortlaut- und Satzzeichenanweisungen
1202
12031. Der Stellenparser wird um die Entfaltung von bis“-Bereichen (ganzzahlig sowie
1204 für Einzelbuchstaben) und um die Pluralformen der Komponentenbezeichnungen
1205 (Absätze, Sätze, Nummern, Buchstaben) ergänzt.
1206
12072. Die Aufhebung wird auf bereichs- und koordinierte Angaben erstreckt („Die
1208 Nummern 1 bis 3 werden aufgehoben“, Die Absätze 4 und 5 werden aufgehoben“).
1209
12103. Die Bereichs-Umnummerierung wird auf Nummern und Buchstaben sowie auf die Form
1211 ohne zu den erstreckt („Die bisherigen Nummern 4 bis 6 werden die Nummern
1212 8 bis 10“); die Einzel-Umnummerierung wird auf Nummern und Buchstaben sowie auf
1213 die Einleitung Die bisherige erstreckt.
1214
12154. Die Neufassung eines Paragraphen-Bereichs („Die §§ 52 bis 56 werden wie folgt
1216 gefasst: ...“) wird durch Zerlegung des zitierten Blocks an den „§ N“-Grenzen
1217 erkannt.
1218
12195. Es wird der Befehl WortlautZuAbsatz eingeführt; die Anweisung Der Wortlaut
1220 wird Absatz N versieht den bislang unnummerierten Normtext mit der Absatznummer.
1221
12226. Die Ersetzung eines Wortes durch ein Satzzeichen („... das Wort oder am Ende
1223 durch ein Komma ersetzt“) sowie die zusammengesetzten Kommaformen werden erkannt.
1224
1225
1226Artikel 4
1227Aufnahme der Gliederungs- und Inhaltsübersichts-Anweisungen
1228
12291. Das Datenmodell wird wie folgt geändert:
1230 a) Die Gliederung (Gliederung) wird um die Gliederungskennzahl ergänzt.
1231 b) Das Gesetz (Gesetz) führt fortan die geordnete Liste der Gliederungs-
1232 einheiten mit; der Lader (GiiXmlLoader) erhebt diese aus dem gii-XML.
1233
12342. Die Stelle (Stelle) wird um die Komponenten Gliederungseinheit (Teil,
1235 Abschnitt, Unterabschnitt, Anlage und dergleichen) sowie Absatzbezeichnung
1236 ergänzt. Der Stellenparser erkennt diese Komponenten, ferner die Wendung
1237 „Überschrift von <Gliederung>“, und lässt die verfeinernden Zusätze Satzteil
1238 vor Nummer N und Angabe vor Nummer N außer Betracht.
1239
12403. Die Neufassung sowie die Streichung von Gliederungsberschriften werden auf den
1241 Gliederungsbaum angewandt und in der Synopse als gesonderter Abschnitt
1242 Geänderte Gliederungsberschriften dargestellt. Die Streichung einer
1243 Absatzbezeichnung entfernt die betreffende Absatznummer. Die die Inhaltsübersicht
1244 betreffenden Anweisungen („Die Angabe(n) zu ...“) werden erkannt.
1245
1246
1247Schlussbestimmung
1248
1249Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
1250(einhundertneunzehn an der Zahl) sowie durch die vollständige Erstellung (mvnw
1251verify) bestätigt worden. Nicht selbsttätig verarbeitbar bleiben einstweilen die
1252mehrquelligen Struktur-Ersetzungen, die Einfügung und Bereichsersetzung ganzer
1253Paragraphenfolgen (§§), die Neufassung von Satzbereichen sowie die stellenlosen
1254Chapeau-Anweisungen; diese werden dem Abschnitt Manuell prüfen zugewiesen. Die
1255Unterstützung des bayerischen Landesrechts bleibt einem späteren Zeitpunkt
1256vorbehalten.