From f3b47af551fa6cd85509a65bb77d8d1b9bcb744a Mon Sep 17 00:00:00 2001 From: Matthias Andreas Benkard Date: Sat, 22 Aug 2026 21:23:06 +0200 Subject: =?UTF-8?q?Die=20Auslieferung=20tr=C3=A4gt=20nur,=20was=20der=20Br?= =?UTF-8?q?owser=20wirklich=20braucht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Die Browserfassung soll künftig über Cloudflare Workers gehen, und dort gilt eine Grenze von 25 MiB je Datei, unkomprimiert gemessen. Zwei der ausgelieferten Dateien standen dem entgegen: Das Quelltextarchiv maß 29,7 MB und war damit schon nicht mehr hochzuladen, das Wasm-Modul mit 24,5 MB zu achtundneunzig Hundertsteln der Grenze und ohne jeden Spielraum. Das Archiv war ein ungefiltertes „git archive“ des Repositoriums, und über fünfundneunzig Hundertstel davon waren die Beispiel-PDFs. Der Quelltext selbst misst keine dreihunderttausend Zeichen. Die Gesetzes- und Drucksachentexte sind fremde Werke, an denen allein die Tests messen; sie sind nicht der Quelltext, aus dem sich das Ausgelieferte herstellen ließe, und die Auflage des AGPLv3 § 13 verlangt sie deshalb nicht. Sie sind aus dem Archiv genommen, und „quelltext-fassung.txt“ sagt fortan, dass sie fehlen, warum sie fehlen und wo sie vollständig liegen. Damit dies nicht stillschweigend zurückfällt, bricht „webpaket.sh“ ab, sobald das Archiv acht Mebibyte überschreitet, und ebenso, wenn irgendeine ausgelieferte Datei die Grenze der Zielplattform reißt: Lieber hier auffallen als beim Hochladen. Der Korpus lag überdies unter „src/main/resources“ und wanderte deshalb in jedes Erzeugnis: in das Klassenverzeichnis, in die ausführbare Archivdatei — achtundzwanzig Megabyte für ein Werk von sechshundert Kilobyte Java — und auf den Klassenpfad des Übersetzers, dessen Ressourcentabelle die Verzeichnisnamen bis ins Wasm trug. Er liegt nunmehr unter „src/test/resources“, wo er hingehört, und ist von der Kopie nach „target/test-classes“ ausgenommen: Die Tests lesen ihn über Dateisystempfade, eine Kopie wäre bei jedem Bau fünfunddreißig Megabyte umsonst. Das Modul wiegt statt 24,5 nunmehr 17,2 Megabyte; komprimiert geht es mit 5,5 statt 7,1 Megabyte über die Leitung. Vier Ursachen liegen dem zugrunde. Der Picocli-Annotationsprozessor meldete die Befehlszeilenklasse mit sämtlichen Methoden zur Reflexion an, worauf die Erreichbarkeitsanalyse die ganze Befehlszeilenfassung samt Dateizugriffen in ein Bild zog, in dem es keine Befehlszeile gibt; im Profil „wasm“ läuft er nicht mehr, und eine von einem früheren Lauf liegengebliebene Konfiguration wird vor dem Übersetzen entfernt, damit die Größe nicht davon abhängt, was vorher lief. Der Ressourcen-Glob „org/apache/fontbox/**“ bettete 3,3 Megabyte ostasiatischer CMaps, die Schrifttabelle „Scripts.txt“ und — weil zwei Sterne auch Klassendateien treffen — 0,7 Megabyte „.class“-Dateien ein, von denen ein deutsches Gesetzes-PDF nichts braucht; geblieben sind die beiden Identity-CMaps. Die Metriken unter „org/apache/pdfbox/resources“ bleiben vollständig, denn an ihnen hängt die Breitenberechnung bei nicht eingebetteten Schriften. Übersetzt wird mit „-Os“, und den Rest holt „wasm-opt -Oz“ im Webpaket. Dessen Merkmale sind einzeln aufgezählt und nicht als „--all-features“ erteilt. Der bequeme Weg war gangbar und führte doch ins Leere: Binaryen nutzte daraufhin Vorschläge, die noch kein Browser annimmt, und das Modul scheiterte erst beim Instanziieren — erst an einem exakten Heap-Typ aus den „custom descriptors“, nach dessen Abschaltung an der kompakten Importsektion. Zugelassen ist nunmehr, was ausgeliefert in den Browsern steht und was Web Image braucht. Die Vorkompression nach „.gz“ und „.br“ entfällt als Regelfall, denn Cloudflare komprimiert selbst und jede Beilage wäre dort eine weitere Datei; wer mit nginx selbst ausliefert, fordert sie mit VORKOMPRIMIEREN=1 an. Das Auslieferungsverzeichnis fällt damit von achtundsechzig auf siebzehn Megabyte, und ein liegengebliebenes „.DS_Store“ geht nicht mehr mit hoch. Dreihundertfünfundzwanzig Testfälle bestehen. Das Modul ist im Browser gelaufen: Vier Dokumentenpaare — IfSG, UWG, AGG und das Bayerische Jagdgesetz, also gii-XML wie PDF als Stammfassung, Bundesgesetzblatt, Drucksache und Gesetz- und Verordnungsblatt als Änderungsdokument — ergeben Synopsen, deren SHA-256-Summen denen der Befehlszeilenfassung gleichen. Der Ressourcenbeschnitt kostet also keine Zeichen. Co-Authored-By: Claude Opus 5 Change-Id: I31a47d1dcf3b27ffa4ae891947b1c4e083107a71 --- .../sampledata/ProdHaftG/BJNR021980989.xml | 23 ---------------------- 1 file changed, 23 deletions(-) delete mode 100644 src/main/resources/sampledata/ProdHaftG/BJNR021980989.xml (limited to 'src/main/resources/sampledata/ProdHaftG/BJNR021980989.xml') diff --git a/src/main/resources/sampledata/ProdHaftG/BJNR021980989.xml b/src/main/resources/sampledata/ProdHaftG/BJNR021980989.xml deleted file mode 100644 index 59fd200..0000000 --- a/src/main/resources/sampledata/ProdHaftG/BJNR021980989.xml +++ /dev/null @@ -1,23 +0,0 @@ - -ProdHaftGProdHaftG1989-12-15BGBl I1989, 2198ProdukthaftungsgesetzGesetz über die Haftung für fehlerhafte ProdukteStandZuletzt geändert durch Art. 5 G v. 17.7.2017 I 2421


(+++ Textnachweis ab: 1.1.1990 +++)
(+++ Maßgaben aufgrund EinigVtr vgl ProdHaftG Anhang EV,
nicht mehr anzuwenden +++)

-ProdHaftG§ 1Haftung

(1) Wird durch den Fehler eines Produkts jemand getötet, sein Körper oder seine Gesundheit verletzt oder eine Sache beschädigt, so ist der Hersteller des Produkts verpflichtet, dem Geschädigten den daraus entstehenden Schaden zu ersetzen. Im Falle der Sachbeschädigung gilt dies nur, wenn eine andere Sache als das fehlerhafte Produkt beschädigt wird und diese andere Sache ihrer Art nach gewöhnlich für den privaten Ge- oder Verbrauch bestimmt und hierzu von dem Geschädigten hauptsächlich verwendet worden ist.

(2) Die Ersatzpflicht des Herstellers ist ausgeschlossen, wenn

1.
er das Produkt nicht in den Verkehr gebracht hat,
2.
nach den Umständen davon auszugehen ist, daß das Produkt den Fehler, der den Schaden verursacht hat, noch nicht hatte, als der Hersteller es in den Verkehr brachte,
3.
er das Produkt weder für den Verkauf oder eine andere Form des Vertriebs mit wirtschaftlichem Zweck hergestellt noch im Rahmen seiner beruflichen Tätigkeit hergestellt oder vertrieben hat,
4.
der Fehler darauf beruht, daß das Produkt in dem Zeitpunkt, in dem der Hersteller es in den Verkehr brachte, dazu zwingenden Rechtsvorschriften entsprochen hat, oder
5.
der Fehler nach dem Stand der Wissenschaft und Technik in dem Zeitpunkt, in dem der Hersteller das Produkt in den Verkehr brachte, nicht erkannt werden konnte.

(3) Die Ersatzpflicht des Herstellers eines Teilprodukts ist ferner ausgeschlossen, wenn der Fehler durch die Konstruktion des Produkts, in welches das Teilprodukt eingearbeitet wurde, oder durch die Anleitungen des Herstellers des Produkts verursacht worden ist. Satz 1 ist auf den Hersteller eines Grundstoffs entsprechend anzuwenden.

(4) Für den Fehler, den Schaden und den ursächlichen Zusammenhang zwischen Fehler und Schaden trägt der Geschädigte die Beweislast. Ist streitig, ob die Ersatzpflicht gemäß Absatz 2 oder 3 ausgeschlossen ist, so trägt der Hersteller die Beweislast.

-ProdHaftG§ 2Produkt

Produkt im Sinne dieses Gesetzes ist jede bewegliche Sache, auch wenn sie einen Teil einer anderen beweglichen Sache oder einer unbeweglichen Sache bildet, sowie Elektrizität.

-ProdHaftG§ 3Fehler

(1) Ein Produkt hat einen Fehler, wenn es nicht die Sicherheit bietet, die unter Berücksichtigung aller Umstände, insbesondere

a)
seiner Darbietung,
b)
des Gebrauchs, mit dem billigerweise gerechnet werden kann,
c)
des Zeitpunkts, in dem es in den Verkehr gebracht wurde,
berechtigterweise erwartet werden kann.

(2) Ein Produkt hat nicht allein deshalb einen Fehler, weil später ein verbessertes Produkt in den Verkehr gebracht wurde.

-ProdHaftG§ 4Hersteller

(1) Hersteller im Sinne dieses Gesetzes ist, wer das Endprodukt, einen Grundstoff oder ein Teilprodukt hergestellt hat. Als Hersteller gilt auch jeder, der sich durch das Anbringen seines Namens, seiner Marke oder eines anderen unterscheidungskräftigen Kennzeichens als Hersteller ausgibt.

(2) Als Hersteller gilt ferner, wer ein Produkt zum Zweck des Verkaufs, der Vermietung, des Mietkaufs oder einer anderen Form des Vertriebs mit wirtschaftlichem Zweck im Rahmen seiner geschäftlichen Tätigkeit in den Geltungsbereich des Abkommens über den Europäischen Wirtschaftsraum einführt oder verbringt.

(3) Kann der Hersteller des Produkts nicht festgestellt werden, so gilt jeder Lieferant als dessen Hersteller, es sei denn, daß er dem Geschädigten innerhalb eines Monats, nachdem ihm dessen diesbezügliche Aufforderung zugegangen ist, den Hersteller oder diejenige Person benennt, die ihm das Produkt geliefert hat. Dies gilt auch für ein eingeführtes Produkt, wenn sich bei diesem die in Absatz 2 genannte Person nicht feststellen läßt, selbst wenn der Name des Herstellers bekannt ist.

-ProdHaftG§ 5Mehrere Ersatzpflichtige

Sind für denselben Schaden mehrere Hersteller nebeneinander zum Schadensersatz verpflichtet, so haften sie als Gesamtschuldner. Im Verhältnis der Ersatzpflichtigen zueinander hängt, soweit nichts anderes bestimmt ist, die Verpflichtung zum Ersatz sowie der Umfang des zu leistenden Ersatzes von den Umständen, insbesondere davon ab, inwieweit der Schaden vorwiegend von dem einen oder dem anderen Teil verursacht worden ist; im übrigen gelten die §§ 421 bis 425 sowie § 426 Abs. 1 Satz 2 und Abs. 2 des Bürgerlichen Gesetzbuchs.

-ProdHaftG§ 6Haftungsminderung

(1) Hat bei der Entstehung des Schadens ein Verschulden des Geschädigten mitgewirkt, so gilt § 254 des Bürgerlichen Gesetzbuchs; im Falle der Sachbeschädigung steht das Verschulden desjenigen, der die tatsächliche Gewalt über die Sache ausübt, dem Verschulden des Geschädigten gleich.

(2) Die Haftung des Herstellers wird nicht gemindert, wenn der Schaden durch einen Fehler des Produkts und zugleich durch die Handlung eines Dritten verursacht worden ist. § 5 Satz 2 gilt entsprechend.

-ProdHaftG§ 7Umfang der Ersatzpflicht bei Tötung

(1) Im Falle der Tötung ist Ersatz der Kosten einer versuchten Heilung sowie des Vermögensnachteils zu leisten, den der Getötete dadurch erlitten hat, daß während der Krankheit seine Erwerbsfähigkeit aufgehoben oder gemindert war oder seine Bedürfnisse vermehrt waren. Der Ersatzpflichtige hat außerdem die Kosten der Beerdigung demjenigen zu ersetzen, der diese Kosten zu tragen hat.

(2) Stand der Getötete zur Zeit der Verletzung zu einem Dritten in einem Verhältnis, aus dem er diesem gegenüber kraft Gesetzes unterhaltspflichtig war oder unterhaltspflichtig werden konnte, und ist dem Dritten infolge der Tötung das Recht auf Unterhalt entzogen, so hat der Ersatzpflichtige dem Dritten insoweit Schadensersatz zu leisten, als der Getötete während der mutmaßlichen Dauer seines Lebens zur Gewährung des Unterhalts verpflichtet gewesen wäre. Die Ersatzpflicht tritt auch ein, wenn der Dritte zur Zeit der Verletzung gezeugt, aber noch nicht geboren war.

(3) Der Ersatzpflichtige hat dem Hinterbliebenen, der zur Zeit der Verletzung zu dem Getöteten in einem besonderen persönlichen Näheverhältnis stand, für das dem Hinterbliebenen zugefügte seelische Leid eine angemessene Entschädigung in Geld zu leisten. Ein besonderes persönliches Näheverhältnis wird vermutet, wenn der Hinterbliebene der Ehegatte, der Lebenspartner, ein Elternteil oder ein Kind des Getöteten war.

-ProdHaftG§ 8Umfang der Ersatzpflicht bei Körperverletzung

Im Falle der Verletzung des Körpers oder der Gesundheit ist Ersatz der Kosten der Heilung sowie des Vermögensnachteils zu leisten, den der Verletzte dadurch erleidet, daß infolge der Verletzung zeitweise oder dauernd seine Erwerbsfähigkeit aufgehoben oder gemindert ist oder seine Bedürfnisse vermehrt sind. Wegen des Schadens, der nicht Vermögensschaden ist, kann auch eine billige Entschädigung in Geld gefordert werden.

-ProdHaftG§ 9Schadensersatz durch Geldrente

(1) Der Schadensersatz wegen Aufhebung oder Minderung der Erwerbsfähigkeit und wegen vermehrter Bedürfnisse des Verletzten sowie der nach § 7 Abs. 2 einem Dritten zu gewährende Schadensersatz ist für die Zukunft durch eine Geldrente zu leisten.

(2) § 843 Abs. 2 bis 4 des Bürgerlichen Gesetzbuchs ist entsprechend anzuwenden.

-ProdHaftG§ 10Haftungshöchstbetrag

(1) Sind Personenschäden durch ein Produkt oder gleiche Produkte mit demselben Fehler verursacht worden, so haftet der Ersatzpflichtige nur bis zu einem Höchstbetrag von 85 Millionen Euro.

(2) Übersteigen die den mehreren Geschädigten zu leistenden Entschädigungen den in Absatz 1 vorgesehenen Höchstbetrag, so verringern sich die einzelnen Entschädigungen in dem Verhältnis, in dem ihr Gesamtbetrag zu dem Höchstbetrag steht.

-ProdHaftG§ 11Selbstbeteiligung bei Sachbeschädigung

Im Falle der Sachbeschädigung hat der Geschädigte einen Schaden bis zu einer Höhe von 500 Euro selbst zu tragen.

-ProdHaftG§ 12Verjährung

(1) Der Anspruch nach § 1 verjährt in drei Jahren von dem Zeitpunkt an, in dem der Ersatzberechtigte von dem Schaden, dem Fehler und von der Person des Ersatzpflichtigen Kenntnis erlangt hat oder hätte erlangen müssen.

(2) Schweben zwischen dem Ersatzpflichtigen und dem Ersatzberechtigten Verhandlungen über den zu leistenden Schadensersatz, so ist die Verjährung gehemmt, bis die Fortsetzung der Verhandlungen verweigert wird.

(3) Im übrigen sind die Vorschriften des Bürgerlichen Gesetzbuchs über die Verjährung anzuwenden.

-ProdHaftG§ 13Erlöschen von Ansprüchen

(1) Der Anspruch nach § 1 erlischt zehn Jahre nach dem Zeitpunkt, in dem der Hersteller das Produkt, das den Schaden verursacht hat, in den Verkehr gebracht hat. Dies gilt nicht, wenn über den Anspruch ein Rechtsstreit oder ein Mahnverfahren anhängig ist.

(2) Auf den rechtskräftig festgestellten Anspruch oder auf den Anspruch aus einem anderen Vollstreckungstitel ist Absatz 1 Satz 1 nicht anzuwenden. Gleiches gilt für den Anspruch, der Gegenstand eines außergerichtlichen Vergleichs ist oder der durch rechtsgeschäftliche Erklärung anerkannt wurde.

-ProdHaftG§ 14Unabdingbarkeit

Die Ersatzpflicht des Herstellers nach diesem Gesetz darf im voraus weder ausgeschlossen noch beschränkt werden. Entgegenstehende Vereinbarungen sind nichtig.

-ProdHaftG§ 15Arzneimittelhaftung, Haftung nach anderen -Rechtsvorschriften

(1) Wird infolge der Anwendung eines zum Gebrauch bei Menschen bestimmten Arzneimittels, das im Geltungsbereich des Arzneimittelgesetzes an den Verbraucher abgegeben wurde und der Pflicht zur Zulassung unterliegt oder durch Rechtsverordnung von der Zulassung befreit worden ist, jemand getötet, sein Körper oder seine Gesundheit verletzt, so sind die Vorschriften des Produkthaftungsgesetzes nicht anzuwenden.

(2) Eine Haftung aufgrund anderer Vorschriften bleibt unberührt.

-ProdHaftG§ 16Übergangsvorschrift

Dieses Gesetz ist nicht auf Produkte anwendbar, die vor seinem Inkrafttreten in den Verkehr gebracht worden sind.

-ProdHaftG§ 17Erlaß von Rechtsverordnungen

Das Bundesministerium der Justiz und für Verbraucherschutz wird ermächtigt, durch Rechtsverordnung die Beträge der §§ 10 und 11 zu ändern oder das Außerkrafttreten des § 10 anzuordnen, wenn und soweit dies zur Umsetzung einer Richtlinie des Rates der Europäischen Gemeinschaften auf der Grundlage der Artikel 16 Abs. 2 und 18 Abs. 2 der Richtlinie des Rates vom 25. Juli 1985 zur Angleichung der Rechts- und Verwaltungsvorschriften der Mitgliedstaaten über die Haftung für fehlerhafte Produkte erforderlich ist.

-ProdHaftG§ 18Berlin-Klausel

Dieses Gesetz gilt nach Maßgabe des § 13 Abs. 1 des Dritten Überleitungsgesetzes auch im Land Berlin. Rechtsverordnungen, die aufgrund dieses Gesetzes erlassen werden, gelten nach Maßgabe des § 14 des Dritten Überleitungsgesetzes auch im Land Berlin.

-ProdHaftG§ 19Inkrafttreten

Dieses Gesetz tritt am 1. Januar 1990 in Kraft.

-
\ No newline at end of file -- cgit v1.2.1