aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/sampledata/UWG/bgbl126s0043_regelungstext.pdf
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <code@mail.matthias.benkard.de>2026-07-13 07:09:04 +0200
committerMatthias Andreas Benkard <code@mail.matthias.benkard.de>2026-07-13 07:09:04 +0200
commitd1e2facd01c88dbd4758fbc2a64bf9e01abca4e7 (patch)
tree05984a493b1a583543068be368aeb191ccd01d79 /src/main/resources/sampledata/UWG/bgbl126s0043_regelungstext.pdf
parent1b9bfb1bfed11593e08cde8bb072dbfb5980b740 (diff)
Implement the synopsis pipeline for amendment acts.
Add the full vertical slice from input files to a two-column HTML synopsis: * gesetz, gesetz.gii: immutable law model (Gesetz/Norm/Absatz) and an offline loader for the gii-norm XML format of gesetze-im-internet.de, flattening DL enumerations, tables, and pre blocks. * aenderung: amendment command model as a sealed interface with records (Ersetzung, Neufassung, Einfuegung, Anfuegung, Aufhebung, Streichung, Umnummerierung), including UnbekannterBefehl as the mandatory fallback -- unrecognized commands are reported, never dropped. * aenderung.parse: text extraction (PDFBox in content-stream order for two-column BGBl PDFs, plain text as escape hatch), BGBl header and hyphenation cleanup, quote extraction with placeholder substitution (quoted blocks cannot confuse the command regexes; unbalanced quotes -- which occur in real BGBl documents -- become warnings), outline scanning with successor-validated markers (1., a), aa), aa1)), and the command recognizer with context-frame stacking. * anwendung: sequential command application with a per-command protocol (ANGEWANDT / MANUELL_PRUEFEN plus reason), scope resolution down to sentence/enumeration ranges via a German sentence splitter. * synopse: norm pairing, word-level diff via java-diff-utils, and a self-contained HTML renderer with a Manuell-pruefen section. The CLI gains -o/--output, --vollstaendig, --artikel, --extract-only, and hidden debug flags (--dump-gesetz, --dump-befehle). On the IfSG sample (Drittes Bevoelkerungsschutzgesetz, BGBl. I 2020 S. 2397), 63 of 75 commands in Artikel 1 and 2 parse into typed commands; the remainder are ranges and compound commands that are deliberately out of scope for v1. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Change-Id: I93ef8ba300f1cac70916722f23c0cefc5f62da2b
Diffstat (limited to 'src/main/resources/sampledata/UWG/bgbl126s0043_regelungstext.pdf')
0 files changed, 0 insertions, 0 deletions