There is a newer version of the record available.

Published January 12, 2022 | Version 2022-01-12
Software Open

[R] Source Code des Corpus des Deutschen Bundesrechts (C-DBR-Source)

Creators

Description

 

Überblick

Dieses Skript wertet das amtliche Internetangebot Gesetze im Internet der Bundesrepublik Deutschland vollständig aus und ist die Grundlage des Corpus des Deutschen Bundesrechts (C-DBR).

Alle mit diesem Skript erstellten Datensätze werden dauerhaft kostenlos und urheberrechtsfrei auf Zenodo, dem wissenschaftlichen Archiv des CERN, veröffentlicht. Alle Versionen sind mit einem separaten und langzeit-stabilen (persistenten) Digital Object Identifier (DOI) versehen. Die neueste Version des Datensatzes ist zusätzlich immer über den Link der Concept DOI erreichbar: https://doi.org/10.5281/zenodo.3832111

Lesen Sie bitte zuerst den Compilation Report! Dieser enthält den gesamten R Source Code, relevante Rechenergebnisse, alle Diagramme, Zeitstempel, sowie ein detailliertes und klickbares Inhaltsverzeichnis. Sie werden sich auf diese Weise viel schneller im eigentlichen Source Code zurechtfinden.

 

Funktionsweise

Primäre Endprodukte des Skripts sind folgende ZIP-Archive:

  1. Der volle Datensatz im CSV-Format, unterteilt in Einzelnormen; nur Rechtsakte mit veröffentlichtem Normtext sind erfasst
  2. Die Metadaten aller Einzelnormen im CSV-Format (wie 1, nur ohne Normtexte)
  3. Der volle Datensatz im CSV-Format, unterteilt in Rechtsakte; nur Rechtsakte mit veröffentlichtem Normtext sind erfasst
  4. Die Metadaten aller Rechtsakte im CSV-Format (wie 3, nur ohne Normtexte)
  5. Die Metadaten aller auf »Gesetze im Internet« als XML veröffentlichten Rechtsakte, im CSV-Format, unabhängig davon ob sie Normtext enthalten oder nicht
  6. Der volle Datensatz im XML-Format, unterteilt in Rechtsakte; Grundlage für die CSV-Varianten
  7. Alle Anlagen zu den XML-Dateien im jeweiligen Original-Format
  8. Alle Rechtstexte im TXT-Format, unterteilt in Rechtsakte (deutlich reduzierter Umfang an Metadaten)
  9. Alle Rechtstexte im PDF-Format, unterteilt in Rechtsakte (deutlich reduzierter Umfang an Metadaten)
  10. Alle Rechtstexte im EPUB-Format, unterteilt in Gesetze (deutlich reduzierter Umfang an Metadaten)
  11. Alle Analyse-Ergebnisse (Tabellen als CSV, Grafiken als PDF und PNG)
  12. Netzwerk-Strukturen (Adjazenzmatrizen, Edgelists, GraphML, und Netzwerk-
    Diagramme) für alle Rechtsakte (experimentell!)

Zusätzlich werden für alle ZIP-Archive kryptographische Signaturen (SHA2-256 und SHA3-512) berechnet und in einer CSV-Datei hinterlegt. Die Analyse-Ergebnisse werden zum Ende hin nicht gelöscht, damit sie für die Codebook-Erstellung verwendet werden können.

Weiterhin kann optional ein PDF-Bericht erstellt werden (siehe unter »Kompilierung«).

 

Systemanforderungen

Das Skript in seiner veröffentlichten Form kann nur unter Linux ausgeführt werden, da es Linux-spezifische Optimierungen (z.B. Fork Cluster) und Shell-Kommandos (z.B. OpenSSL) nutzt. Das Skript wurde unter Fedora Linux entwickelt und getestet. Die zur Kompilierung benutzte Version entnehmen Sie bitte dem sessionInfo()-Ausdruck am Ende des Compilation Reports.

In der Standard-Einstellung wird das Skript vollautomatisch die maximale Anzahl an Rechenkernen/Threads auf dem System zu nutzen. Die Parallelisierung kann in der Konfigurations-Datei detailliert konfiguriert werden.

Auf der Festplatte sollten 8 GB Speicherplatz vorhanden sein.

Um die PDF-Berichte kompilieren zu können benötigen Sie das R package rmarkdown, eine vollständige Installation von LaTeX und alle in der Präambel-TEX-Datei angegebenen LaTeX Packages.

 

Kompilierung: Vorbemerkungen

Dem Source Code ist ein 'lockfile' für das R package renv beigelegt, mit dem optional die verwendeten Versionen aller R packages streng kontrolliert und einfach wiederhergestellt werden können. renv installiert die packages in einen separaten Ordner innerhalb des Projektes und kann gefahrfrei parallel mit Ihrer eigenen R library verwendet werden. Wenn Sie die Kompilierung mit den ursprünglich verwendeten Versionen durchführen wollen, führen Sie bitte im Ordner mit dem Source Code innerhalb von R folgende Befehle aus:

 

renv::activate() # Aktiviert renv

renv::restore() # Installiert die im Lockfile angegebenen Package-Versionen

 

Kompilierung: Datensatz und Codebook

Mit der Funktion render() von rmarkdown können der vollständige Datensatz und das Codebook kompiliert und die Skripte mitsamt ihrer Rechenergebnisse in ein gut lesbares PDF-Format überführt werden.

Alle Kommentare sind im roxygen2-Stil gehalten. Die beiden Skripte können daher auch ohne render() regulär als R-Skripte ausgeführt werden. Es wird in diesem Fall kein PDF-Bericht erstellt und Diagramme werden nicht abgespeichert.

Achtung: Verwenden Sie immer einen eigenständigen und leeren Ordner für die Kompilierung. Die Skripte löschen innerhalb des Ordners (working directory) vollautomatisch alle Dateien mit bestimmten Datei-Endungen (PDF, TXT, CSV usw.), die den Datensatz verunreinigen könnten, aber auch nur dort.

Um den vollständigen Datensatz und das Codebook zu kompilieren und einen PDF-Bericht zu erstellen, kopieren Sie bitte alle im Source-Archiv bereitgestellten Dateien in einen leeren Ordner (!) und führen mit R diesen Befehl aus:

source("00_C-DBR_FullCompile.R")

Bei der Prüfung der GPG-Signatur im Codebook wird ein Fehler auftreten und im Codebook dokumentiert, weil die Daten nicht mit meiner Original-Signatur versehen sind. Dieser Fehler hat jedoch keine Auswirkungen auf die Funktionalität und hindert die Kompilierung nicht.

 

Weitere Open Access Veröffentlichungen (Fobbe)

Website www.seanfobbe.de

Open Data  —  https://zenodo.org/communities/sean-fobbe-data/

Source Code  —  https://zenodo.org/communities/sean-fobbe-code/

Volltexte regulärer Publikationen  —  https://zenodo.org/communities/sean-fobbe-publications/

 

Urheberrecht: MIT-0

Der Source Code und alle von mir bereitgestellten Rohdaten stehen unter einer MIT No Attribution-Lizenz (MIT-0). Sie können sie frei für alle Zwecke nutzen.

 

Kontakt

Fehler gefunden? Anregungen? Kommentieren Sie gerne im Issue Tracker auf GitHub oder schreiben Sie mir eine E-Mail an fobbe-data@posteo.de

 

Files

C-DBR_2022-01-12_CompilationReport.pdf

Files (1.0 MB)

Name Size Download all
md5:0a9ea59b2c2f935365fd06fe1a6fe386
913.8 kB Preview Download
md5:9e9598148f1f6c5991608a724bc95722
6.7 kB Preview Download
md5:6a6b095da135fd0e0e4715482a0eb232
87.8 kB Preview Download

Additional details

Related works

Compiles
Dataset: 10.5281/zenodo.5832094 (DOI)
Is derived from
Software: https://github.com/SeanFobbe/c-dbr (URL)
References
https://www.gesetze-im-internet.de (URL)