# SPDX-FileCopyrightText: 2026 Olaf Willerding # SPDX-License-Identifier: EUPL-1.2 """Erzeugt die Datenschutzerklärung für die Anwendung. ## Warum es diese Datei gibt Die Datenschutzerklärung stand bis Fassung 0.24.2 **nirgends in der Anwendung**. Das Wort kam in der ganzen Oberfläche kein einziges Mal als sichtbarer Text vor; `docs/datenschutz.html` wurde nicht mitgeliefert, und der einzige Weg nach außen führt zur Unterstützungsseite und nicht zur Erklärung. Zugleich sagt „Über diese Software“ zu, die Anwendung übertrage keine Daten — eine Zusage, deren Beleg der Nutzende nicht erreichen konnte. ## Warum aus derselben Quelle und nicht daneben Der Fehler, der hier droht, ist nicht „die Erklärung fehlt“. Er ist: **es gibt sie zweimal, und die zweite ist die falsche.** Der Fall ist bereits eingetreten — die veröffentlichte Seite stand am 30.08.2026 auf Fassung 1.1, während `docs/datenschutz.md` bei 1.5 war. Der Erzeuger der HTML-Fassung hatte gehalten, was er sollte; ausgelaufen ist der Schritt, den nur ein Mensch tut. Deshalb wird hier nichts abgeschrieben. Dieses Werkzeug ruft **denselben** Markdown-Umsetzer auf wie `datenschutz_html.py` — es gibt genau einen Parser für dieses Dokument — und setzt dessen HTML in Blöcke um, die die Anwendung ohne `dangerouslySetInnerHTML` darstellen kann. ## Warum über das HTML und nicht über das Markdown Der Umweg ist Absicht. Ein zweiter Markdown-Parser wäre eine zweite Meinung darüber, was im Dokument steht — und die erste ist sorgfältig gegen fünf Auszeichnungsformen abgesichert, an denen sie ausdrücklich abbricht (Blockzitat, Aufzählung mit `*`, vierte Überschriftenebene, verschachtelte Liste, Kursivsatz; siehe Befund H41). Diese Absicherung gilt hier mit, ohne dass sie ein zweites Mal geschrieben werden müsste. Der Tagvorrat der Ausgabe ist klein und geschlossen — nachgezählt am erzeugten Dokument vom 03.09.2026: `h1`, `h2`, `h3`, `p`, `ul`, `li`, `pre`, `table`, `thead`, `tbody`, `tr`, `th`, `td`, `code`, `strong`, `a`. Alles andere lässt dieses Werkzeug abbrechen. Der Kopf nannte bis Fassung 0.27.2 nur die ersten zehn und verschwieg die sechs Tabellen-Tags — die den aufwendigsten Zweig dieses Umsetzers ausmachen und seit dem Wechsel von `