Add FASSUNGEN.txt version register
Record the changes of the "Fassung vom 13.7.2026" in bureaucratic legal
German, mirroring the amendment-act style the tool itself processes.
Convention: add a dated section (newest first) for every day the code
changes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Change-Id: Ib39e4f78405b33b439be006325e2c310b72b1511
diff --git a/FASSUNGEN.txt b/FASSUNGEN.txt
new file mode 100644
index 0000000..5febfc1
--- /dev/null
+++ b/FASSUNGEN.txt
@@ -0,0 +1,134 @@
+╔══════════════════════════════════════════════════════════════════════════════╗
+║ ║
+║ V E R Z E I C H N I S D E R F A S S U N G E N ║
+║ des Softwareerzeugnisses „ÄndGgner“ ║
+║ (Werkzeug zur Erstellung von Synopsen für Änderungsgesetze) ║
+║ ║
+╚══════════════════════════════════════════════════════════════════════════════╝
+
+Vorbemerkung zur Führung dieses Verzeichnisses
+──────────────────────────────────────────────
+(1) Dieses Verzeichnis dokumentiert nach Maßgabe der nachstehenden Bestimmungen
+ den jeweiligen Stand des Quelltextes des vorbezeichneten Erzeugnisses.
+(2) Für jeden Kalendertag, an dem Änderungen am Quelltext vorgenommen werden, ist
+ ein gesonderter Abschnitt nach dem Muster der nachfolgenden Fassungen anzu-
+ legen; die Abschnitte sind in absteigender zeitlicher Reihenfolge (jüngste
+ Fassung zuerst) zu führen.
+(3) Die Änderungen sind in sachlich gegliederter Form, unter fortlaufender
+ Nummerierung und unter Angabe der betroffenen Bestandteile (Klassen, Dateien)
+ zu bezeichnen. Maßgeblich ist die im Handbuch der Rechtsförmlichkeit nieder-
+ gelegte Ausdrucksweise entsprechend.
+
+
+════════════════════════════════════════════════════════════════════════════════
+ Fassung vom 13. Juli 2026,
+ zuletzt geändert durch die am 13. Juli 2026 vorgenommenen Änderungen
+════════════════════════════════════════════════════════════════════════════════
+
+Auf Grund der fortdauernden Ertüchtigung des Befehlserkenners werden die bis zu
+diesem Tage nicht selbsttätig verarbeitbaren Änderungsanweisungen nach näherer
+Maßgabe der nachstehenden Abschnitte einer Verarbeitung zugänglich gemacht. Die
+Zahl der nicht erkannten Anweisungen (nachfolgend: „unbekannte Befehle“) ver-
+ringert sich hierdurch nach den vorliegenden Feststellungen wie folgt: im
+Datensatz GEG von fünfzig (50) auf fünf (5), im Datensatz IfSG von elf (11) auf
+drei (3), im Datensatz AGG von zwei (2) auf null (0) sowie im Datensatz UWG von
+zwei (2) auf null (0).
+
+
+Artikel 1
+Übernahme des vorbefindlichen Bearbeitungsstandes
+
+Der zum Stichtag im Arbeitsverzeichnis vorgehaltene, noch nicht in die Versions-
+verwaltung überführte Bearbeitungsstand wird eingecheckt. Erfasst werden ins-
+besondere der Sammelbefehl (mehrere Teilbefehle als ein Protokolleintrag), die
+mehrfache Stellenauflösung (StellenParser.parseMehrfach) sowie die Auflösung von
+Bereichs-Umnummerierungen in absteigender Reihenfolge.
+
+
+Artikel 2
+Erkennung verbundener und mehrgliedriger Ersetzungsanweisungen
+
+Der Befehlserkenner (BefehlErkenner) wird wie folgt geändert:
+
+1. Die Erkennung wird in eine Einzelbefehls-Stufe (erkenneEinzeln) und eine nach-
+ geordnete Auffangstufe (erkennePaarErsetzung, erkenneVerbund) gegliedert. Trifft
+ ein Muster zwar auf den Wortlaut, nicht aber auf eine auflösbare Stelle zu, so
+ steht dies der Prüfung der nachfolgenden Muster und Auffangstufen nicht mehr
+ entgegen.
+
+2. Anweisungen der Form „In <Stelle> werden die Wörter „A“ durch die Wörter „B“
+ und die Angabe „C“ durch die Wörter „D“ ersetzt“ werden erkannt; für jedes
+ Ersetzungspaar wird eine Ersetzung gebildet und, im Falle koordinierter Stellen,
+ das Kreuzprodukt aus Stellen und Paaren gebildet.
+
+3. Anweisungen der Form „... und wird/werden ...“ werden an der Verbindungsstelle
+ versuchsweise zerlegt; wird jede Teilklausel als eigenständiger Befehl erkannt –
+ unverändert, mit großem Anfangsbuchstaben oder unter Voranstellung des lokativen
+ Präfixes der linken Klausel –, so entsteht ein Sammelbefehl.
+
+4. Ergänzend werden die Einfügung eines Satzzeichens („... ein Komma eingefügt“)
+ sowie die anker-voranstehende Einfügung („Nach der Angabe „...“ wird ...
+ eingefügt“) als Muster aufgenommen.
+
+Der Stellenparser (StellenParser) wird dahin geändert, dass eine bloße Nummer oder
+ein bloßer Buchstabe die Komponentenart der jeweils vorangehenden Stelle erbt
+(„Absatz 1 und 5“).
+
+
+Artikel 3
+Erkennung von Bereichs-, Wortlaut- und Satzzeichenanweisungen
+
+1. Der Stellenparser wird um die Entfaltung von „bis“-Bereichen (ganzzahlig sowie
+ für Einzelbuchstaben) und um die Pluralformen der Komponentenbezeichnungen
+ (Absätze, Sätze, Nummern, Buchstaben) ergänzt.
+
+2. Die Aufhebung wird auf bereichs- und koordinierte Angaben erstreckt („Die
+ Nummern 1 bis 3 werden aufgehoben“, „Die Absätze 4 und 5 werden aufgehoben“).
+
+3. Die Bereichs-Umnummerierung wird auf Nummern und Buchstaben sowie auf die Form
+ ohne „zu den“ erstreckt („Die bisherigen Nummern 4 bis 6 werden die Nummern
+ 8 bis 10“); die Einzel-Umnummerierung wird auf Nummern und Buchstaben sowie auf
+ die Einleitung „Die bisherige“ erstreckt.
+
+4. Die Neufassung eines Paragraphen-Bereichs („Die §§ 52 bis 56 werden wie folgt
+ gefasst: ...“) wird durch Zerlegung des zitierten Blocks an den „§ N“-Grenzen
+ erkannt.
+
+5. Es wird der Befehl „WortlautZuAbsatz“ eingeführt; die Anweisung „Der Wortlaut
+ wird Absatz N“ versieht den bislang unnummerierten Normtext mit der Absatznummer.
+
+6. Die Ersetzung eines Wortes durch ein Satzzeichen („... das Wort „oder“ am Ende
+ durch ein Komma ersetzt“) sowie die zusammengesetzten Kommaformen werden erkannt.
+
+
+Artikel 4
+Aufnahme der Gliederungs- und Inhaltsübersichts-Anweisungen
+
+1. Das Datenmodell wird wie folgt geändert:
+ a) Die Gliederung (Gliederung) wird um die Gliederungskennzahl ergänzt.
+ b) Das Gesetz (Gesetz) führt fortan die geordnete Liste der Gliederungs-
+ einheiten mit; der Lader (GiiXmlLoader) erhebt diese aus dem gii-XML.
+
+2. Die Stelle (Stelle) wird um die Komponenten „Gliederungseinheit“ (Teil,
+ Abschnitt, Unterabschnitt, Anlage und dergleichen) sowie „Absatzbezeichnung“
+ ergänzt. Der Stellenparser erkennt diese Komponenten, ferner die Wendung
+ „Überschrift von <Gliederung>“, und lässt die verfeinernden Zusätze „Satzteil
+ vor Nummer N“ und „Angabe vor Nummer N“ außer Betracht.
+
+3. Die Neufassung sowie die Streichung von Gliederungs-Überschriften werden auf den
+ Gliederungsbaum angewandt und in der Synopse als gesonderter Abschnitt
+ „Geänderte Gliederungs-Überschriften“ dargestellt. Die Streichung einer
+ Absatzbezeichnung entfernt die betreffende Absatznummer. Die die Inhaltsübersicht
+ betreffenden Anweisungen („Die Angabe(n) zu ...“) werden erkannt.
+
+
+Schlussbestimmung
+
+Die vorstehenden Änderungen sind durch die Prüfung sämtlicher Testfälle
+(einhundertneunzehn an der Zahl) sowie durch die vollständige Erstellung (mvnw
+verify) bestätigt worden. Nicht selbsttätig verarbeitbar bleiben einstweilen die
+mehrquelligen Struktur-Ersetzungen, die Einfügung und Bereichsersetzung ganzer
+Paragraphenfolgen (§§), die Neufassung von Satzbereichen sowie die stellenlosen
+Chapeau-Anweisungen; diese werden dem Abschnitt „Manuell prüfen“ zugewiesen. Die
+Unterstützung des bayerischen Landesrechts bleibt einem späteren Zeitpunkt
+vorbehalten.