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