blob: 88c3cc55bde81c18abe8f6a527d83b6cb0412387 [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 Benkardd10ce7c2026-08-23 08:32:31 +020024 Fassung vom 23. August 2026,
25 zuletzt geändert durch die am 23. August 2026 vorgenommenen Änderungen
26════════════════════════════════════════════════════════════════════════════════
27
28Das Erzeugnis steht seit seinem ersten Tage unter der GNU Affero General Public
29License; ausgesprochen war das indes nur an drei verstreuten Stellen — im
30Lizenzvolltext „COPYING“, in einem Satz des Impressums und in einer Bemerkung der
31Datei „.gitattributes“. Keine einzige Quelldatei nannte ihren Urheber oder ihre
32Lizenz. Wer eine Datei für sich betrachtete — und so betrachtet sie jeder, der
33sie übernimmt —, fand daran nichts.
34
35Erschwerend tritt die Eigenart dieses Erzeugnisses hinzu: Sein Prüfbestand
36besteht aus fünfundvierzig PDF-Dateien, fünf EPUB-Dateien und den XML-Fassungen
37fremder Werke, nämlich der Gesetzblätter, Drucksachen und Entwürfe des Bundes und
38der Länder. Deren Rechtsstellung — gemeinfrei nach § 5 UrhG, gleichwohl gebunden
39an Änderungsverbot und Quellenangabe nach §§ 62 und 63 UrhG — war bislang nur
40menschenlesbar in den „SOURCES“-Dateien niedergelegt. Sie ist nunmehr auch
41maschinenlesbar erfasst, und zwar nach Herkunft geschieden.
42
43Maßstab ist die REUSE-Spezifikation in der Fassung 3.3.
44
45
46Artikel 1
47Lizenzbezeichnung
48
49(1) Der eigene Quelltext steht fortan unter „AGPL-3.0-or-later“, also unter der
50 Version 3 der Lizenz oder, nach Wahl des Empfängers, einer späteren Fassung.
51 Bislang sprach das Impressum von der „Version 3“ ohne Nachfolgeklausel.
52
53(2) Die Angabe ist an allen Stellen dieselbe: im Impressum, im Fußzeilenverweis
54 der Startseite, in einem neu aufgenommenen „licenses“-Block der „pom.xml“ und
55 im Abschnitt „Lizenz“ des Handbuchs.
56
57
58Artikel 2
59Verzeichnis der Lizenztexte
60
61(1) Das Verzeichnis „LICENSES“ nimmt die Wortlaute auf: „AGPL-3.0-or-later.txt“,
62 „Apache-2.0.txt“ für den unverändert mitgelieferten Maven-Wrapper und
63 „LicenseRef-AmtlichesWerk.txt“.
64
65(2) „COPYING“ bleibt an seiner Stelle, tritt aber als symbolische Verknüpfung
66 auf. Der gewohnte Pfad trägt damit fort, ohne dass zwei Wortlaute
67 nebeneinander zu pflegen wären; die Prüfung übergeht Verknüpfungen, sodass
68 für den Lizenztext selbst keine sachfremde Lizenzangabe zu erfinden war.
69
70
71Artikel 3
72Amtliche Werke
73
74(1) „LICENSES/LicenseRef-AmtlichesWerk.txt“ bezeichnet keine erteilte Lizenz,
75 sondern hält die gesetzliche Rechtslage fest: die Gemeinfreiheit nach § 5
76 Abs. 1 UrhG für Verkündungsblätter, Drucksachen und Plenarprotokolle, nach
77 § 5 Abs. 2 UrhG für ministerielle Entwürfe und Synopsen, ferner das
78 fortbestehende Änderungsverbot und Gebot der Quellenangabe.
79
80(2) Ausdrücklich festgehalten ist, dass die technische Aufbereitung durch die
81 Rechtsportale kein eigenes Recht am Text begründet und dass der Prüfbestand
82 kein „Corresponding Source“ im Sinne der AGPL ist.
83
84(3) Maßgeblich für die Fundstelle der einzelnen Datei bleibt die Datei „SOURCES“
85 des jeweiligen Verzeichnisses; die Lizenzdatei nimmt sie in Bezug.
86
87
88Artikel 4
89Zuordnung im Einzelnen
90
91(1) Dateien mit Kommentarsyntax tragen ihre Angabe in sich: zwei Zeilen
92 „SPDX-FileCopyrightText“ und „SPDX-License-Identifier“ im jeweils üblichen
93 Stil, vor dem vorhandenen erläuternden Kommentar und ohne diesen anzutasten.
94 Bei „index.html“ und den übrigen Seiten steht sie hinter der Typangabe, bei
95 „webpaket.sh“ und „cloudflare.sh“ hinter der Aufrufzeile, bei den
96 AsciiDoc-Dateien innerhalb des Dokumentenkopfes.
97
98(2) Für Binärdateien, für JSON und für reinen Text ordnet „REUSE.toml“ zu. Der
99 Prüfbestand ist darin nach Herkunft geschieden: Bund (Verkündung und
100 Parlament), Bund (ministerielle Entwürfe), gesetze-im-internet.de nebst der
101 Aufbereitung durch die juris GmbH, sodann neun Länder je einzeln.
102
103(3) Die selbst abgeleiteten Textfassungen („*-alt.txt“) tragen „AGPL-3.0-or-later
104 AND LicenseRef-AmtlichesWerk“: Der Wortlaut ist amtlich, die Aufbereitung —
105 Einrückung, Superskript-Satznummern, Gliederungsüberschriften — eigene
106 Arbeit.
107
108(4) „mini-gii.xml“ und „.mvn/maven.config“ erhalten bewusst keine Kopfzeile,
109 sondern einen Eintrag in „REUSE.toml“: Ersteres liest der GiiXmlLoader,
110 Letzteres Maven vor jedem Bau, und beide sollen von der Auszeichnung
111 unberührt bleiben.
112
113
114Artikel 5
115Fortdauernde Prüfung
116
117(1) Spotless pflegt die Kopfzeilen der Java-Dateien („licenseHeader“). Der Lauf
118 von „spotless:check“ ist an die Phase „verify“ gebunden und hält den Bau an,
119 sobald eine Quelldatei ohne Kopfzeile oder ohne die vereinbarte Formatierung
120 hinzukommt.
121
122(2) Dabei hat sich ergeben, dass „src/wasm/java“ der Formatprüfung bislang
123 verborgen war: Das Verzeichnis tritt dem Quellbaum erst im Profil „wasm“ bei.
124 Die Quellverzeichnisse sind nunmehr ausdrücklich benannt; die beiden
125 Wasm-Klassen sind erstmals umformatiert worden.
126
127(3) Ein Ausrollwerkzeug hinterließ mit „.wrangler“ ein Zwischenverzeichnis im
128 Arbeitsbaum; es ist fortan übergangen.
129
130
131Artikel 6
132Nachweis
133
134(1) Die Prüfung meldet Konformität mit der Fassung 3.3 der Spezifikation:
135 einhundertvierundfünfzig von einhundertvierundfünfzig Dateien tragen Urheber-
136 und Lizenzangabe, keine Lizenz bleibt ungenutzt, keine fehlt.
137
138(2) Dreihundertfünfundzwanzig Testfälle bestehen unverändert; am Verhalten des
139 Erzeugnisses ändert sich nichts.
140
141(3) Das ausgelieferte Quelltextarchiv ist von sich aus konform, denn
142 „.gitattributes“ nimmt den Prüfbestand von ihm aus.
143
144
Matthias Andreas Benkard1db82012026-08-23 09:05:05 +0200145Artikel 7
146Gestaltung der Browserfassung
147
148Die Startseite trug bislang ein schmuckloses Kleid: Antiqua auf Weiß, eine
149Spalte, drei dünn gerahmte Kästen. Das war sauber, aber austauschbar; es sah aus
150wie ein Aufsatz und nicht wie das, was das Erzeugnis ist — eine Stelle, die
151Änderungsbefehle abarbeitet und darüber Rechenschaft ablegt. Die Gestaltung folgt
152fortan dem Vorbild des amtlichen Formblatts.
153
154(1) Der Satzspiegel tritt als Bogen auf einer Unterlage auf: umrandet, auf
155 sechsundvierzig Halbgevierten Breite, auf schmalen Geräten ohne Rand. An die
156 Stelle der Antiqua tritt eine Systemgroteske; Kennungen und Feldbezeichner
157 stehen in gesperrten Versalien.
158
159(2) Das Farbgerüst wird um „Papier“ (Unterlage), „Raster“ (Formularlinien),
160 „Kasten“ (Feldgrund) und „Amt“ ergänzt. Das Amtsrot führt das Auge zu den
161 Kennungen, den Feldziffern und dem Tastaturhalt; die bisherige Bedeutung von
162 Rot und Grün — warnen und bestätigen — bleibt unberührt, und keine Aussage
163 ruht auf der Farbe allein.
164
165(3) Der Kopf der Seiten ist ein Briefkopf: links die ausstellende Stelle mit
166 ihrer Langbezeichnung, rechts die Kennung des Vordrucks als Verzeichnis
167 („Formblatt ÄG-1“, „Vorgang“ oder „Anlage“, „Geltung: nichtamtlich“). Die
168 Kennung steht im Text und nicht im Stilblatt, damit sie sich auswählen und
169 vorlesen lässt; der Zusatz „nichtamtlich“ hält fest, dass die amtliche
170 Anmutung keine amtliche Herkunft behauptet. Darunter läuft die Doppellinie,
171 kräftig in Amtsrot über dünn in Rasterfarbe.
172
173(4) Das Formular wird zum Feldblock: „fieldset“ mit der Legende „Antrag auf
174 Erstellung einer Synopse“ als schwarzem Balken im oberen Rahmen, darin drei
175 gerahmte Felder. Ihre Ziffern entstehen aus einem Zähler des Stilblattes und
176 stehen im Steg links, sodass die Auszeichnung der Felder unangetastet bleibt.
177 Der Dateiwähler trägt über „::file-selector-button“ die Form des Knopfes in
178 der Umkehrung; der Absendeknopf erhält eine Prägekante und fährt beim Drücken
179 in seinen eigenen Schatten.
180
181(5) Der Hinweis für abgeschaltetes JavaScript und der Haftungsausschluss treten
182 als „aside“ mit eigener Überschrift („Hinweis“, „Haftungsausschluss“) auf;
183 ihr Wortlaut bleibt unverändert. Die Meldung führt ihr Zeichen nunmehr im
184 Steg mit — ✓ für die fertige, ! für die fehlgeschlagene Auswertung —, damit
185 der Zustand auch ohne Farbe erkennbar ist. Das Zeichen setzt das Stilblatt,
186 nicht der Text, weil die Textverarbeitung den Text ersetzt.
187
188(6) Neu hinzu treten zwei Dinge, die bisher gänzlich fehlten: eine sichtbare
189 Fokusanzeige für den Tastaturgang und ein Druckbild. Gedruckt entfallen
190 Unterlage, Bogenrand, Merkblatt und Knopf; die Linien stehen in Schwarz.
191
192(7) Das Zeichen der Seite (favicon.svg) übernimmt Rahmen und Schrift des neuen
193 Gerüstes.
194
195
196Artikel 8
197Unberührte Bestandteile
198
199(1) Sämtliche Angriffspunkte der Textverarbeitung bleiben wörtlich erhalten:
200 „#synopse-formular“, „#stamm“, „#aenderung“, „#vollstaendig“, „#meldung“
201 nebst den Zustandsklassen sowie der eine Knopf des Formulars. „app.js“,
202 „worker.js“ und der Java-Teil sind nicht angetastet.
203
204(2) Die von „HtmlRenderer“ erzeugte Synopse behält ihr eigenes Aussehen; ihre
205 Angleichung bleibt einem späteren Zeitpunkt vorbehalten.
206
207(3) Aufgenommen sind ferner die Beschreibungsverweise „aria-describedby“ auf die
208 Erläuterungssätze der Felder und die Ansage „aria-live“ für die Meldung, die
209 ihren Text bislang stumm wechselte.
210
211(4) Die Prüfung nach der REUSE-Spezifikation meldet unverändert
212 einhundertvierundfünfzig von einhundertvierundfünfzig Dateien; dreihundert-
213 fünfundzwanzig Testfälle bestehen fort.
214
215
Matthias Andreas Benkard18f85ce2026-08-23 09:26:19 +0200216Artikel 9
217Gestaltung der Synopse
218
219Mit Artikel 7 trug die Aufgabeseite das Gewand eines amtlichen Formblatts, das
220Erzeugnis aber noch sein altes: Antiqua auf Weiß, kein Briefkopf, kein Fußsteg,
221ein anders benanntes Farbgerüst. Wer das Formular ausfüllte und dann die Synopse
222öffnete, sah zwei Dokumente zweier Häuser. Sie treten fortan als Vorgang und
223Erzeugnis desselben Hauses auf: der Antrag als Formblatt ÄG-1, die darauf
224ergehende Synopse als Formblatt ÄG-2.
225
226(1) Das Farbgerüst des HtmlRenderers wird auf die Marken der Aufgabeseite
227 gebracht („--rand“ wird „--raster“, „--dezent“ wird „--muted“) und um
228 „--papier“, „--kasten“ und „--amt“ ergänzt. Dass es zweimal geführt wird,
229 ist unvermeidlich und nunmehr an beiden Stellen vermerkt: Die Synopse wird
230 aus einem blob:-Verweis geöffnet und im Befehlszeilenbetrieb als einzelne
231 Datei abgelegt; sie kann kein fremdes Stilblatt einbinden.
232
233(2) Die Schrift ist geteilt. Der Vordruck — Briefkopf, Kennung, Überschriften,
234 Spaltenköpfe, Kästchen, Fußsteg — steht in der Groteske, der Wortlaut der
235 Normen in der Antiqua. Amtskopf und Vorschrift sind zweierlei, im
236 Gesetzblatt wie hier.
237
238(3) Der Kopf trägt denselben Aufbau wie die Aufgabeseite: links die ausstellende
239 Stelle mit ihrer Langbezeichnung, rechts die Kennung („Formblatt ÄG-2“,
240 „Stammgesetz“, „Erstellt“, bei Entwürfen „Stand: Entwurfsfassung“, „Geltung:
241 nichtamtlich“), darunter die Doppellinie und der Vorspann mit Herkunft und
242 Statistik. Die Wendung „erstellt am … mit ÄndGgner“ wandert in den Fußsteg,
243 damit das Datum nicht zweimal dasteht.
244
245(4) Die beiden Felder des Spaltenkopfes treten als schwarze Balken auf wie die
246 Legende des Feldblocks; ebenso die Überschriften der Abschnitte „Geänderte
247 Gliederungs-Überschriften“ und „Manuell prüfen“.
248
249(5) Die alte Fassung liegt auf dem Kastenton wie ein Durchschlag, die neue auf
250 Bogenweiß. Beim Springen zwischen den Spalten ist damit ohne Hinsehen klar,
251 wo man steht; die Hinterlegungen der Änderungen heben sich von beiden
252 Gründen weiterhin ab.
253
254(6) Jede Norm trägt im Steg links eine Randziffer, wie der Vordruck die
255 Feldziffer. Sie entsteht aus einem Zähler des Stilblattes und macht die
256 Abschnitte überdies zitierbar.
257
258
259Artikel 10
260Drei Mängel, die dabei zutage traten
261
262(1) Der Spaltenkopf klebte (position: sticky) innerhalb des Kopfblocks. Sein
263 Klebebereich endete deshalb mit dem Vorspann, sodass er beim Blättern
264 alsbald verschwand. Er steht nunmehr mit der Gegenüberstellung in einem
265 eigenen Block: Der Bereich reicht über alle Normen und endet vor dem
266 Abschnitt „Manuell prüfen“, der keine Spalten hat.
267
268(2) Auf schmalen Geräten standen zwei Spalten Gesetzestext zu je einem Anteil
269 nebeneinander; lesbar war das nicht. Unterhalb von sechzig Halbgevierten
270 wird gestapelt, und da dort der Spaltenkopf nichts mehr trägt, beschriftet
271 sich jede Spalte selbst.
272
273(3) Die Druckblöcke beider Stilblätter setzten nur einen Teil des Farbgerüstes
274 zurück. Da „prefers-color-scheme“ im Druck fortgilt, wäre aus einem dunkel
275 eingestellten Browser heraus die alte Spalte als schwarzer Block aus dem
276 Drucker gekommen. Beide Blöcke setzen nunmehr sämtliche Marken.
277
278(4) Nachgewiesen an zwei wirklichen Läufen der Befehlszeilenfassung: dem
279 verkündeten Dritten Gesetz zur Änderung des UWG (19 Befehle, 0 manuell,
280 6 Normen) und dem Regierungsentwurf zum AGG (23 Befehle, 1 manuell,
281 14 Normen, Entwurfsfassung). Dreihundertsiebenundzwanzig Testfälle bestehen,
282 darunter zwei neue für Kennung, Fußsteg und Entwurfsausweis.
283
284
Matthias Andreas Benkard4c8dee72026-08-23 09:41:36 +0200285Artikel 11
286Berichtigung der Gestaltung nach dem Vorbild eines wirklichen Vordrucks
287
288Die Artikel 7 und 9 hatten sich am Begriff des amtlichen Formulars orientiert,
289nicht an einem solchen. Der Abgleich mit einem wirklichen Bundesvordruck — dem
290„Antrag auf Erteilung einer Bescheinigung für den Lohnsteuerabzug bei erweiterter
291unbeschränkter Einkommensteuerpflicht“ — hat ergeben, dass die bisherige Fassung
292in fast jedem Merkmal danebenlag. Sie wird berichtigt.
293
294(1) Maßgeblich ist eine einzige Regel, die im Muster sogar ausgeschrieben steht:
295 „Weiße Felder bitte ausfüllen“. Grau ist, was die Stelle gedruckt hat —
296 Beschriftungen, Leitspalten, Abschnittsköpfe, die Verfügung am Ende; weiß
297 ist, was der Antragsteller beiträgt. Bisher war es umgekehrt: weißer Bogen
298 mit blass getönten Kästen. Diese Regel trägt fortan die gesamte Gestaltung
299 und ist im Vordruck selbst benannt.
300
301(2) Schmuckfarbe entfällt ersatzlos. Das Amtsrot der Artikel 7 und 9 war
302 erfunden; wirkliche Bundesvordrucke führen keine. Rot und Grün treten allein
303 dort auf, wo sie etwas bedeuten: Fehler und Bestätigung in der Verfügung,
304 gestrichener und eingefügter Wortlaut in der Synopse.
305
306(3) Die Zellen stoßen aneinander, ohne Abstand und ohne Rundung, verbunden durch
307 schwarze Haarlinien. Die Rahmen sind halbiert — außen oben und links, an den
308 Zellen unten und rechts —, damit zwischen zwei Zellen eine einzige Linie
309 steht und nicht zwei.
310
311(4) Die Beschriftung steht klein im Feld oben links, die Erläuterung in noch
312 kleinerer Schrift in Klammern dahinter; darunter bleibt der Platz für die
313 Eintragung. Die fette Zeile über einem Eingabefeld nebst gesondertem
314 Hinweisabsatz entfällt.
315
316(5) Links läuft die Leitspalte mit den Abschnittsbezeichnungen („Angaben zum
317 Stammgesetz“, „Angaben zu den Änderungen“, „Antragstellung“). Auf schmalen
318 Geräten tritt sie über ihre Felder, als voller Beschriftungsstreifen — eine
319 Form, die das Muster ebenfalls kennt.
320
321(6) Das Ankreuzfeld ist ein Kästchen vor dem Text und wird angekreuzt, nicht
322 angehakt.
323
324(7) Der Abschnitt „Zur Beachtung:“ nimmt auf, was bisher über Tagline,
325 Haftungsabsatz und noscript-Kasten verstreut war.
326
327(8) Die Verfügung der Zentralstelle tritt an die Stelle der bloßen Meldung: ein
328 grau umrandeter Abschnitt mit zentrierter Überschrift, wie im Muster die
329 „Verfügung des Finanzamts“. Er steht auch dann schon da, wenn er noch leer
330 ist, und trägt dann den Vermerk, dass er nach Absenden ausgefüllt wird; ein
331 Vordruck zeigt seine Abschnitte, bevor sie ausgefüllt sind.
332
333(9) Die Kennung wandert aus dem gerahmten Verzeichnis oben rechts in die
334 Fußecken: links die Vordrucknummer, rechts der Ausgabestand, beide winzig
335 und ohne Zierrat. Impressum und Datenschutz führen ÄG-1/A und ÄG-1/B.
336
337(10) Die Schrift ist Arial in dreizehn Achteln eines Gevierts, die Beschriftungen
338 in elf; Sperrung und Versalien entfallen bis auf die Kästchen der Synopse.
339
340(11) Die Synopse folgt demselben Gerüst: Der Vorspann ist ein
341 Beschriftungsstreifen aus grauen Bezeichnungen und weißen Eintragungen, die
342 Spaltenköpfe und die Abschnittsüberschriften sind graue Streifen statt
343 schwarzer Balken, die Randziffer sitzt in einem Kästchen, und der Fußsteg
344 trägt Vordrucknummer und Ausgabestand in den Ecken.
345
346(12) Dabei ist ein weiterer Mangel behoben worden: Der Grund der Leitspalte hing
347 am Block und nicht an der Zelle; im Druck fällt die Fläche des Blocks weg,
348 sodass die Leitspalte weiß herausgekommen wäre. Das Grau ist keine Zier — es
349 sagt, welche Felder auszufüllen sind — und wird deshalb ausdrücklich
350 mitgedruckt.
351
352(13) Dreihundertsiebenundzwanzig Testfälle bestehen; die beiden Prüffälle des
353 Artikels 9 sind auf den neuen Vorspann umgestellt.
354
355
Matthias Andreas Benkardd10ce7c2026-08-23 08:32:31 +0200356════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard14ec52a2026-08-22 16:41:57 +0200357 Fassung vom 22. August 2026,
358 zuletzt geändert durch die am 22. August 2026 vorgenommenen Änderungen
359════════════════════════════════════════════════════════════════════════════════
360
361Zwei Mängel, die die vorangegangene Fassung aufgedeckt, aber nicht behoben hatte,
362wiegen schwerer als alles sonst Offene: Sie führen zu einem falschen Ergebnis,
363ohne es anzuzeigen. Ein Befehl gilt als angewandt, der Wortlaut des Zielgesetzes
364weicht gleichwohl von der amtlichen Nachfassung ab, und der Abschnitt „Manuell
365prüfen“ schweigt. Damit war das Leitprinzip des Erzeugnisses — niemals
366stillschweigend zu verwerfen — an dieser Stelle verfehlt.
367
368Bei ihrer Behebung hat sich ergeben, dass die beiden Mängel nicht nebeneinander
369standen, sondern eine Ursache teilten: die fehlende Einrückung. Sie ist im
370kanonischen Klartext nicht Schmuck, sondern trägt die Gliederung; wer sie
371verliert, verliert die Zugehörigkeit einer Zeile zu ihrer Einheit.
372
373
Matthias Andreas Benkard08c27472026-08-22 19:02:46 +0200374Erster Teil
375Behebung der festgehaltenen Mängel
376
377
Matthias Andreas Benkard14ec52a2026-08-22 16:41:57 +0200378Artikel 1
379Einrückung bei der Neufassung einer Aufzählungseinheit
380
381(1) Die Neufassung einer Nummer oder eines Buchstabens (BefehlAnwender.
382 wendeNeufassungAn) setzt den neuen Wortlaut fortan auf die Einrückung der
383 Einheit, an deren Stelle er tritt; bislang begann er in Spalte 0. Es gilt
384 damit dasselbe wie bei der Ersetzung einer solchen Einheit.
385
386(2) Der Grund ist folgender: Der Zeilenblock einer Aufzählungsmarke
387 (StellenAufloeser.zeilenBlock) reicht so weit, wie tiefer eingerückt wird.
388 Eine in Spalte 0 gesetzte Zeile nimmt daher den gesamten Rest des Absatzes
389 als ihre Kindzeilen an. Der nachfolgende Befehl „Nach Nr. 4 werden die
390 folgenden Nrn. 5 bis 7 eingefügt“ trat deshalb hinter die letzte Nummer des
391 Absatzes statt hinter die Nr. 4 — er galt als angewandt, stand aber falsch.
392
393(3) Die Neufassung eines Satzes oder Halbsatzes bleibt unberührt; ihr Bereich
394 beginnt mitten in der Zeile und trägt keine Einrückung.
395
396
397Artikel 2
398Heilung des Weißraums nach einer Streichung
399
400(1) Die Streichung von Wörtern (BefehlAnwender.wendeStreichungAn) heilte den
401 zurückbleibenden Weißraum bislang über den gesamten Zieltext; dieser ist bei
402 einer Stelle ohne Fein-Komponente der ganze Absatz. Sie fraß dabei die
403 Einrückung der Aufzählungszeilen: Aus den zwei Leerzeichen vor jeder Marke
404 wurde eines.
405
406(2) Geheilt wird fortan allein die Naht der Streichung (heileNaht): Aus zwei
407 Leerzeichen wird eines, vor einem Satzzeichen bleibt keines. Traf die
408 Streichung den Zeilenanfang, so ist der Weißraum vor der Naht Einrückung und
409 bleibt unangetastet.
410
411
412Artikel 3
413Weichen des leeren Platzhalters
414
415Vergibt ein eingefügter Block eine Bezeichnung, die ein leerer Platzhalter der
416Altfassung noch hält („7. (aufgehoben)“), so weicht dieser. Es ist dieselbe
417Regel, die schon bei der Umnummerierung auf eine weggefallene Bezeichnung gilt,
418und so zeigt es auch die amtliche Nachfassung. Verdrängt wird dabei nur ein
419Platzhalter, niemals ein Wortlaut; ein Platzhalter, den kein Befehl anrührt,
420bleibt stehen.
421
422
423Artikel 4
424Zwischenraum hinter der Aufzählungsmarke
425
426Im Satz des Gesetzblatts steht zwischen der Marke einer Aufzählungszeile und
427ihrem Text die Tabulatorspalte des Setzers. Der kanonische Klartext kennt dort
428ein einzelnes Leerzeichen. Die Aufbereitung eines Zitats (normalisiereZitatText)
429führt den Zwischenraum künftig auf dieses zurück; andernfalls trügen gerade die
430neu gesetzten Zeilen ein anderes Satzbild als die unberührten.
431
432
433Artikel 5
434Nachweis
435
436(1) Der Akzeptanztest des BayJG (EndToEndTest.bayJgGvblAcceptance) hielt die
437 beiden Mängel bislang ausdrücklich fest. Die betreffenden Zusicherungen
438 werden umgekehrt: Der eingefügte Block steht zwischen der Nr. 4 und der
439 Nr. 8, der Platzhalter ist gewichen, die Einrückung besteht fort.
440
441(2) Art. 56 Abs. 1 des Bayerischen Jagdgesetzes gleicht damit in Aufbau und
442 Wortlaut der amtlichen Nachfassung (BayJG.pdf); die Gegenprobe ist Zeile für
443 Zeile geführt worden.
444
445(3) Hinzu treten drei Prüfungen der zugrunde liegenden Regeln
446 (BefehlAnwenderTest). Der Gesamtbestand beträgt nunmehr 315 Prüfungen; keine
447 der gepinnten Zahlen der übrigen Belegfälle hat sich geändert.
448
449
Matthias Andreas Benkard08c27472026-08-22 19:02:46 +0200450Zweiter Teil
451Thüringen
452
453Mit der Mängelliste war die Arbeit wieder in die Breite zu führen. Von den seit
454Juli beschafften Gesetzblättern der Länder war eines nie angefasst worden: das
455Gesetz- und Verordnungsblatt für den Freistaat Thüringen. Es hat drei Befunde
456erbracht, die keineswegs thüringisch sind, sondern allgemein gelten, und einen
457Beschaffungsweg eröffnet, wo das Landesrechtportal versperrt ist.
458
459
460Artikel 6
461Gerade Anführungszeichen
462
463(1) Gerade Anführungszeichen (") wurden bislang ausnahmslos als schließende
464 gelesen (TextBereiniger.normalisiereAnfuehrungszeichen). Für das Bundes-
465 gesetzblatt und die Drucksachen trifft das zu; dort öffnet stets das
466 deutsche Zeichen, und ein gerades ist ein Satz- oder Extraktionsfehler.
467
468(2) Führt ein Text dagegen kein einziges öffnendes Zeichen („), so setzt er die
469 geraden beidseitig. Sie werden fortan paarweise gelesen: das erste öffnet,
470 das zweite schließt, und so fort. Bei ungerader Anzahl ist der Text
471 nachweislich unbalanciert; dann bleibt es bei der schließenden Lesart, und
472 es ergeht eine Warnung.
473
474(3) Ohne diese Unterscheidung fände der Zitatextraktor in einem so gesetzten
475 Blatt kein einziges Zitat; sämtliche Befehle des Heftes gingen verloren.
476
477(4) Eine Regel nach der Stellung des Zeichens (öffnend, wenn kein Leerzeichen
478 folgt) wäre untauglich: Das Thüringer Blatt führt Zitate, die mit einem
479 Leerzeichen beginnen, und umgekehrt schließende Zeichen, die unmittelbar am
480 Folgewort kleben.
481
482
483Artikel 7
484Bereichsweise Umnummerierung von Paragraphen
485
486(1) Der Befehl „Die bisherigen §§ 9 bis 12 werden die §§ 8 bis 10“ nennt vier
487 Ausgangs- und drei Zielbezeichnungen. Das ist kein Widerspruch: Der Bereich
488 nennt Bezeichnungen, gezählt werden aber Einheiten, und ein aufgehobener
489 Platzhalter darin ist keine Einheit — er trägt keinen Inhalt.
490
491(2) Welche Einheiten ein Bereich trägt, weiß erst das Gesetz. Ein solcher Befehl
492 bleibt deshalb bis zur Anwendung ungeteilt (Aenderungsbefehl.
493 BereichsUmnummerierung) und wird dort entfaltet (BefehlAnwender.
494 entfalteBereiche): Die vorhandenen Einheiten des Bereichs werden der Reihe
495 nach den neuen Bezeichnungen zugeordnet. Geht die Zählung auch dann nicht
496 auf, bleibt der Befehl manuell zu prüfen — mit Angabe des Grundes.
497
498(3) Geht die Zählung der Bezeichnungen schon im Wortlaut auf, so bleibt es bei
499 der bisherigen paarweisen Zuordnung.
500
501
502Artikel 8
503Weitere Befehlsformen und Satzbefunde
504
505(1) Die Verweisung tritt als Gegenstand einer Wortoperation neben Wort, Wörter,
506 Angabe und Zahl (BefehlErkenner): „In Satz 2 wird die Verweisung „X“ durch
507 die Verweisung „Y“ ersetzt.“
508
509(2) Der Rahmen einer Umnummerierung darf sich auf eine Untereinheit der
510 umnummerierten Einheit verengen: „Der bisherige § 8 wird § 7 und Absatz 1
511 wird wie folgt geändert:“. Die Unterpunkte meinen dann diesen Absatz des neu
512 bezeichneten Paragraphen.
513
514(3) Die Bereichs-Neufassung („Die §§ 1 bis 3 erhalten folgende Fassung:“) wird
515 fortan allein an den Bezeichnungen des angekündigten Bereichs geteilt, nicht
516 mehr an jedem Paragraphenzeichen des Zitats. Der neue Wortlaut zitiert
517 reihenweise andere Vorschriften; an diesen zu schneiden erfand Normen, die es
518 nicht gibt. Nennt der Bereich einen Normkopf, den das Zitat nicht führt, so
519 sagen Ankündigung und Wortlaut Verschiedenes — dann wird nicht geraten.
520
521(4) Ob ein Trennstrich vor einem Großbuchstaben eine Silbentrennung war,
522 entscheidet fortan der Wortbestand des Dokuments (TextBereiniger.
523 warTrennung): Trägt es das Wort auch ohne Strich, so war es eine Trennung.
524 Der Satz trennt auch binnengroßgeschriebene Kürzel („Thür-“ + „KigaG“),
525 während echte Bindestriche („Ton-Bild-Übertragung“) unangetastet bleiben.
526
527(5) Die Überschrift einer zitierten Neufassung darf über mehrere Zeilen laufen
528 (BefehlAnwender.parseNorm); fortgesetzt wird sie über klein beginnende
529 Zeilen. Steht sie in derselben Zeile wie die Bezeichnung, so gehört sie in
530 den Titel und nicht zusätzlich in den Normtext.
531
532(6) Der laufende Kolumnentitel und der Seitenfuß des Thüringer Blattes werden
533 entfernt (TextBereiniger). Sie stehen im Inhaltsstrom mitten im Text und
534 zerschneiden sogar getrennte Wörter; sie sind daher herauszuschneiden und
535 nicht als eigene Zeile zu entfernen.
536
537
538Artikel 9
539Belegfall Thüringen
540
541(1) Aufgenommen wird die Vierte Verordnung zur Änderung der Thüringer
542 Kindergartenfinanzierungsverordnung (GVBl. Nr. 2/2026 S. 77) als voller
543 Akzeptanzfall (EndToEndTest.thuerKiGaFinVOAendVO): zehn Befehle, kein Rest.
544
545(2) Die Stammfassung (Thueringen/ThuerKigaFinVO-alt.txt) ist aus vier
546 Gesetzblättern zusammengesetzt, da das Landesrechtportal Thüringens dieselbe
547 anmeldepflichtige Anwendung ist wie die Portale Schleswig-Holsteins, Berlins,
548 Baden-Württembergs und Hessens. Die Hefte gibt die Parlamentsdatenbank des
549 Landtags frei aus, der das Blatt herausgibt. Herkunft und Aufbereitung sind
550 in Thueringen/SOURCES niedergelegt.
551
552(3) Der Gesamtbestand beträgt nunmehr 325 Prüfungen; keine der gepinnten Zahlen
553 der übrigen Belegfälle hat sich geändert.
554
555
Matthias Andreas Benkard14ec52a2026-08-22 16:41:57 +0200556════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +0200557 Fassung vom 16. August 2026,
558 zuletzt geändert durch die am 16. August 2026 vorgenommenen Änderungen
559════════════════════════════════════════════════════════════════════════════════
560
561Die Browserfassung war bislang für den öffentlichen Betrieb gesperrt: Die
562Anbieterkennzeichnung und die Datenschutzerklärung führten Platzhalter, und der
563Verweis auf den Quelltext, den die Lizenz des Erzeugnisses beim Netzbetrieb
564verlangt, zeigte auf keine Adresse. Mit dieser Fassung wird die Sperre
565aufgehoben; zugleich wird die Auslieferung auf den Betrieb unter einem Unterpfad
566einer bestehenden Domain eingerichtet.
567
Matthias Andreas Benkard06da70e2026-08-16 07:34:12 +0200568Die nunmehr öffentlich erreichbare Startseite setzte sodann voraus, was
569Neuankömmlinge gerade nicht haben: geeignete Dateien. Sie erhält deshalb eine
570Einführung mit Verweisen auf zwei durchgerechnete Fälle. Dabei hat sich ergeben,
571dass die Fundstelle des Bundesrechts das Norm-XML ausschließlich als Archiv
572ausgibt; ohne dessen Auspacken bliebe die Einführung eine Anleitung zum
573Zwischenschritt von Hand.
574
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200575Endlich wird das Erscheinungsbild demjenigen angeglichen, was das Erzeugnis
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200576darstellt: Es tritt fortan schwarzweiß auf wie ein Gesetzblatt. Farbe verbleibt,
577wo sie eine Aussage trägt — im Diff und an den Balken der Hinweiskästen —, und
578bedeutet dort überall dasselbe. Bei der Erprobung einer gänzlich farblosen
579Fassung hat sich ergeben, dass die Farbe im Diff nicht bloß schmückte, sondern
580allein trug; das hat einen Mangel der Auszeichnung offengelegt, der nunmehr auch
581neben der wiederhergestellten Farbe behoben bleibt.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200582
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +0200583
584Artikel 1
585Anbieterkennzeichnung und Datenschutzerklärung
586
587(1) Die Anbieterkennzeichnung (impressum.html) wird mit den Angaben nach § 5 DDG
588 versehen; hinzu treten die Bezeichnung des nach § 18 Abs. 2 MStV
589 Verantwortlichen sowie ein Hinweis darauf, dass der Dienst unentgeltlich und
590 nichtkommerziell erbracht wird und die Synopsen ohne Gewähr ergehen.
591
592(2) Die Datenschutzerklärung (datenschutz.html) wird um die Bezeichnung des
593 Verantwortlichen (Art. 4 Nr. 7 DSGVO) und um die Rechte der betroffenen
594 Personen (Art. 15 bis 21, Art. 77 DSGVO) ergänzt. Für die Zugriffsprotokolle
595 werden die Rechtsgrundlage (Art. 6 Abs. 1 lit. f DSGVO) und die
596 Aufbewahrungsfrist (vierzehn Tage) benannt.
597
598(3) Die Aussage über die Dateien der Nutzer:innen bleibt unverändert; sie trifft
599 zu, weil die Verarbeitung ausschließlich im Browser stattfindet.
600
601
602Artikel 2
603Beilegung des Quelltextes
604
605(1) Es wird das Skript deploy/webpaket.sh eingeführt. Es tritt in der Phase
606 „package“ des Profils -Pwasm hinter den Übersetzer und macht aus dessen
607 Ergebnis ein auslieferbares Verzeichnis:
608 a) Der Textzwischenschritt (aendggner.js.wat) wird entfernt.
609 b) Der Quelltext der gebauten Fassung wird als aendggner-quelltext.tar.gz
610 nebst der Kennung der Fassung (quelltext-fassung.txt) beigelegt.
611 c) Die großen Dateien werden nach .gz und .br vorkomprimiert.
612
613(2) Trägt der Arbeitsbaum uneingecheckte Änderungen, so bricht der Bau ab. Der
614 Grund ist folgender: Der beigelegte Quelltext wäre alsdann nicht derjenige
615 der ausgelieferten Fassung, und die Auflage des § 13 AGPLv3 wäre verfehlt.
616 Für Probeläufe kann die Prüfung durch QUELLTEXT_UNGEPRUEFT=1 abbedungen
617 werden.
618
619(3) Der Fuß der Startseite (index.html) verweist fortan auf den beigelegten
620 Quelltext; die fortlaufende Quelle wird als Zweitverweis daneben genannt.
621
622
623Artikel 3
624Auslieferungsvorlage
625
626Die Vorlage (deploy/nginx-aendggner.conf) wird vom eigenen server-Block auf ein
627location-Schnipsel umgestellt, das in den bestehenden Server eingefügt wird. Sie
628wird wie folgt geändert:
629
6301. Aufgenommen wird die Weiterleitung des Pfades ohne abschließenden
631 Schrägstrich; ohne sie zielten sämtliche relativen Verweise der Seite auf die
632 Wurzel der Domain.
633
6342. Die Dateien werden über „root“ statt über „alias“ zugeordnet, weil try_files
635 in einer Präfix-Location gegen den root auflöst und mit alias fehlgeht.
636
6373. Die Haltefrist von sieben Tagen entfällt und wird durch Revalidierung
638 ersetzt. Der Grund ist folgender: Die Dateinamen tragen keine
639 Fassungskennung; ein Browser mit altem Steuerskript und neuem Rechenwerk
640 erhielte sonst eine Mischfassung, die es nie gegeben hat.
641
6424. Die vorkomprimierten Dateien werden ausgeliefert, statt das Rechenwerk je
643 Abruf neu zu packen.
644
6455. Aufgenommen werden die Sicherheitskopfzeilen nebst einer Inhaltsrichtlinie.
646 Zwei ihrer Freigaben sind unvermeidlich und in der Vorlage begründet:
647 diejenige für die Instanziierung des Moduls und diejenige für eingebettete
648 Stile, weil die Synopse als blob:-Dokument die Richtlinie der erzeugenden
649 Seite erbt, ihr Stylesheet aber eingebettet trägt.
650
651
652Artikel 4
653Ergänzungen der Oberfläche
654
6551. Die Startseite erhält einen Hinweis für den Fall abgeschalteten JavaScripts;
656 bislang blieb das Formular alsdann wortlos wirkungslos.
657
6582. Es wird ein Sinnbild (favicon.svg) eingeführt und in allen Seiten relativ
659 verwiesen; unter einem Unterpfad griffe der Abruf der Wurzel ins Leere.
660
6613. Die Startseite erhält eine Kurzbeschreibung und die Angabe ihrer kanonischen
662 Adresse; das Stilblatt wird um die Auszeichnung der Überschriften zweiter
663 Ordnung, der Anschriften und der Hinweise ergänzt.
664
665
Matthias Andreas Benkard06da70e2026-08-16 07:34:12 +0200666Artikel 5
667Annahme von Archiven als Stammgesetz
668
669(1) Die Fundstelle des Bundesrechts (gesetze-im-internet.de) gibt das Norm-XML
670 nicht als solches, sondern allein als Archiv aus (…/<Kurzbezeichnung>/
671 xml.zip). Ein solches Archiv wird künftig unmittelbar als Stammgesetz
672 angenommen; der darin enthaltene XML-Eintrag wird ausgepackt.
673
674(2) Es wird die Klasse ZipAuspacker eingeführt. Sie liest das Zentralverzeichnis
675 am Dateiende — nicht die örtlichen Vorspanne, deren Größenangaben bei
676 nachgestellten Beschreibern erst hinter den Daten stehen —, wählt daraus den
677 einzigen auf „.xml“ endenden Eintrag und packt ihn aus. Verzeichniseinträge
678 und das von manchen Betriebssystemen beigefügte Beiwerk bleiben außer
679 Betracht; die Auswahl ist erforderlich, weil die Fundstelle den Gesetzen mit
680 Anlagen deren Bilddateien mit ins Archiv legt.
681
682(3) Das Format wird von Hand gelesen. Der Grund ist folgender: Von den
683 Archivklassen der Laufzeitumgebung trägt in der Browserfassung allein der
684 Entpacker (Inflater), den die Ersetzung InflaterErsatz auf eine reine
685 Java-Umsetzung zurückführt; die übrigen (ZipInputStream, ZipFile, CRC32)
686 beruhen auf Bindungen, die das Übersetzungswerkzeug nicht kennt. Auch die
687 Prüfsumme wird deshalb im Erzeugnis selbst berechnet.
688
689(4) Die Erkennung (DateiTyp) wird um die Art ZIP ergänzt. Ihre Prüfung geht der
690 Prüfung auf PDF voran, weil sie am ersten Byte verankert ist, während jene
691 ein Vorschaufenster durchsucht; ein Archiv mit der Zeichenfolge „%PDF-“ in
692 seinen gepackten Daten wäre sonst als PDF angesprochen worden.
693
694(5) Das Auspacken tritt in Pipeline.ladeStammgesetz vor die Erkennung. Die
695 Änderungsdokumente bleiben unberührt: Gesetzblätter und Drucksachen kommen
696 nirgends als Archiv. Die Quellenzeile der Synopse nennt weiterhin die
697 angegebene Datei (xml.zip), damit der Weg zur Fundstelle zurück erkennbar
698 bleibt.
699
700
701Artikel 6
702Einführung in der Browserfassung
703
704(1) Die Startseite erhält über dem Formular einen zugeklappten Block
705 („Noch keine Dateien? Zwei Beispiele zum Ausprobieren“). Zugeklappt nimmt er
706 eine Zeile ein; das Formular bleibt an seinem Platz.
707
708(2) Der Block nennt die drei Schritte und bietet zwei Fälle mit Verweisen auf die
709 amtlichen Fundstellen an:
710 a) ein verkündetes Änderungsgesetz — das Gesetz gegen den unlauteren
711 Wettbewerb nebst dem Dritten Gesetz zu seiner Änderung (BGBl. 2026 I
712 Nr. 43), neunzehn Befehle an sechs Normen, nichts manuell zu prüfen;
713 b) einen Gesetzentwurf — das Allgemeine Gleichbehandlungsgesetz nebst dem
714 Regierungsentwurf BT-Drs. 21/6178, dreiundzwanzig Befehle an vierzehn
715 Normen, einer zur manuellen Prüfung markiert.
716
717(3) Mitausgeliefert wird nichts; die Seite ruft von sich aus nichts ab. Die
718 Verweise öffnen ein eigenes Fenster, weil ein im selben Fenster geöffnetes
719 Schriftstück die bereits gewählten Dateien aus dem Formular nähme.
720
721(4) Der Hinweis am Feld „Stammgesetz“ nennt nunmehr auch das Archiv. Das
722 Stilblatt wird um die Auszeichnung des Blockes ergänzt; neue Farben treten
723 nicht hinzu, sodass Hell- und Dunkelfassung ohne Zutun stimmen.
724
725
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200726Artikel 7
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200727Gestaltung
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200728
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200729(1) Das Stilblatt der Seiten (style.css) wird auf Schwarzweiß umgestellt. Die
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200730 bisherige Schmuckfarbe — ein warmes Braun — entfällt ersatzlos; an ihre Stelle
731 tritt die Textfarbe. Die Abrundung der Kästen, Felder und Knöpfe entfällt
732 gleichfalls; gedrucktes Papier trägt keine runden Ecken.
733
734(2) Weil die Schmuckfarbe bislang kenntlich machte, was anklickbar ist, werden die
735 Verweise fortan unterstrichen. Der Knopf kehrt beim Überfahren Grund und
736 Schrift um; die bisherige Aufhellung wäre an einem schwarzen Knopf ohne
737 Wirkung geblieben.
738
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200739(3) Farbe verbleibt allein dort, wo sie eine Aussage trägt, und bedeutet überall
740 dasselbe: Rot warnt, Grün bestätigt. Die Hinweiskästen erhalten dazu einen
741 Balken am linken Rand — der Hinweis bei abgeschaltetem JavaScript und die
742 Fehlermeldung einen roten, die Fertigmeldung einen grünen, die Meldung
743 während der Arbeit einen grauen, weil noch nichts feststeht. Die
744 Beschriftungen bleiben, wie sie waren, und benennen den Zustand ohnehin; der
745 Balken hebt den Kasten hervor, er trägt nicht allein.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200746
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200747(4) Das eingebettete Stilblatt der Synopse (HtmlRenderer) behält die Scheidung von
748 Streichung und Einfügung nach Rot und Grün; sie ist am Bildschirm die
749 schnellste. Zu ihr tritt jedoch die Form — durchgestrichen gegen
750 unterstrichen —, dazu die Spalte, in der die Marke steht.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200751
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200752(5) Damit wird ein Mangel behoben: Die Einfügung hob die ihr vom Browser
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200753 zugedachte Unterstreichung bisher ausdrücklich auf. Damit war der grüne Grund
754 das einzige Merkmal, an dem sie zu erkennen war; wer Farben nicht oder anders
755 wahrnimmt oder die Synopse schwarzweiß ausdruckte, sah eine Einfügung
756 überhaupt nicht. Die Unterstreichung wird wiederhergestellt.
757
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200758(6) Die Abzeichen an den Normköpfen behalten ihre Farben nach derselben Regel,
759 werden aber in Versalien mit Sperrung gesetzt. Sie sind ohnehin beschriftet;
760 die Farbe bestätigt dort nur, was dasteht.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200761
762(7) Dem Körper der Synopse werden Schrift- und Grundfarbe ausdrücklich zugewiesen.
763 Der klebende Spaltenkopf übernahm seinen Grund bisher durch Vererbung und
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200764 hatte mithin keinen verlässlichen. Für den Druck werden die farbigen Flächen
765 von der Sparschaltung der Browser ausgenommen, damit sie nicht fortfallen.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200766
767(8) Das Tabellenzeichen (favicon.svg) wird nachgezogen. Es führt die Werte
768 ausgeschrieben, weil ein Tabellenzeichen keine Stilblattgrößen erbt.
769
770
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +0200771Schlussbestimmung
772
773Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
Matthias Andreas Benkard06da70e2026-08-16 07:34:12 +0200774(dreihundertzwölf an der Zahl, darunter acht neue zum Auspacken) bestätigt
775worden. Das Auspacken ist überdies gegen die Fundstelle selbst erprobt worden:
776Das unmittelbar bezogene Archiv des Gesetzes gegen den unlauteren Wettbewerb
777ergibt mit dem Regelungstext des Bundesgesetzblattes dieselbe Synopse wie die
778entpackte Fassung — die Ausfertigungen unterscheiden sich allein in der
779Quellenzeile. Die Inhaltsrichtlinie ist gegen
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +0200780die laufende Anwendung erprobt worden: Der Lauf des IfSG-Falles im Browser hat
781unter ihr achtundvierzig angewandte Befehle, siebenundzwanzig zur manuellen
782Prüfung und einundzwanzig geänderte Normen ergeben, mithin dasselbe wie die
783Befehlszeile, und keine Beanstandung hinterlassen; die Erforderlichkeit der
784Freigabe für eingebettete Stile ist dadurch belegt, dass die Synopse ohne sie
785unformatiert erscheint.
786
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200787Die Umstellung des Erscheinungsbildes ist in Augenschein genommen worden, und
788zwar in Hell- und in Dunkelfassung: die Startseite nebst den drei Zuständen der
789Meldung, die Anbieterkennzeichnung sowie eine über die Befehlszeile erzeugte
790Synopse des Gebäudeenergiegesetzes (achtundsechzig angewandte Befehle,
791einundfünfzig zur manuellen Prüfung, siebenundvierzig geänderte Normen, mithin
792dasselbe wie zuvor). Streichung, Einfügung und die drei Abzeichen sind dabei
Matthias Andreas Benkard75583b22026-08-16 10:57:26 +0200793auch dann auseinanderzuhalten, wenn man von ihren Farben absieht.
Matthias Andreas Benkard13c71c52026-08-16 10:12:01 +0200794
Matthias Andreas Benkard2d33bf72026-08-16 06:40:07 +0200795
796════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard74a84c52026-08-16 06:08:42 +0200797 Fassung vom 15. August 2026,
798 zuletzt geändert durch die am 15. August 2026 vorgenommenen Änderungen
799════════════════════════════════════════════════════════════════════════════════
800
801Das Erzeugnis hat die mehrschrittige Umnummerierungssequenz bislang als eine ihm
802wesenseigene Grenze behandelt und ihre Folgeänderungen dem Abschnitt „Manuell
803prüfen“ zugewiesen. Die Prüfung des bayerischen Belegfalls (Art. 56 des
804Bayerischen Jagdgesetzes, Neunummerierung des Bußgeldkatalogs durch § 1 Nr. 48
805des Gesetzes vom 31. März 2026) hat ergeben, dass es sich um keine Grenze der
806Sache, sondern um drei voneinander unabhängige Mängel gehandelt hat. Sie werden
807mit dieser Fassung behoben.
808
809
810Artikel 1
811Ordnung der Anwendung nach Schritten
812
813(1) Der Anwender (BefehlAnwender) faltet die Befehlsliste vor der Anwendung zu
814 einer Liste von Schritten auf; ein Verbund (Sammelbefehl) liefert je
815 Teilbefehl einen Schritt, jeder andere Befehl einen einzigen. Geordnet
816 werden fortan die Schritte, protokolliert wird unverändert je Befehl.
817
818(2) Der Grund der Trennung ist folgender: Ein Verbund aus einer Umnummerierung
819 und einer Begleitänderung trägt zwei gegenläufige zeitliche Ansprüche. Die
820 Umnummerierung gehört vor denjenigen Befehl, der ihre Bezeichnung neu
821 besetzt; die Begleitänderung gehört an ihre Stelle im Dokument, denn sie
822 setzt die vorangegangenen Punkte als vollzogen voraus. Bislang setzte sich
823 der erste Anspruch für die ganze Einheit durch und zog die Begleitänderung
824 mit sich; sie traf dann auf einen Stand, den das Änderungsgesetz nicht
825 voraussetzt.
826
827(3) Die Ordnungsregel selbst bleibt unverändert („wer eine Bezeichnung räumt,
828 kommt vor demjenigen, der sie neu besetzt“), wird aber nunmehr vollständig
829 durchgesetzt: Vor jedem Schritt laufen erst diejenigen Schritte, die ihm
830 eine Bezeichnung räumen, und vor diesen wiederum die ihren. Eine ringförmige
831 Abhängigkeit bricht ab; die beteiligten Schritte behalten dann ihre
832 Dokumentreihenfolge.
833
834
835Artikel 2
836Erkennung der abgekürzten lokativen Folgeklausel
837
838Das Muster der lokativen Klausel (BefehlErkenner) schloss mit einer Wortgrenze.
839Hinter einem abgekürzten Bezeichnungswort steht jedoch bereits der
840Abkürzungspunkt, und zwischen ihm und dem folgenden Leerzeichen liegt keine
841Wortgrenze; der Klausel entging deshalb jede Kurzform („in Abs. 2 …“, „in
842Buchst. b …“). An die Stelle der Wortgrenze tritt die Bedingung, dass kein
843Buchstabe folgt.
844
845
846Artikel 3
847Auflösung der Aufzählungseinheit ohne eigenen Text
848
849Der Stellenaufloeser (StellenAufloeser) verlangte hinter der Aufzählungsmarke
850Text auf derselben Zeile. Eine Einheit, die sich vollständig in ihre
851Untergliederung ergießt, führt ihre Marke aber allein auf der Zeile (Art. 56
852Abs. 2 Nr. 12 des Bayerischen Jagdgesetzes, darunter nur die Buchstaben a und
853b); sie galt deshalb als nicht auffindbar. Der Text hinter der Marke ist fortan
854wahlfrei.
855
856
857Schlussbestimmung
858
859(1) Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
860 (dreihundertvier an der Zahl) sowie durch die vollständige Erstellung
861 (mvnw verify) bestätigt worden.
862
863(2) Der bayerische Belegfall weist nunmehr sämtliche einhundertvierundfünfzig
864 Anweisungen als angewandt aus (zuvor einhunderteinundfünfzig); die
865 Ausschussfassung der Beschlussempfehlung zum Gebäudeenergiegesetz weist
866 achtundsechzig statt siebenundsechzig aus. Die übrigen Bezugszahlen des
867 Bundes und der Länder sind unverändert geblieben.
868
869(3) Nicht behoben ist die Stellung eines eingefügten Blocks: Die Anweisung „Nach
870 Nr. 4 werden die folgenden Nrn. 5 bis 7 eingefügt“ (Art. 56 Abs. 1 des
871 Bayerischen Jagdgesetzes) wird angewandt, ihr Block tritt aber an das Ende
872 des Absatzes statt hinter die Nummer 4; ebenso verbleibt der leere
873 Platzhalter „7. (aufgehoben)“ der Altfassung zwischen den Nummern 9 und 10.
874 Beides bestand schon vor dieser Fassung und ist im Belegfall festgehalten.
875
876(4) Ferner ist festgehalten: Die Heilung doppelter Leerzeichen nach einer
877 Streichung (BefehlAnwender) wirkt auf den gesamten Zieltext und verkürzt
878 dabei die Einrückung der Aufzählungszeilen. Auch dies bestand schon zuvor.
879
880
881════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard7235b342026-08-14 18:58:25 +0200882 Fassung vom 14. August 2026,
883 zuletzt geändert durch die am 14. August 2026 vorgenommenen Änderungen
884════════════════════════════════════════════════════════════════════════════════
885
886Das Erzeugnis nimmt bislang zwei Sorten von Änderungsdokumenten entgegen und
887behandelt sie gleich: verkündete Artikelgesetze und Gesetzentwürfe. Damit fehlt
888ihm die zweite Hälfte des Gesetzgebungsverfahrens — die Dokumente, die einen
889Entwurf ändern statt ein Gesetz. Diese Fassung führt den Begriff der Dokumentart
890ein, wendet Änderungsanträge auf den Entwurf an, auf den sie zielen, und trennt
891die Spalten einer Zusammenstellung.
892
893
894Artikel 1
895Erkennung der Dokumentart
896
897(1) Die Art eines Änderungsdokuments wird nunmehr aus seinem Kopf erschlossen
898(DokumentErkenner, DokumentArt, DokumentKopf). Unterschieden werden das
899verkündete Artikelgesetz, der Gesetzentwurf, der Änderungsantrag, die
900Beschlussempfehlung sowie das Dokument ohne Änderungsbefehle
901(Entschließungsantrag, schlichter Antrag, Plenarprotokoll, Bericht).
902
903(2) Maßgeblich ist allein der Text; der Dateiname bleibt außer Betracht. Die
904Beispieldaten belegen die Notwendigkeit: Die Datei mit dem Namen
905„BT-Drs-21-7071_Beschlussempfehlung.pdf“ enthält einen Entschließungsantrag.
906
907(3) Die Erkennung arbeitet auf dem unbereinigten Extraktionstext, da der
908Textbereiniger gerade diejenigen Drucksachenköpfe entfernt, aus denen Art und
909Nummer hervorgehen. Erfasst werden dabei auch die eigene Drucksachennummer und
910die Nummern der in Bezug genommenen Drucksachen.
911
912(4) Ein Dokument ohne Änderungsbefehle wird übergangen und in der Synopse
913gemeldet; bisher führte es stillschweigend zu keinem Befehl.
914
915(5) Ist an einer Synopse ein Entwurf, ein Antrag oder eine Beschlussempfehlung
916beteiligt, so trägt sie den Hinweis, dass sie eine Entwurfsfassung und nicht
917geltendes Recht zeigt (HtmlRenderer). Die Quellenzeile nennt je Datei die
918erkannte Art.
919
920(6) Die Grenze des Begründungsteils wird für Entwürfe und Anträge um die dort
921üblichen Überschriften erweitert („A. Allgemeiner Teil“, „Zu Artikel 1“); für
922verkündete Gesetze bleibt es bei der schlichten Marke, damit ein Gesetzblatt
923nicht an einem gleichlautenden Wort abbricht (AenderungsgesetzParser).
924
925
926Artikel 2
927Änderungsanträge
928
929(1) Ein Änderungsantrag ändert nicht das Stammgesetz, sondern eine Drucksache.
930Sein Rahmensatz benennt daher zwei Ebenen zugleich: die Stelle in der Drucksache
931und die Stelle in dem Text, den der dort stehende Befehl zitiert. Beide werden
932gesondert geführt (AenderungsantragParser mit den Sätzen DrucksachenStelle und
933MetaBefehl); die Drucksachenstelle wird bewusst nicht als Stelle modelliert, da
934diese eine Fundstelle im Gesetz bezeichnet und ein anderes Bezugssystem meint.
935
936(2) Die Befehle werden auf den Lineartext des Entwurfs angewandt
937(EntwurfsPatcher). Der Gesetzesanwender bleibt unberührt: Ein Entwurf ist kein
938Gesetz, sondern eine Folge von Befehlen, deren Zitate erst künftig Gesetz werden
939sollen; der Antrag greift in eben diese Zitate ein.
940
941(3) Bei der Suche nach der Drucksachenstelle werden die Zitate zeichengleich
942ausgeblendet. Andernfalls gälten die Aufzählungen des zitierten Gesetzestextes
943(„1. Haarwild:“) als Gliederungspunkte der Drucksache und ließen den gesuchten
944Punkt vorzeitig enden.
945
946(4) Welcher Entwurf gemeint ist, entscheidet die vom Antrag genannte
947Drucksachennummer, nicht die Reihenfolge der Argumente (Pipeline). Fehlt der
948Entwurf, bleibt der Antrag unangewandt und wird gemeldet; eine ersatzweise
949Anwendung auf das Stammgesetz unterbleibt, da die Stellenangaben auf die
950Drucksache zielen.
951
952(5) Erkannt wird die elliptische Antragsform, die das Hilfsverb nur einmal in
953der Beschlussformel führt („In Nr. 1.29 die Angabe „,“ am Ende durch die Angabe
954„;“ ersetzt.“). Das fehlende Hilfsverb wird an der Stelle ergänzt, an der es im
955vollständigen Satz stünde (BefehlErkenner).
956
957(6) Das allgemeine Ersetzungsmuster lässt nunmehr den Zusatz „am Ende“ zwischen
958Ziel und „durch“ zu und führt ihn als solchen. Bisher kannte diesen Zusatz nur
959das Muster für Satzzeichen.
960
961(7) Der Stellenparser nimmt gestufte Nummern an („Nr. 1.29“), wie sie in
962dezimal durchgezählten Listen vorkommen.
963
964
965Artikel 3
966Zusammenstellung einer Beschlussempfehlung
967
968(1) Die Zusammenstellung stellt links den Entwurf und rechts die Beschlüsse des
969Ausschusses gegenüber. Anders als beim alten Bundesgesetzblatt und beim Gesetz-
970und Verordnungsblatt für Berlin stehen die Spalten nicht nacheinander im
971Inhaltsstrom, sondern zeilenweise verschränkt; sie werden daher erstmals anhand
972der Koordinaten getrennt (FontgroessenFilter, PatchTextExtraktor).
973
974(2) Geschnitten wird an der Blattmitte, jedoch nur dort, wo ein tatsächlicher
975Spaltensteg vorliegt. Eine über die Blattmitte durchlaufende Zeile ist
976ganzseitenbreit (Vorblatt, Bericht, Seitenkopf); sie bleibt ungeschnitten und
977wird der linken Spalte zugeschlagen, damit sie genau einmal erscheint.
978
979(3) Der gesperrt gesetzte Vermerk der Ausschussspalte wird auf seine Normalform
980gebracht, der laufende Spaltenkopf als Kolumnentitel entfernt (TextBereiniger).
981
982(4) Die Auflösung der rechten Spalte unterbleibt einstweilen. Sie druckt
983Unverändertes nicht ab, sondern vermerkt es — und zwar nicht nur je
984Gliederungspunkt, sondern auch zeilenweise innerhalb zitierter Blöcke. Die
985rechte Spalte ist damit für sich genommen kein vollständiges Dokument; ihre
986Anführungszeichen gehen nicht auf. Eine Auflösung über die Gliederungspfade
987allein wurde erprobt und ist daran gescheitert; erforderlich ist die zeilenweise
988Zuordnung beider Spalten über ihre gemeinsame Grundlinie im Satzspiegel. Bis
989dahin wird eine Beschlussempfehlung erkannt und unter Angabe des Grundes
990übergangen, verbunden mit dem Hinweis auf die Drucksachennummer des Entwurfs,
991der sich stattdessen eignet.
992
993
994Artikel 4
995Prüffälle
996
997(1) Es treten hinzu: die Einordnung von zwölf Beispieldokumenten nach ihrer Art
998(DokumentErkennerTest), das Lesen und Anwenden eines Änderungsantrags
999(AenderungsantragParserTest, EntwurfsPatcherTest) sowie vier Fälle in
1000EndToEndTest — der Antrag der Fraktion BÜNDNIS 90/DIE GRÜNEN zum bayerischen
1001Jagdgesetz (Ltg.-Drs. 19/10365), die Unberührtheit des Stammgesetzes durch
1002ebendiesen Antrag, die Spaltentrennung der Zusammenstellung zur Drucksache
100320/7619 und die Behandlung eines Entschließungsantrags.
1004
1005(2) Der Antragsfall belegt beides: Der Antrag streicht den Goldschakal aus der
1006Artenliste des neuen § 18 der Ausführungsverordnung und schließt die Aufzählung
1007mit einem Semikolon ab; die Synopse des Bayerischen Jagdgesetzes bleibt dabei
1008zu Recht unverändert, weil der Antrag auf einen Paragraphen des Entwurfs zielt,
1009der die Verordnung und nicht das Gesetz ändert.
1010
1011(3) Die Spaltentrennung wird daran gemessen, dass die linke Spalte der
1012Zusammenstellung Befehl für Befehl den Regierungsentwurf ergibt, aus dem sie
1013gebaut ist (117 Befehle, wie aus Drucksache 20/6875).
1014
1015
1016Artikel 5
1017Handbuch
1018
1019Das Handbuch (README.adoc) erhält den Abschnitt „Quellformate: Gesetz, Entwurf,
1020Antrag“. Die bisherige Angabe, Meta-Änderungen an Drucksachen seien bewusst
1021nicht abgedeckt, entfällt. Das Hinweisfeld der Web-Anwendung nennt die nunmehr
1022zulässigen Dokumentarten.
1023
1024
1025════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +02001026 Fassung vom 26. Juli 2026,
1027 zuletzt geändert durch die am 26. Juli 2026 vorgenommenen Änderungen
1028════════════════════════════════════════════════════════════════════════════════
1029
1030Der zweispaltige Belegfall Berlin (Gesetz zur Änderung des Allgemeinen
1031Sicherheits- und Ordnungsgesetzes und des LAF-Errichtungsgesetzes vom 3. Juni
10322026, GVBl. S. 234) wird untersucht. Der Befund widerlegt die bisherige Annahme:
1033Die Reihenfolge des Inhaltsstroms ist bereits die Lesereihenfolge; eine
1034koordinatenbasierte Spaltenerkennung ist nicht erforderlich. Die tatsächlichen
Matthias Andreas Benkard81777012026-07-26 08:53:10 +02001035Hindernisse liegen anderswo — davon werden vier behoben. Von den sechs Befehlen
1036des Heftes werden danach fünf erkannt.
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +02001037
1038
1039Artikel 1
1040Eingebettetes Rahmenziel in Paragraphenform
1041
1042Der Änderungsgesetz-Parser (AenderungsgesetzParser) übernahm ein in der
1043Änderungsformel selbst genanntes Ziel („§ 2 Satz 1 des Gesetzes zur Errichtung
1044eines Landesamtes … wird wie folgt geändert:“) nicht als Kontext der
1045nachfolgenden Gliederungspunkte. Ursache war die vordere Wortgrenze des Musters
1046EINGEBETTETES_ZIEL: „§“ ist selbst kein Wortzeichen, eine Wortgrenze davor
1047verlangte also ein vorangehendes Wortzeichen. Der §-Zweig des Musters war damit
1048unerreichbar und allein der bayerische „Art.“-Zweig wirksam. An die Stelle der
1049Wortgrenze tritt nunmehr die Bedingung, dass kein Buchstabe und keine Ziffer
1050vorangeht.
1051
1052
1053Artikel 2
1054Laufender Seitenkopf des Gesetz- und Verordnungsblatts für Berlin
1055
1056Der laufende Seitenkopf des GVBl. für Berlin („235Gesetz- und Verordnungsblatt
1057für Berlin 82. Jahrgang Nr. 17 11. Juni 2026“) steht im Inhaltsstrom nicht auf
1058einer eigenen Zeile, sondern klebt samt Seitenzahl mitten im Fließtext der
1059folgenden Spalte. Er ist deshalb nicht als Kolumnentitel zu entfernen, sondern
1060aus dem laufenden Text herauszuschneiden (TextBereiniger, Muster
1061GVBL_BERLIN_KOPF).
1062
1063
1064Artikel 3
1065Prüffall Berlin
1066
1067Ein Test bis einschließlich der Befehlserkennung tritt hinzu
1068(EndToEndTest.asogLafAendGBerlin). Er hält das Ergebnis des Spaltenspikes fest —
1069die Befehle beider Artikel stehen unverschränkt in Lesereihenfolge — und prüft,
1070dass die beiden Punkte des Artikels 2 ihr Ziel aus der Änderungsformel erben.
1071
1072Ein voller Akzeptanztest ist nicht möglich: gesetze.berlin.de ist wie das
Matthias Andreas Benkard81777012026-07-26 08:53:10 +02001073schleswig-holsteinische Portal eine anmeldepflichtige juris-Anwendung.
1074
1075
1076Artikel 4
1077Unnummerierte, benannte Anlagen
1078
1079Ein Gesetz mit einer einzigen Anlage benennt sie nach der Vorschrift, zu der sie
1080gehört („Die Anlage zu § 2 Absatz 4 Satz 1“). Der Stellenparser (StellenParser)
1081verlangte hinter „Anlage“ stets eine Nummer und wies solche Angaben zurück; der
1082Rahmenbefehl des Artikels 1 blieb deshalb unerkannt und seine Unterpunkte ohne
1083Kontext. Die Anlage trägt nunmehr — wie der „Anhang“ — die Bezeichnung „Anlage“.
1084Der benennende Zusatz wird übersprungen: Er reicht bis zum Ende der
1085Stellenangabe, und würde er mitgelesen, so läse der Parser das darin genannte
1086„§ 2“ als Änderungsziel und änderte die falsche Norm.
1087
1088Damit ist zugleich die Annahme der Fassung vom 26. Juli 2026 richtigzustellen:
1089Anlagen sind als Änderungsziel unterstützt (im gii-XML sind sie eigene Normen,
1090Stelle.anlagenEnbez() löst sie auf). Offen bleibt allein, dass der
1091Landesrecht-Textparser keine Anlagen-Normköpfe kennt, eine handgepflegte
1092Stammfassung also keine Anlage tragen kann.
1093
1094
1095Artikel 5
1096Steuerzeichen und zerrissene Befehlsvokabeln
1097
1098Der Textbereiniger (TextBereiniger) entfernt nunmehr C0-Steuerzeichen außer
1099Tabulator und Zeilenumbruch (Muster STEUERZEICHEN). Im GVBl. für Berlin trägt
1100der Einzug der Aufzählungsglieder ein U+0007; es steht unsichtbar vor dem Befehl
1101und ließ dessen Zeilenanfangs-Anker ins Leere greifen. Ebenso werden
1102Befehlsvokabeln zusammengeführt, die der amtliche Satz durch ein Leerzeichen
1103zerreißt („ein gefügt“ statt „eingefügt“) — beschränkt auf Fügungen, die als
1104Wortfolge im Deutschen nicht vorkommen.
1105
1106Von den vier Befehlen des Artikels 1 werden damit drei erkannt. Der vierte
1107bestimmt die Einfügestelle über einen Wortanker („Vor den Wörtern „Aus dem
1108Bereich Verkehr:“ wird folgender Absatz 5 eingefügt“); eine Struktureinfügung
1109trägt bislang nur eine Stellenangabe. Beides ist in
1110sampledata/Landesrecht-Beispiele.adoc vermerkt.
Matthias Andreas Benkardc86a73a2026-07-26 08:02:10 +02001111
1112
1113════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +02001114 Fassung vom 25. Juli 2026,
1115 zuletzt geändert durch die am 25. Juli 2026 vorgenommenen Änderungen
1116════════════════════════════════════════════════════════════════════════════════
1117
Matthias Andreas Benkard35e90f42026-07-25 10:00:36 +02001118Der Abschluss der sechsten und der Beginn der siebten Ertüchtigungswelle: Zwei
1119weitere Belegfälle treten hinzu.
1120
1121Schleswig-Holstein (Artikel 1 bis 4): das Gesetz zur Änderung des Gesetzes zur
1122Änderung kommunalrechtlicher Vorschriften vom 26. März 2026 (GVOBl. Schl.-H.
11232026/27). Es führt drei bislang unbekannte Eigenheiten ein — den laufenden Seiten-
1124kopf des GVOBl. Schleswig-Holstein, hochgestellte Fußnotenmarker an den Artikel-
1125Überschriften und einen Flattersatz, in dem die geometrische Randerkennung
1126versagt. Ein voller Akzeptanztest bleibt vorerst aus, weil die konsolidierte
1127Gemeindeordnung aus freien Quellen nicht in der maßgeblichen Fassung zu
1128beschaffen ist.
1129
1130Nordrhein-Westfalen (Artikel 5 bis 7): Artikel 3 des 22. Rundfunkänderungsgesetzes
1131vom 24. März 2026 (GV. NRW. S. 202) ändert das Telemedienzuständigkeitsgesetz.
1132Alle vier Befehle werden erkannt und angewandt; das Ergebnis ist gegen die
1133amtliche Fassung vom 1. April 2026 abgeglichen. Dazu werden die Trennung von
1134Kurztitel und Abkürzung im Klammerzusatz und eine Strukturgrenze für unbalancierte
1135Anführungszeichen nötig.
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +02001136
Matthias Andreas Benkard83ba9f02026-07-25 10:35:45 +02001137Schließlich (Artikel 8 bis 10) werden die beiden niedersächsischen Einfügeformen
1138ertüchtigt, die bislang als Grenze dokumentiert waren; das Niedersächsische
1139ELER-Fördergesetz wird damit ohne Rest umgesetzt.
1140
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +02001141
1142Artikel 1
1143Seitenkopf des Gesetz- und Verordnungsblatts für Schleswig-Holstein
1144
1145Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch den
1146zweizeiligen Titelkopf und den laufenden Seitenkopf des Gesetz- und Verordnungs-
1147blatts für Schleswig-Holstein („Gesetz- und Verordnungsblatt für Schleswig-
1148Holstein“ nebst „2026/27 vom 30. März“, Muster GVOBL_SH_KOPF, GVOBL_SH_LAND und
1149GVOBL_SH_HEFT). Der laufende Kopf steht zwischen zwei Artikeln und klebte sonst
1150an der folgenden Artikel-Überschrift.
1151
1152
1153Artikel 2
1154Fußnotenmarker an Artikel-Überschriften
1155
1156Schleswig-Holstein verweist an der Artikel-Überschrift eines Änderungsgesetzes
1157mit einer hochgestellten Ziffer auf die Gliederungsnummer-Fußnote am Seitenfuß
1158(„Artikel 1 ¹)“). Solche Überschriften genügten dem Muster der Artikel-Teilung
1159(AenderungsgesetzParser.ARTIKEL_UEBERSCHRIFT) nicht. Der Textbereiniger streift
1160den Marker nunmehr ab (TextBereiniger.loeseArtikelFussnoten, Muster
1161ARTIKEL_FUSSNOTE) und trennt dabei eine in derselben Zeile stehende Einleitung
1162wieder ab.
1163
1164
1165Artikel 3
1166Silbentrennung bei hartem Zeilenende
1167
1168Der Textbereiniger (TextBereiniger.verbindeUmbrueche) zog eine Silbentrennung am
1169Zeilenende bislang nie zusammen, wenn die geometrische Randerkennung des
1170Fontgrößenfilters ein hartes Zeilenende meldete. Im Flattersatz — wie ihn das
1171GVOBl. Schl.-H. verwendet — findet diese Erkennung jedoch keinen Ausrichtungs-
1172Cluster und stuft auch volle Zeilen als hart ein. Klebt der Trennstrich ohne
1173Trailing-Whitespace am Zeilenende, ist er deshalb nunmehr auch dort als
1174Silbentrennung zu lesen; bewusst gesetzte Suspensivstriche tragen den Trailing-
1175Whitespace des Extraktors und bleiben unberührt.
1176
1177
1178Artikel 4
1179Belegfall Kommunalrecht-Änderungsgesetz Schleswig-Holstein
1180
1181Als weiterer Prüffall tritt ein Test bis einschließlich der Befehlserkennung
1182hinzu (EndToEndTest.kommunalrechtAendGSchleswigHolstein): Artikel 1 trifft die
1183Gemeindeordnung, Artikel 2 die Kreisordnung, Artikel 3 ein anderes Änderungs-
1184gesetz; je Zielgesetz wird genau ein Neufassungsbefehl („§ 34a Absatz 1 erhält
1185folgende Fassung“, „§ 29a Absatz 1 …“) erkannt, kein Befehl bleibt unbekannt.
1186Ein voller Akzeptanztest ist nicht möglich: Das Landesportal
1187gesetze-rechtsprechung.sh.juris.de gibt seine Dokumentinhalte nur über eine
1188anmeldepflichtige Schnittstelle aus, und die letzte frei archivierte Gesamt-
1189ausgabe der Gemeindeordnung (14. November 2022) kennt den geänderten § 34a noch
1190nicht. Die Fundstelle ist in sampledata/Landesrecht-Beispiele.adoc vermerkt.
1191
1192
Matthias Andreas Benkard35e90f42026-07-25 10:00:36 +02001193Artikel 5
1194Kurztitel und Abkürzung im Klammerzusatz
1195
1196Der Landesrecht-Textparser (LandesRechtTextParser) las den Klammerzusatz der
1197Titelzeile stets als Abkürzung. Landesgesetze führen dort jedoch häufig Kurztitel
1198und Abkürzung nebeneinander („(Telemedienzuständigkeitsgesetz – TMZ-Gesetz)“,
1199„(Gemeindeordnung – GO –)“), und das Änderungsgesetz zitiert das Stammgesetz mit
1200dem Kurztitel, nicht mit der Abkürzung; die Artikelauswahl
1201(AenderungsgesetzParser.betrifft) griff deshalb nicht. Der Parser trennt den
1202Klammerzusatz nunmehr am Gedankenstrich (Muster KURZTITEL_TRENNER) und führt den
1203Kurztitel als Kurzüberschrift des Gesetzes.
1204
1205
1206Artikel 6
1207Strukturgrenze bei unbalancierten Anführungszeichen
1208
1209Der Zitatextraktor (ZitatExtraktor) schlug den gesamten Folgetext einem Zitat zu,
1210wenn im amtlichen Satz ein schließendes Anführungszeichen fehlte. Im 22. Rundfunk-
1211änderungsgesetz (Artikel 2 Nr. 11) ist das der Fall; das offene Zitat verschlang
1212dort die Artikel 3 bis 5, sodass überhaupt kein Änderungsbefehl mehr gefunden
1213wurde. Ein Änderungsgesetz zitiert jedoch nie über eine Artikel-Überschrift
1214hinweg. Der Extraktor schließt ein offenes Zitat deshalb vor einer Zeile, die nur
1215aus „Artikel N“ besteht, und meldet dies als Warnung. Zitierte Paragraphen bleiben
1216unberührt, weil das bayerische Landesrecht seine Normköpfe als „Art. N“ führt.
1217
1218
1219Artikel 7
1220Belegfall Telemedienzuständigkeitsgesetz
1221
1222Als weitere Beispieldaten treten die konsolidierte Vorfassung des TMZ-Gesetzes
1223(sampledata/NRW/TMZ-Gesetz-alt.txt, kanonischer Klartext, Fassung vom 27. April
12242022 aus der Fassungshistorie von recht.nrw.de) und ein End-to-End-Akzeptanztest
1225(EndToEndTest.tmzGesetzAcceptance) hinzu: Von den vier Befehlen des Artikels 3
1226werden alle angewandt — die Neufassung der Gesetzesüberschrift, die Neufassung des
1227§ 1 Absatz 2, die Fundstellen-Ersetzung im Satzteil vor Nummer 1 des § 2 und die
1228Neufassung der Nummern 1 und 2 des § 2. Die Artikel 1, 2 und 4 desselben Heftes
1229(WDR-Gesetz, Landesmediengesetz, Siebzehnter Rundfunkänderungsstaatsvertrag
1230Ausführungsgesetz) werden zutreffend nicht gewählt.
1231
1232
Matthias Andreas Benkard83ba9f02026-07-25 10:35:45 +02001233Artikel 8
1234Sachnummern mit Leerzeichen
1235
1236Niedersachsen zitiert eingeschobene Paragraphen mit einem Leerzeichen vor der
1237Sachnummer („§ 2 a“), die übrige Rechtssprache ohne („§ 2a“). Stellen- und
1238Ebenenparser erkannten die niedersächsische Form nicht. Der Textbereiniger zieht
1239sie nunmehr auf die kanonische Form zusammen (Muster SACHNUMMER_MIT_LEERZEICHEN);
1240ein folgender Aufzählungsmarker des Änderungsgesetzes („… nach § 8 c) In Absatz 2
1241…“) bleibt ausgenommen.
1242
1243
1244Artikel 9
1245Gliederungsbezogene Einfügung eines Paragraphen
1246
1247Der Befehlserkenner (BefehlErkenner) erkannte die Einfügung eines Paragraphen nur
1248in der ankergeführten Form („Nach § 12 wird der folgende § 13 angefügt“). Die
1249gliederungsbezogene Form „In Kapitel 4 wird nach § 12 der folgende neue § 13
1250angefügt“ tritt hinzu (Muster STRUKTUR_EINFUEGUNG_IN_GLIEDERUNG); die
1251Gliederungsangabe nennt nur den Abschnitt, maßgeblich für die Position bleibt der
1252Anker. Zugleich wird das Beiwort „neu“ in beiden Formen zugelassen.
1253
1254
1255Artikel 10
1256Vorrang der Umnummerierung vor der Neubesetzung
1257
1258Der Befehlsanwender (BefehlAnwender) wandte die Befehle stets in der Reihenfolge
1259des Änderungsgesetzes an. Besetzt eine Einfügung einen Paragraphen neu, dessen
1260bisheriger Träger erst durch einen nachfolgenden Befehl umnummeriert wird („In
1261Kapitel 4 wird nach § 12 der folgende neue § 13 angefügt“ vor „Der bisherige § 13
1262wird § 14“), so führte das auf zwei Paragraphen gleicher Bezeichnung und die
1263Einfügung wurde zurückgewiesen. Das Wort „bisherig“ bezeichnet den Stand vor der
1264Änderung; die Umnummerierung geht der Neubesetzung sachlich voraus und wird
1265deshalb vorgezogen (BefehlAnwender.anwendungsReihenfolge). Protokolliert wird
1266weiterhin in der Reihenfolge des Änderungsgesetzes.
1267
1268
Matthias Andreas Benkard519c1e72026-07-25 09:11:56 +02001269════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard3f81add2026-07-24 05:34:32 +02001270 Fassung vom 24. Juli 2026,
1271 zuletzt geändert durch die am 24. Juli 2026 vorgenommenen Änderungen
1272════════════════════════════════════════════════════════════════════════════════
1273
1274Die sechste Ertüchtigungswelle wird um den ersten nichtbayerischen Landesrecht-
1275Belegfall ergänzt: das paragraphengegliederte Sächsische Beamtenversorgungsgesetz
1276(SächsBeamtVG) in seiner Fassung vom 1. Februar 2025 nebst dem Gesetz zur Änderung
1277des SächsBeamtVG vom 13. April 2026 (SächsGVBl. S. 134). Alle fünf Befehle werden
1278erkannt und angewandt. Dazu wird der Landesrecht-Textparser um die in den meisten
1279Ländern übliche arabische Gliederungsform ertüchtigt und die Fußzeile der revosax-
1280Volltextausgabe als Kolumnentitel entfernt.
1281
1282
1283Artikel 1
1284Arabische, schlüsselwort-erste Gliederungs-Überschriften
1285
1286Der Landesrecht-Textparser (LandesRechtTextParser) erkannte Gliederungs-
1287Überschriften bislang allein in der bayerischen Form „I. Abschnitt Titel“ (römische
1288Zählung, nachgestelltes Schlüsselwort). Die übrigen Länder gliedern in der Form
1289„Abschnitt 1“, „Unterabschnitt 2“, „Teil 3“ (arabische Zählung, vorangestelltes
1290Schlüsselwort, Titel auf der Folgezeile). Der Parser wird um ein entsprechendes
1291Muster (GLIEDERUNG_ARABISCH) ergänzt, das solche Überschriften — nach der
1292kanonischen Zusammenführung von Schlüsselwort, Nummer und Titel auf eine Zeile —
1293als Gliederungsgrenzen erkennt. Das bayerische Verhalten bleibt unberührt.
1294
1295
1296Artikel 2
1297Fußzeile der revosax-Volltextausgabe
1298
1299Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch die
1300Fußzeile der Volltextausgaben des sächsischen Rechtsportals revosax
1301(„https://www.revosax.sachsen.de Fassung vom 13.04.2026 Seite 1 von 1“, Muster
1302REVOSAX_FUSS), die Herausgeber-URL, Fassungsdatum und Seitenangabe trägt.
1303
1304
1305Artikel 3
1306Belegfall Sächsisches Beamtenversorgungsgesetz
1307
1308Als Beispieldaten treten die konsolidierte Vorfassung des SächsBeamtVG
1309(sampledata/Sachsen/SaechsBeamtVG-alt.txt, kanonischer Klartext, aus der
1310archivierten revosax-Volltextfassung abgeleitet) und ein End-to-End-Akzeptanztest
1311(EndToEndTest.saechsBeamtVgAcceptance) hinzu: Die Ersetzungen in § 47 (Einmalige
1312Unfallentschädigung) und die Neufassung des § 80 Absatz 1 Satz 2 (Allgemeine
1313Anpassung) werden vollständig angewandt, ohne Rest.
1314
1315
Matthias Andreas Benkard43e91612026-07-24 22:29:35 +02001316Artikel 4
1317Normköpfe tragen keine ganzen Sätze
1318
1319Der Landesrecht-Textparser (LandesRechtTextParser) las einen am Zeilenanfang
1320stehenden Querverweis-Satz („§ 7 GAPInVeKoSG findet entsprechend Anwendung.“) als
1321Normkopf „§ 7“, wodurch die dazwischenliegenden Normen der Monotonie-Prüfung zum
1322Opfer fielen. Ein Normkopf trägt jedoch eine Überschrift, keinen ganzen Satz;
1323deshalb schließt das Normkopf-Muster nunmehr Titel aus, die auf einen Punkt enden.
1324
1325
1326Artikel 5
1327Fußzeile und Herausgeberzeile des Niedersächsischen GVBl
1328
1329Der Textbereiniger (TextBereiniger.istKolumnentitel) entfernt nunmehr auch die
1330laufende Fußzeile des Niedersächsischen Gesetz- und Verordnungsblatts („Nds. GVBl.
13312026 Nr. 10 vom 4. Februar 2026 Seite 2“) und die Herausgeberzeile. Die zwischen
1332zwei Aufzählungsgliedern stehende Fußzeile hängte sich sonst an das voranstehende
1333Neufassungs-Zitat, sodass dessen Satzende-Anker nicht mehr griff.
1334
1335
1336Artikel 6
1337Belegfall Niedersächsisches ELER-Fördergesetz
1338
1339Als weitere Beispieldaten treten die konsolidierte Fassung des seit 2022
1340unveränderten NEFG (sampledata/Niedersachsen/NEFG-alt.txt, kanonischer Klartext,
1341aus dem zweispaltig gesetzten Nds. GVBl 2022 Nr. 33 abgeleitet) und ein
1342End-to-End-Akzeptanztest (EndToEndTest.nefgAcceptance) hinzu: Von den sieben
1343Befehlen werden fünf angewandt — darunter zwei Neufassungen „erhält folgende
1344Fassung“ (§ 1 Abs. 1, § 2), die Angaben-Ersetzung in § 1 Abs. 5, die
1345Wörter-Einfügung in § 6 Abs. 1 und die Umnummerierung § 13 → § 14. Zwei
1346Einfügeformen bleiben als „manuell prüfen“ stehen (bewusst dokumentierte Grenze):
1347die Einfügung eines §-Blocks mit durch Leerzeichen getrennter Sachnummer („§ 2 a“)
1348sowie die kapitelbezogene §-Block-Einfügung („In Kapitel 4 wird nach § 12 …
1349angefügt“).
1350
1351
Matthias Andreas Benkard3f81add2026-07-24 05:34:32 +02001352════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardc2b57de2026-07-19 10:15:00 +02001353 Fassung vom 19. Juli 2026,
1354 zuletzt geändert durch die am 19. Juli 2026 vorgenommenen Änderungen
1355════════════════════════════════════════════════════════════════════════════════
1356
1357In einer sechsten Ertüchtigungswelle wird das Erzeugnis über das bayerische
1358Landesrecht hinaus für das Landesrecht der übrigen Länder vorbereitet. Da diese
1359ihre Stammgesetze — anders als Bayern — in Paragraphen gliedern, wird der
1360bayerische Lader zu einem gemeinsamen Landesrecht-Lader verallgemeinert, der das
1361Sigel (§ oder Art.) je Norm aus dem Text ableitet; der Superskript-Modus folgt
1362nunmehr datengetrieben der Schreibweise des Stammgesetzes. Ferner wird die in
1363mehreren Ländern übliche Neufassungsform „erhält folgende Fassung“ erkannt. Als
1364Beispieldaten sind bereits Änderungsgesetze aus acht Ländern hinterlegt
1365(sampledata: Berlin, Schleswig-Holstein, Hessen, Niedersachsen, Baden-Württem-
1366berg, Nordrhein-Westfalen, Sachsen, Thüringen); ihre konsolidierten Stammfassungen
1367und die dazugehörigen Akzeptanzfälle folgen in weiteren Fassungen dieser Welle.
1368
1369
1370Artikel 1
1371Verallgemeinerung des bayerischen Laders zu einem Landesrecht-Lader
1372
1373Die Klassen BayRechtLoader und BayRechtTextParser (Paket gesetz.bayern) werden zu
1374LandesRechtLoader und LandesRechtTextParser (Paket gesetz.land) verallgemeinert.
1375Der Normkopf erkennt statt allein „Art. N“ nunmehr „§ N“ wie „Art. N“ und leitet
1376das Sigel je Norm aus dem Treffer ab (Norm.enbez), sodass die Gliederung des
1377jeweiligen Landes ohne ein eigenes Land-Merkmal folgt. Das Querverweis-
1378Schlüsselwort im Normkopf wird nur noch als ganzes Wort ausgeschlossen, damit ein
1379Normtitel wie „Satzungen“ nicht am Verweis-Wort „Satz“ scheitert; die
1380Juris-Abkürzung darf mehrteilig sein („(GO NRW)“). Das bayerische Verhalten
1381bleibt unverändert.
1382
1383
1384Artikel 2
1385Datengetriebener Superskript-Modus aus der Stammfassung
1386
1387Ob ein Änderungsgesetz mit Erhalt der hochgestellten amtlichen Satznummern
1388extrahiert wird, richtet sich nicht mehr danach, ob das Stammgesetz als gii-XML
1389vorliegt, sondern danach, ob die geladene Stammfassung selbst amtliche Satznummern
1390am Satzanfang trägt (Superskript.traegtSatznummern). Damit erhalten das bayerische
1391Landesrecht und das niedersächsische Recht ihre Superskripte, das Bundesrecht und
1392die Länder ohne amtliche Satzzählung verwerfen sie wie bisher.
1393
1394
1395Artikel 3
1396Erkennung der Neufassungsform „erhält folgende Fassung“
1397
1398Der Befehlserkenner erkennt die Neufassung nunmehr auch in der in Schleswig-
1399Holstein und Niedersachsen üblichen Form „… erhält (erhalten) folgende Fassung:“,
1400neben der bisherigen Form „… wird (werden) wie folgt gefasst:“. Die Erweiterung
1401ist rein zusätzlich (Verb-Baustein NEUFASSUNG_VERB) und lässt die Muster des
1402Bundes- und des bayerischen Rechts unberührt.
1403
1404
1405════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001406 Fassung vom 17. Juli 2026,
1407 zuletzt geändert durch die am 17. Juli 2026 vorgenommenen Änderungen
1408════════════════════════════════════════════════════════════════════════════════
1409
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +02001410Auf Grund eines gemeldeten Wiedergabefehlers wird der Textbereiniger um eine
1411geometrische Zeilenend-Klassifikation auf Basis von PDFBox-Koordinaten ergänzt;
1412ferner wird die Strukturierung hängend eingerückter Definitionslisten (z.B. im
1413UWG-Anhang) sowohl im PDF-Extraktor als auch im XML-Flattener vereinheitlicht.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001414
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +02001415Sodann wird das Erzeugnis in einer fünften Ertüchtigungswelle für das Landes-
1416recht des Freistaates Bayern ertüchtigt (Artikel 4 bis 10): Stammgesetze in
1417Artikel-Gliederung aus der konsolidierten Fassung von gesetze-bayern.de,
1418paragraphengegliederte Änderungsgesetze aus dem Bayerischen Gesetz- und
1419Verordnungsblatt und aus Landtags-Drucksachen, amtliche Satznummern als
1420Superskripte sowie die bayerischen Befehlsformen. Belegfall ist das Gesetz zur
1421Änderung des Bayerischen Jagdgesetzes und weiterer Rechtsvorschriften vom
142226. März 2026 (GVBl. S. 113) nebst Regierungsentwurf (Ltg-Drs. 19/9707).
1423
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001424
1425Artikel 1
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +02001426Geometrische Klassifikation der Zeilenenden nach Ausrichtungs-Clustern
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001427
1428Der Textbereiniger (TextBereiniger.verbindeUmbrueche) zog eine Zeile, die ohne
1429Leerraum am Ende mit einem Buchstaben schließt und deren Folgezeile klein
1430beginnt, bislang stets ohne Trennzeichen mit der Folgezeile zusammen, in der
1431Annahme, es handle sich um eine bei der PDF-Extraktion um den Bindestrich
1432gebrachte Silbentrennung. Diese Annahme trifft auf einen bewussten Wortgrenzen-
1433Umbruch (etwa das Stichwort einer hängend eingerückten Definition, wie er im
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +02001434Anhang zum UWG vorkommt) nicht zu. Zur Behebung bestimmt der PDF-Vorverarbeiter
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +02001435(FontgroessenFilter) das geometrische End-X jeder Zeile (unter Flush auch am
1436Seitenende, damit die letzte Zeile einer Seite nicht die erste der Folgeseite
1437verfälscht) und klassifiziert die Zeilenenden anhand von Ausrichtungs-Clustern
1438in einem Fenster von 20 Zeilen davor/danach: Ein Zeilenende ist weich, wenn
1439mindestens fünf Fensterzeilen (auf vier Punkt genau) gleich ausgerichtet enden
1440(Satzspiegelrand des Blocksatzes), und hart, wenn ein solcher Rand mindestens
1441zehn Punkt oberhalb des Zeilenendes verläuft — dort wäre noch Platz gewesen,
1442der Umbruch ist mithin gewollt. Cluster statt eines Fenster-Perzentils, weil am
1443Spaltenwechsel des zweispaltigen alten Bundesgesetzblatts beide Spaltenränder
1444in ein Fenster fallen; maßgeblich ist der Rand, an dem die Zeile selbst
1445ausgerichtet ist. Der Textbereiniger zieht markerlose Umbrüche nur noch bei
1446weichen Zeilenenden zusammen (in Ermangelung von Geometriedaten näherungsweise
1447nach Zeichenzahl wie bisher), nie jedoch vor einer Folgezeile, die mit einem
1448Aufzählungsmarker („d)“, „3.“) beginnt.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001449
1450
1451Artikel 2
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +02001452Zusammenzug weicher und Erhaltung harter Umbrüche
1453
1454Nach den Einzelzusammenzügen fügt der Textbereiniger geometrisch weiche
1455Zeilenenden mit einem Leerzeichen zu Fließtext zusammen (Reflow); harte und
1456unklassifizierte Umbrüche bleiben erhalten. Nach der Bereinigung ist damit
1457jeder verbleibende Zeilenumbruch nach bester Einschätzung beabsichtigt, weshalb
1458die Zitat-Normalisierung des Befehlsanwenders (normalisiereZitatText) Umbrüche
1459nicht mehr zu Leerzeichen faltet. Ausgenommen vom Reflow sind Strukturzeilen
1460(„Artikel 2“, „§ 19“, allein stehende Gliederungs-Bezeichnungen): Gleich
1461breite, zentrierte Überschriften in Serie bilden ein Schein-Cluster, der Parser
1462benötigt sie jedoch allein auf der Zeile.
1463
1464
1465Artikel 3
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +02001466Strukturierung und Normalisierung hängend eingerückter Definitionslisten
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001467
Matthias Andreas Benkard99511a92026-07-17 07:16:51 +02001468Damit die nunmehr erhaltenen hängenden Zeilenenden in Definitionslisten (wie
Matthias Andreas Benkardf20828f2026-07-18 08:57:22 +02001469beim UWG-Anhang oder in § 2 IfSG) korrekt strukturiert werden:
14701. Der XML-Flattener (ContentFlattener) trennt mehrere <LA>-Geschwister innerhalb
1471 eines <DD>-Elements durch Zeilenumbrüche und rückt die Folgezeilen tiefer ein
1472 als die Aufzählungszeile (Kindzeilen der Einheit für die Stellenauflösung).
14732. Der Befehlsanwender rückt beim Einsetzen von Zitattext (rueckeZitatEin)
1474 Fortsetzungszeilen zwei Zeichen tiefer ein als die Aufzählungszeile.
1475Beide Wege erzeugen dieselbe kanonische Zeilenform („ 2a. Stichwort“ nebst
1476„ Definitionstext“), welche für die korrekte Erkennung von Kindzeilen durch
1477die Stellenauflösung (StellenAufloeser.zeilenBlock) erforderlich ist.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001478
1479
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +02001480Artikel 4
1481Verallgemeinerung der Normbezeichnung auf das Artikel-Sigel
1482
1483Die Stellenkomponente des Paragraphen (Stelle.Paragraph) führt neben der Nummer
1484nunmehr das Sigel („§“ oder „Art.“) und bildet daraus die Einzelnormbezeichnung
1485(enbez). Der Stellenparser (StellenParser) nimmt „Art.“ als Normbezeichnung
1486sowie durchgehend die abgekürzten und deklinierten Einheitenwörter an („Abs.“,
1487„Nr.“, „Nrn.“, „Buchst.“, „Sätzen“, „Absätzen“); ferner wird die Komponente des
1488Halbsatzes eingeführt (Auflösung durch Teilung des Satzes am Semikolon) und
1489werden koordinierte Stellen mit nachgestellten Komponenten („Art. 18 Satz 2,
1490Art. 19 und 20 Satz 1“) entfaltet. Befehlserkenner und Befehlsanwender bilden
1491sämtliche bisher auf das „§“-Zeichen festgelegten Muster auf beide Sigel ab;
1492das Verhalten gegenüber Bundesrecht bleibt unverändert.
1493
1494
1495Artikel 5
1496Amtliche Satznummern als Superskripte
1497
1498Bayerische Normtexte führen amtliche Satznummern als hochgestellte Ziffern.
1499Der PDF-Vorverarbeiter (FontgroessenFilter) erhält einen Superskript-Modus:
1500Ziffernfolgen, die kleiner gesetzt und gegenüber der Grundlinie ihres Laufs um
1501zwei bis sechs Punkt gehoben sind, werden als Unicode-Superskripte (¹ ² ³)
1502übernommen statt verworfen — im selben Lauf klebende Satznummern und Fußnoten-
1503marker („Enteignung⁶)“) eingeschlossen. Der Satzteiler (SatzTeiler) teilt
1504nummerierte Texte exakt an den Satznummern und stellt die Nummer eines Satzes
1505bereit; die Stellenauflösung löst Satzangaben in nummerierten Texten nach dem
1506amtlichen Label statt nach der Position auf. Die Satz-Umnummerierung schreibt
1507die Satznummer im Text um („Satz 5 wird Satz 4“ → „⁵“ wird „⁴“). Für Bundes-
1508recht (Modus „Entfernen“) bleibt das Verhalten unverändert.
1509
1510
1511Artikel 6
1512Kolumnentitel des GVBl und des Bayerischen Landtags; geschützte Leerzeichen
1513
1514Der Textbereiniger entfernt die Kolumnentitel des Bayerischen Gesetz- und
1515Verordnungsblatts (mit links- oder rechtsstehender, auch an die Jahreszahl
1516geklebter Seitenzahl: „… Nr. 6/202676“) sowie die Titel- und Seitenköpfe der
1517Landtags-Drucksachen; eine am Seitenwechsel unterbrochene Silbentrennung heilt
1518nach der Kopfentfernung („kurz-“ + „fristige“). Geschützte Leerzeichen des
1519GVBl-Satzes („§ 1“, „Abs. 2“) werden früh auf gewöhnliche Leerzeichen
1520normalisiert, da sie für die Muster des Parsers unsichtbar sind. Die Struktur-
1521zeilen-Ausnahme des Reflows erfasst nunmehr auch „Art. N“.
1522
1523
1524Artikel 7
1525Paragraphengegliederte Änderungsgesetze; Rahmenbefehl im Vorspann;
1526Fortführungszeichen
1527
1528Bayerische Änderungsgesetze gliedern sich in Paragraphen. Der Parser
1529(AenderungsgesetzParser) teilt ein Dokument ohne Artikel-Überschriften an
1530freistehenden „§ N“-Zeilen; die Auswahl über den Einleitungssatz (betrifft)
1531bleibt maßgeblich und wählt auch die „Weitere Änderung“ desselben Stamm-
1532gesetzes. Nennungen des Stammgesetzes als Genitiv-Attribut eines Ausführungs-
1533oder Durchführungstitels („Verordnung zur Ausführung des Bayerischen Jagd-
1534gesetzes“) zählen nicht als Treffer. Trägt der Vorspann nach der gesetzesweiten
1535Änderungsformel einen Rahmenbefehl („… wird wie folgt geändert: Art. 28 Abs. 1
1536wird wie folgt geändert:“) oder das Ziel eingebettet in der Formel selbst
1537(„Art. 7 Abs. 2 des X-Gesetzes … wird wie folgt geändert:“), so wird dieses
1538Ziel Kontext aller Gliederungspunkte. Der Zitatextraktor behandelt das
1539Fortführungszeichen des GVBl (jedes neugefasste Aufzählungsglied öffnet am
1540Zeilenanfang erneut mit „, geschlossen wird einmal am Blockende) als
1541Typografie statt als geschachteltes Zitat; der Begründungs-Abschneider nimmt
1542auch „Begründung:“ an. Ein GVBl-Heft, das zugleich ein artikelgegliedertes
1543Änderungsgesetz enthielte, unterdrückte die Paragraphen-Teilung — Ausweg ist
1544die Handkorrektur über --extract-only.
1545
1546
1547Artikel 8
1548Stammgesetz-Lader für das bayerische Landesrecht
1549
1550Das neue Paket gesetz/bayern liest ein Stammgesetz aus der konsolidierten
1551Fassung von gesetze-bayern.de — als PDF (über den Superskript-erhaltenden
1552Extraktionsweg) oder als kanonischen Klartext im Format der --extract-only-
1553Ausgabe (BayRechtLoader, BayRechtTextParser). Erfasst werden Titelblock,
1554Gliederungs-Überschriften samt nummerierten Unter-Überschriften (synthetische
1555Kennzahlen), Normköpfe „Art. N“ (Querverweise am Zeilenanfang werden über eine
1556Negativliste und die Monotonie der Artikelnummern ausgeschlossen; vom Reflow an
1557ein Satzende geklebte Normköpfe werden am doppelten Leerzeichen erkannt und
1558wieder abgetrennt), aufgehobene Artikel sowie Fußnotenzeilen („⁶) [Amtl.
1559Anm.:] …“), die superskript-normalisiert im tragenden Absatz verbleiben. Die
1560Befehlszeile (AendGgner) wählt den Lader nach dem Dateityp des Stammgesetzes
1561(XML → gii, PDF/Klartext → Bayern) und extrahiert Änderungsgesetze dann im
1562Superskript-Modus.
1563
1564
1565Artikel 9
1566Bayerische Befehlsformen
1567
1568Der Befehlserkenner und der Befehlsanwender werden ergänzt um: die Aufhebung
1569von Fußnoten („Fußnote 1 wird aufgehoben“, auch mehrere — entfernt Fußnoten-
1570zeile und Inline-Marker der Kontextnorm), die Streichung der Satznummerierung
1571(„In Satz 1 wird die Satznummerierung „1“ gestrichen“), die Wortlaut-Formen
1572(„Der Wortlaut wird Satz 1“, „Der bisherige Wortlaut wird Abs. 5“ — erhält nur
1573der einzige unnummerierte Absatz die Nummer —, „Dem Wortlaut werden die
1574folgenden Abs. 1 bis 4 vorangestellt“ nebst lokativer Folgeklausel auf den
1575nummerierten Absatz), stellenlose und koordinierte Streichungen („Die Angabe
1576„X“ wird gestrichen“, „werden die Angabe „X“ und die Angabe „Y“ gestrichen“),
1577Ersetzungspaare mit „sowie“ und Einfügepaare mit Komma-Reihung, Bereichs- und
1578Koordinations-Umnummerierungen in abgekürzter Form („Die bisherigen Abs. 1
1579bis 3 werden die Abs. 2 bis 4“) sowie Klauselketten mit gemeinsamem Schluss-
1580verb („… wird durch … und … wird durch … ersetzt“). Die Absatz-Umnummerierung
1581greift nur noch, wenn der Absatz selbst das Ziel ist (bei „Satz 5 wird Satz 4“
1582stammt die Absatzangabe aus dem Kontextrahmen und der Satz-Zweig ist
1583zuständig).
1584
1585
1586Artikel 10
1587Feinbehandlung von Satzgrenzen, Fußnoten und mehrschrittigen Aufhebungen bei
1588der Anwendung
1589
1590Aus der vollständigen Anwendung der bayerischen Belegnovelle auf die (nach
1591Artikel 8 wiederhergestellte) alte Jagdgesetz-Fassung ergeben sich folgende
1592Verfeinerungen des Satzteilers, des Befehlserkenners und des Befehlsanwenders:
1593
15941. Der Satzteiler (SatzTeiler) bestimmt die Satzgrenzen fortan als Textanfang
1595 zuzüglich der Fundstelle jeder amtlichen Satznummer ab „²“. Eine allein
1596 stehende Nummer ≥ 2 — sei es, weil der erste Satz keine Nummer trägt, sei es,
1597 weil seine Nummer zuvor gestrichen wurde („Verboten ist … ²Art. 33 …“) —
1598 bildet damit eine eigene Grenze. Als Satzanfang gilt eine Satznummer auch vor
1599 einem Paragraphzeichen („³§ 23 …“).
1600
16012. Fußnoten-Definitionszeilen („⁶) [Amtl. Anm.:] …“) sind für die wortweisen
1602 Operationen (Streichen, Ersetzen, Einfügen) kein Inhalt: Sie werden vor der
1603 Operation abgetrennt und danach unverändert wieder angefügt, sodass die
1604 Streichung eines Fußnotenmarkers („die Angabe „¹)“ wird gestrichen“) den in
1605 den Text eingebetteten Marker trifft, nicht aber den gleichlautenden Kopf der
1606 Definitionszeile (deren Beseitigung der Fußnoten-Aufhebung vorbehalten bleibt).
1607
16083. Die Aufhebung eines durch seine Bezeichnung benannten Absatzes markiert
1609 diesen — unter Beibehaltung seiner Nummer — als weggefallen. Eine nachfolgende
1610 Absatz-Umnummerierung auf eine Zielnummer, die bereits von einem leeren Platz-
1611 halter (weggefallen oder gegenstandslos) belegt ist, überschreibt diesen
1612 (in Entsprechung zur Umnummerierung auf eine weggefallene Zielnorm), sodass
1613 Folgen wie „Abs. 2 wird aufgehoben; Abs. 3 wird Abs. 2 …“ vollständig aufgehen.
1614
16154. In einem Verbund erbt eine reine Wortoperation ohne eigenen Lokativ den Skopus
1616 der linken Klausel („In Abs. 2 Satz 1 wird „A“ ersetzt und die Angabe „B“ wird
1617 gestrichen“ wirkt für beide Klauseln auf Abs. 2 Satz 1); das gemeinsame Verb
1618 wird hierzu in die grammatische Normalform vorgezogen.
1619
1620
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001621Schlussbestimmung
1622
Matthias Andreas Benkard65eff082026-07-18 12:24:32 +02001623Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle (zwei-
1624hundertelf an der Zahl) sowie durch die vollständige Erstellung (mvnw verify)
1625bestätigt worden. Die Behebung des eingangs genannten Wiedergabefehlers wurde
1626anhand der Beispieldaten (UWG-Anhang, Nummern 2a, 4c sowie 22; § 2 IfSG)
1627verifiziert; die Anwendungs- und Prüfzahlen der bundesrechtlichen Beispiele (UWG,
1628AGG, ProdHaftG, GEG, IfSG) bleiben durchgehend unverändert. Die Ertüchtigung für
1629das bayerische Landesrecht ist durch die vollständige Anwendung der Belegnovelle
1630(GVBl. 2026 S. 113, §§ 1 und 2) auf die wiederhergestellte alte Fassung des
1631Bayerischen Jagdgesetzes belegt: Von einhundertvierundfünfzig Änderungsanweisungen
1632werden einhundertneunundvierzig selbsttätig angewandt; keine bleibt unerkannt.
1633Die fünf verbleibenden Anweisungen sind Folgeänderungen innerhalb zweier mehr-
1634schrittiger Umnummerierungssequenzen (Neunummerierung des Bußgeldkatalogs in
1635Art. 56 sowie die Absatzverschiebung in Art. 29a) und werden — statt fehlerhaft
1636gedeutet zu werden — mit Begründung dem Abschnitt „Manuell prüfen“ zugewiesen.
1637Der Regierungsentwurf (Ltg-Drs. 19/9707) wird auf derselben Grundlage verarbeitet.
Matthias Andreas Benkard63112272026-07-17 05:10:53 +02001638
1639
1640════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardb7e9f0f2026-07-16 21:12:08 +02001641 Fassung vom 16. Juli 2026,
1642 zuletzt geändert durch die am 16. Juli 2026 vorgenommenen Änderungen
1643════════════════════════════════════════════════════════════════════════════════
1644
1645Auf Grund der vierten Ertüchtigungswelle werden Anhänge und Anlagen als Norm-Ziele,
1646die Angabe-Befehle der Inhaltsübersicht sowie die Einfügung und Ersetzung von
1647Gliederungs-Überschriften einer Verarbeitung zugänglich gemacht; ferner wird der
1648Befehlserkenner um weitere Verbund- und Bereichsformen sowie die Neufassung der
1649Gesetzesüberschrift ergänzt und die Brotschriftbestimmung des PDF-Vorverarbeiters
1650seitenweise gefasst.
1651
1652
1653Artikel 1
1654Anhänge und Anlagen als Norm-Ziele
1655
1656Die Stelle (Stelle) wird um die Unterscheidung zwischen echten Gliederungseinheiten
1657(Teil, Abschnitt, Unterabschnitt und dergleichen) und Anhängen/Anlagen ergänzt
1658(betrifftEchteGliederung, anlagenEnbez); Anhänge und Anlagen sind im gii-XML eigene
1659Normen mit Text und werden fortan wie Paragraphen behandelt. Der Stellenaufloeser
1660löst hierbei Nummer- und Buchstabe-Ketten verschachtelt und blockweise auf: die
1661Aufzählungszeile einer Nummer oder eines Buchstabens wird um ihre tiefer
1662eingerückten Kindzeilen erweitert, und eine Angabe ohne Absatzbezeichnung wird
1663norm-weit gesucht, sofern sie in genau einem Absatz auffindbar ist.
1664
1665
1666Artikel 2
1667Selbsttätige Anwendung der Inhaltsübersichts-Angaben
1668
1669Es wird der Anwender InhaltsuebersichtAnwender eingeführt, der die Angabe-Befehle
1670(gefasst, ersetzt, eingefügt, gestrichen sowie die Neufassung der gesamten
1671Übersicht) auf das Zeilenmodell der Inhaltsübersichts-Norm anwendet. Eine adressierte
1672Zeile wird anhand der Gliederungs- und Paragraphen-Kette der Stelle verschachtelt
1673gesucht, wobei gleichrangige Gliederungseinheiten als Fenstergrenzen dienen. Bei der
1674Neufassung der gesamten Übersicht schützt eine Plausibilitätssperre vor der
1675Übernahme eines Zitats, das durch ein unbalanciertes Anführungszeichen Befehlssprache
1676nachfolgender Anweisungen mitgerissen hat; ein solcher Fall wird dem Abschnitt
1677„Manuell prüfen“ zugewiesen.
1678
1679
1680Artikel 3
1681Einfügung und Ersetzung von Gliederungs-Überschriften
1682
1683Es wird der Befehl „GliederungsUeberschriften“ eingeführt; die Anweisungen „Nach
1684§ N werden die folgenden Überschriften zu ... eingefügt: „…““ sowie „Die bisherigen
1685Überschriften zu ... werden durch die folgende Überschrift zu ... ersetzt: „…““
1686legen neue Einheiten im Gliederungsbaum an beziehungsweise ersetzen bisherige
1687Einheiten durch neue. Der Befehlsanwender (BefehlAnwender.wendeGliederungsUeberschriftenAn)
1688zieht die Titel der neuen Einheiten aus dem Zitat und ordnet sie an der Stelle der
1689ersetzten Einheiten beziehungsweise hinter dem Einfügeanker ein. Ferner wird die
1690Neufassung der Gesetzesüberschrift selbst („Die Überschrift wird wie folgt gefasst“
1691ohne weitere Stellenangabe) erkannt und auf den Langtitel des Gesetzes angewandt.
1692
1693
1694Artikel 4
1695Weitere Erweiterungen des Befehlserkenners
1696
1697Der Befehlserkenner (BefehlErkenner) wird um Voranstellungen, Mehrfach-Ersetzungs-
1698und -Einfügepaare, Bereichsziele auf Nummern und Buchstaben, zusammengesetzte
1699Komma-Mehrfachpaare sowie Umnummerierungs-Verbünde („§ 50 wird zu § 38 und wird wie
1700folgt geändert: ...“) ergänzt.
1701
1702
1703Artikel 5
1704Seitenweise Brotschriftbestimmung
1705
1706Der Fontgrößenfilter (FontgroessenFilter) bestimmt die Brotschrift fortan seitenweise
1707statt dokumentweit: Auf jeder Seite gilt die größte Fontgröße mit mindestens 25 vom
1708Hundert Seitenanteil als Brotschrift, wobei eine absolute Mehrheit ab 60 vom Hundert
1709sofort entscheidet; Fußnoten werden als Kleingedrucktes unterhalb der letzten
1710Brotschriftzeile erkannt, Seitenfüße bleiben hiervon ausgenommen. Der Textbereiniger
1711(TextBereiniger) wird um die Toleranz weiterer Drucksachen-Artefakte (Seitenköpfe
1712und -füße, Vorabfassungs-Wasserzeichen, vertauschte oder gerade Anführungszeichen,
1713verklebte Wortgrenzen) ergänzt.
1714
1715
1716Schlussbestimmung
1717
1718Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle (einhundert-
1719dreiundsiebzig an der Zahl) sowie durch die vollständige Erstellung (mvnw verify)
1720bestätigt worden. Auf den Beispieldaten werden nunmehr sämtliche Befehle der
1721BGBl-Fassungen sowie der geprüften Entwürfe angewandt (UWG, AGG und ProdHaftG:
17220 manuell). Nicht selbsttätig verarbeitbar bleiben einstweilen Befehle gegen eine
1723ältere, im XML-Bestand nicht mehr vorhandene Gesetzesfassung sowie vereinzelte,
1724durch Extraktionsverluste im Quell-PDF verursachte Zitatlücken; diese werden
1725weiterhin, mit Begründung versehen, dem Abschnitt „Manuell prüfen“ zugewiesen. Die
1726Unterstützung des bayerischen Landesrechts bleibt einem späteren Zeitpunkt
1727vorbehalten.
1728
1729
1730════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkardebd5a7b2026-07-15 20:54:27 +02001731 Fassung vom 15. Juli 2026,
1732 zuletzt geändert durch die am 15. Juli 2026 vorgenommenen Änderungen
1733════════════════════════════════════════════════════════════════════════════════
1734
1735Auf Grund der weiteren Ertüchtigung des Befehlserkenners und des Befehlsanwenders
1736werden Bereichs- und Koordinationsziele bei Struktur-Ersetzungen, die Streichung
1737und Umnummerierung ganzer Struktureinheiten (Paragraphen und Gliederungs-
1738einheiten) sowie das Einfügen und Ersetzen ganzer Paragraphenblöcke einer
1739Verarbeitung zugänglich gemacht.
1740
1741
1742Artikel 1
1743Erweiterung der Struktur-Ersetzung um Ziel-Bereiche
1744
1745Der Aenderungsbefehl (Aenderungsbefehl.StrukturErsetzung) wird um das Feld
1746„bisStelle“ ergänzt, welches bei einem zusammenhängenden, koordinierten Ziel-
1747Bereich („Die Absätze 8 und 9 werden durch die folgenden Absätze 8 bis 10
1748ersetzt: „…““, „Die bisherigen Sätze 4 und 5 werden wie folgt gefasst: „…““)
1749das letzte Ziel bezeichnet; bei einem Einzelziel bleibt es unbesetzt. Der
1750Befehlsanwender (BefehlAnwender) löst den Bereich für Absätze, Sätze und
1751Paragraphen auf und ersetzt ihn durch den zitierten Block.
1752
1753
1754Artikel 2
1755Aufnahme struktureller Streichungen und Umnummerierungen
1756
1757Der Befehlserkenner wird wie folgt geändert:
1758
17591. Die Streichung ganzer Struktureinheiten („§ 9 wird gestrichen.“, „Die §§ 34
1760 bis 39 werden gestrichen.“, „Der bisherige Teil 3 wird gestrichen.“) wird als
1761 Aufhebung erkannt.
1762
17632. Die Umnummerierung wird auf Paragraphen und Gliederungseinheiten (Teil,
1764 Abschnitt, Unterabschnitt, Buch, Kapitel, Anlage) erstreckt sowie um die
1765 paarweise §-Umnummerierung („Die §§ 46 und 47 werden zu den §§ 34 und 35.“)
1766 ergänzt. Der Befehlsanwender benennt hierbei die betroffene Norm oder
1767 Gliederungseinheit um; eine bereits weggefallene Zielnorm wird überschrieben.
1768
17693. Die Neufassung eines §-Bereichs wird auf die Form ohne „bisherige“ erstreckt
1770 und liefert bei mehrgliedrigem Ziel nunmehr eine bereichsbezogene Struktur-
1771 Ersetzung statt eines Einzelbefehls.
1772
17734. Die Neufassung der Überschrift einer benannten Einheit („In Anlage 7 wird die
1774 Überschrift durch die folgende Überschrift ersetzt: „…““) sowie der Inhalts-
1775 übersicht werden erkannt; letztere wird stets der manuellen Prüfung
1776 zugewiesen.
1777
17785. Die Entwurfsform der Struktur-Ersetzung, bei der die Aufzählungsbezeichnung
1779 außerhalb des Zitats steht („… ersetzt: 3. „…““), wird abgefangen und dem
1780 Ersatztext wieder vorangestellt.
1781
17826. Der Chapeau-Qualifier („Im Satzteil vor Nummer 1 …“, „In der Angabe vor
1783 Nummer 1 …“) wird auf weitere Einleitungen erstreckt; steht er allein, ohne
1784 eigene Stelle, so bezieht sich die Operation auf die Kontextstelle.
1785
1786
1787Artikel 3
1788Einfügung und Ersetzung ganzer Paragraphenblöcke
1789
17901. Die Einfügung mehrerer Paragraphen in einem Zuge („Nach § 60a werden die
1791 folgenden §§ 60b und 60c eingefügt: „…““) sowie die Ersetzung eines §-Bereichs
1792 durch einen §-Block werden erkannt.
1793
17942. Der Befehlsanwender zerlegt den zitierten Block anhand der §-Überschriften
1795 (unter Ausschluss bloßer Querverweise wie „§ 71 Absatz 1“) in die einzelnen
1796 Paragraphen und fügt sie geschlossen ein oder setzt sie an die Stelle des
1797 ersetzten Bereichs.
1798
1799
1800Schlussbestimmung
1801
1802Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
1803(einhundertvierundvierzig an der Zahl) sowie durch die vollständige Erstellung
1804(mvnw verify) bestätigt worden. Nicht selbsttätig verarbeitbar bleiben
1805einstweilen die mehrquellige Struktur-Ersetzung über mehrere Gesetze hinweg
1806sowie vereinzelte Sonderfälle der Entwurfsfassung (Drucksachen); diese werden
1807dem Abschnitt „Manuell prüfen“ zugewiesen. Die Unterstützung des bayerischen
1808Landesrechts bleibt einem späteren Zeitpunkt vorbehalten.
1809
1810
1811════════════════════════════════════════════════════════════════════════════════
Matthias Andreas Benkard73c5dba2026-07-13 21:42:38 +02001812 Fassung vom 13. Juli 2026,
1813 zuletzt geändert durch die am 13. Juli 2026 vorgenommenen Änderungen
1814════════════════════════════════════════════════════════════════════════════════
1815
1816Auf Grund der fortdauernden Ertüchtigung des Befehlserkenners werden die bis zu
1817diesem Tage nicht selbsttätig verarbeitbaren Änderungsanweisungen nach näherer
1818Maßgabe der nachstehenden Abschnitte einer Verarbeitung zugänglich gemacht. Die
1819Zahl der nicht erkannten Anweisungen (nachfolgend: „unbekannte Befehle“) ver-
1820ringert sich hierdurch nach den vorliegenden Feststellungen wie folgt: im
1821Datensatz GEG von fünfzig (50) auf fünf (5), im Datensatz IfSG von elf (11) auf
1822drei (3), im Datensatz AGG von zwei (2) auf null (0) sowie im Datensatz UWG von
1823zwei (2) auf null (0).
1824
1825
1826Artikel 1
1827Übernahme des vorbefindlichen Bearbeitungsstandes
1828
1829Der zum Stichtag im Arbeitsverzeichnis vorgehaltene, noch nicht in die Versions-
1830verwaltung überführte Bearbeitungsstand wird eingecheckt. Erfasst werden ins-
1831besondere der Sammelbefehl (mehrere Teilbefehle als ein Protokolleintrag), die
1832mehrfache Stellenauflösung (StellenParser.parseMehrfach) sowie die Auflösung von
1833Bereichs-Umnummerierungen in absteigender Reihenfolge.
1834
1835
1836Artikel 2
1837Erkennung verbundener und mehrgliedriger Ersetzungsanweisungen
1838
1839Der Befehlserkenner (BefehlErkenner) wird wie folgt geändert:
1840
18411. Die Erkennung wird in eine Einzelbefehls-Stufe (erkenneEinzeln) und eine nach-
1842 geordnete Auffangstufe (erkennePaarErsetzung, erkenneVerbund) gegliedert. Trifft
1843 ein Muster zwar auf den Wortlaut, nicht aber auf eine auflösbare Stelle zu, so
1844 steht dies der Prüfung der nachfolgenden Muster und Auffangstufen nicht mehr
1845 entgegen.
1846
18472. Anweisungen der Form „In <Stelle> werden die Wörter „A“ durch die Wörter „B“
1848 und die Angabe „C“ durch die Wörter „D“ ersetzt“ werden erkannt; für jedes
1849 Ersetzungspaar wird eine Ersetzung gebildet und, im Falle koordinierter Stellen,
1850 das Kreuzprodukt aus Stellen und Paaren gebildet.
1851
18523. Anweisungen der Form „... und wird/werden ...“ werden an der Verbindungsstelle
1853 versuchsweise zerlegt; wird jede Teilklausel als eigenständiger Befehl erkannt –
1854 unverändert, mit großem Anfangsbuchstaben oder unter Voranstellung des lokativen
1855 Präfixes der linken Klausel –, so entsteht ein Sammelbefehl.
1856
18574. Ergänzend werden die Einfügung eines Satzzeichens („... ein Komma eingefügt“)
1858 sowie die anker-voranstehende Einfügung („Nach der Angabe „...“ wird ...
1859 eingefügt“) als Muster aufgenommen.
1860
1861Der Stellenparser (StellenParser) wird dahin geändert, dass eine bloße Nummer oder
1862ein bloßer Buchstabe die Komponentenart der jeweils vorangehenden Stelle erbt
1863(„Absatz 1 und 5“).
1864
1865
1866Artikel 3
1867Erkennung von Bereichs-, Wortlaut- und Satzzeichenanweisungen
1868
18691. Der Stellenparser wird um die Entfaltung von „bis“-Bereichen (ganzzahlig sowie
1870 für Einzelbuchstaben) und um die Pluralformen der Komponentenbezeichnungen
1871 (Absätze, Sätze, Nummern, Buchstaben) ergänzt.
1872
18732. Die Aufhebung wird auf bereichs- und koordinierte Angaben erstreckt („Die
1874 Nummern 1 bis 3 werden aufgehoben“, „Die Absätze 4 und 5 werden aufgehoben“).
1875
18763. Die Bereichs-Umnummerierung wird auf Nummern und Buchstaben sowie auf die Form
1877 ohne „zu den“ erstreckt („Die bisherigen Nummern 4 bis 6 werden die Nummern
1878 8 bis 10“); die Einzel-Umnummerierung wird auf Nummern und Buchstaben sowie auf
1879 die Einleitung „Die bisherige“ erstreckt.
1880
18814. Die Neufassung eines Paragraphen-Bereichs („Die §§ 52 bis 56 werden wie folgt
1882 gefasst: ...“) wird durch Zerlegung des zitierten Blocks an den „§ N“-Grenzen
1883 erkannt.
1884
18855. Es wird der Befehl „WortlautZuAbsatz“ eingeführt; die Anweisung „Der Wortlaut
1886 wird Absatz N“ versieht den bislang unnummerierten Normtext mit der Absatznummer.
1887
18886. Die Ersetzung eines Wortes durch ein Satzzeichen („... das Wort „oder“ am Ende
1889 durch ein Komma ersetzt“) sowie die zusammengesetzten Kommaformen werden erkannt.
1890
1891
1892Artikel 4
1893Aufnahme der Gliederungs- und Inhaltsübersichts-Anweisungen
1894
18951. Das Datenmodell wird wie folgt geändert:
1896 a) Die Gliederung (Gliederung) wird um die Gliederungskennzahl ergänzt.
1897 b) Das Gesetz (Gesetz) führt fortan die geordnete Liste der Gliederungs-
1898 einheiten mit; der Lader (GiiXmlLoader) erhebt diese aus dem gii-XML.
1899
19002. Die Stelle (Stelle) wird um die Komponenten „Gliederungseinheit“ (Teil,
1901 Abschnitt, Unterabschnitt, Anlage und dergleichen) sowie „Absatzbezeichnung“
1902 ergänzt. Der Stellenparser erkennt diese Komponenten, ferner die Wendung
1903 „Überschrift von <Gliederung>“, und lässt die verfeinernden Zusätze „Satzteil
1904 vor Nummer N“ und „Angabe vor Nummer N“ außer Betracht.
1905
19063. Die Neufassung sowie die Streichung von Gliederungs-Überschriften werden auf den
1907 Gliederungsbaum angewandt und in der Synopse als gesonderter Abschnitt
1908 „Geänderte Gliederungs-Überschriften“ dargestellt. Die Streichung einer
1909 Absatzbezeichnung entfernt die betreffende Absatznummer. Die die Inhaltsübersicht
1910 betreffenden Anweisungen („Die Angabe(n) zu ...“) werden erkannt.
1911
1912
1913Schlussbestimmung
1914
1915Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
1916(einhundertneunzehn an der Zahl) sowie durch die vollständige Erstellung (mvnw
1917verify) bestätigt worden. Nicht selbsttätig verarbeitbar bleiben einstweilen die
1918mehrquelligen Struktur-Ersetzungen, die Einfügung und Bereichsersetzung ganzer
1919Paragraphenfolgen (§§), die Neufassung von Satzbereichen sowie die stellenlosen
1920Chapeau-Anweisungen; diese werden dem Abschnitt „Manuell prüfen“ zugewiesen. Die
1921Unterstützung des bayerischen Landesrechts bleibt einem späteren Zeitpunkt
1922vorbehalten.