There is a newer version of the record available.

Published February 27, 2023 | Version 2023-02-26
Software Open

[R] Source Code des Corpus der Entscheidungen des Bundesverfassungsgerichts (CE-BVerfG-Source)

  • 1. Ludwig-Maximilians-Universität München

Description

 

Überblick

Dieses R-Skript lädt alle auf www.bundesverfassungsgericht.de verfügbaren Entscheidungen des Bundesverfassungsgerichts (BVerfG) herunter und verarbeitet sie in einen reichhaltigen menschen- und maschinenlesbaren Korpus. Es ist die Basis für den Corpus der Entscheidungen des Bundesverfassungsgerichts (CE-BVerfG).

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 persistenten Digital Object Identifier (DOI) versehen. Die neueste Version des Datensatzes ist immer über den Link der Concept DOI erreichbar: https://doi.org/10.5281/zenodo.3902658

Alle die Corona-Pandemie betreffenden Entscheidungen des Bundesverfassungsgerichts finden Sie zusätzlich separat dokumentiert und analysiert im Datensatz Corona-Rechtsprechung des Bundesverfassungsgerichts (BVerfG-Corona).

Das CE-BVerfG sollte nicht mit dem Corpus der amtlichen Entscheidungssammlung des Bundesverfassungsgerichts (C-BVerfGE) verwechselt werden. Letzterer zielt nur auf eine Abbildung der amtlichen Sammlung ab und ist deutlich kleiner.

 

NEU in Version 2023-02-26

  • Vollständige Aktualisierung der Daten
  • Gesamte Laufzeitumgebung mit Docker versionskontrolliert
  • Amtliche Sammlung bis inklusive Band 160 mit Name, Band und Seite versehen
  • 50 neue historische Entscheidungen aus dem Zeitraum 1951 bis 1998 (u.a. Elfes, Schleyer-Entführung, Kurzarbeitergeld, Nachtarbeiterinnen)
  • Aktenzeichen aus dem Eingangszeitraum 2000 bis 2009 nun korrekt mit führender Null formatiert (z.B. 1 BvR 44/02 statt 1 BvR 44/2)
  • Überarbeitung der Namen der Entscheidungen, u.a. Einfügung von Bindestrichen um Lesbarkeit zu verbessern und weitere Standardisierung
  • Verbesserte Formatierung von Warnungen und Fehlermeldungen im Compilation Report
  • Duplikat-Prüfung für Dateinamen eingeführt
  • Update für allgemeine Download-Funktion
  • Verbesserung des Robustness Check Reports
  • Download-Timeout auf 60 Sekunden reduziert
  • Überflüssige Warnung in f.future_lingsummarize-Funktion entfernt

 

Funktionsweise

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

  • Der volle Datensatz im CSV-Format
  • Die reinen Metadaten im CSV-Format (wie unter 1, nur ohne Entscheidungstexte)
  • (Optional) Tokenisierte Form aller Texte mit linguistischen Annotationen im CSV-Format
  • Alle Entscheidungen im HTML-Format
  • Alle Entscheidungen im TXT-Format (reduzierter Umfang an Metadaten)
  • Alle Entscheidungen im PDF-Format (reduzierter Umfang an Metadaten)
  • Alle Analyse-Ergebnisse (Tabellen als CSV, Grafiken als PDF und PNG)
  • Der Source Code und alle weiteren Quelldaten

Alle Ergebnisse werden im Ordner `output` abgelegt. Zusätzlich werden für alle ZIP-Archive kryptographische Signaturen (SHA2-256 und SHA3-512) berechnet und in einer CSV-Datei hinterlegt.

 

Systemanforderungen

  • Docker
  • Docker Compose
  • 8 GB Speicherplatz auf Festplatte
  • Multi-core CPU empfohlen (8 cores/16 threads für die Referenzdatensätze).

In der Standard-Einstellung wird das Skript vollautomatisch die maximale Anzahl an Rechenkernen/Threads auf dem System zu nutzen. Die Anzahl der verwendeten Kerne kann in der Konfigurationsatei angepasst werden. Wenn die Anzahl Threads auf 1 gesetzt wird, ist die Parallelisierung deaktiviert.

 

Anleitung

Schritt 1: Ordner vorbereiten

Kopieren Sie bitte den gesamten Source Code in einen leeren Ordner (!), beispielsweise mit:

$ git clone https://github.com/seanfobbe/ce-bverfg

Verwenden Sie immer einen separaten und leeren (!) Ordner für die Kompilierung. Die Skripte löschen innerhalb von bestimmten Unterordnern (files/, temp/, analysis/ und output/) alle Dateien die den Datensatz verunreinigen könnten --- aber auch nur dort.

 


Schritt 2: Docker Image erstellen

Ein Docker Image stellt ein komplettes Betriebssystem mit der gesamten verwendeten Software automatisch zusammen. Nutzen Sie zur Erstellung des Images einfach:

$ bash docker-build-image.sh


 

Schritt 3: Datensatz kompilieren

Falls Sie zuvor den Datensatz schon einmal kompiliert haben (ob erfolgreich oder erfolglos), können Sie mit folgendem Befehl alle Arbeitsdaten im Ordner löschen:

$ Rscript delete_all_data.R

 

Den vollständigen Datensatz kompilieren Sie mit folgendem Skript:

$ bash docker-run-project.sh

 

Ergebnis

Der Datensatz und alle weiteren Ergebnisse sind nun im Ordner output/ abgelegt.

 

Pipeline visualisieren

Sie können die Pipeline visualisieren, aber nur nachdem sie die zentrale .Rmd-Datei mindestens einmal gerendert haben:

> targets::tar_glimpse()     # Nur Datenobjekte
> targets::tar_visnetwork()  # Alle Objekte


Troubleshooting

Hilfreiche Befehle, um Fehler zu lokalisieren und zu beheben.

> tar_progress()  # Zeigt Fortschritt und Fehler an
> tar_meta()      # Alle Metadaten
> tar_meta(fields = "warnings", complete_only = TRUE)  # Warnungen
> tar_meta(fields = "error", complete_only = TRUE)  # Fehlermeldungen
> tar_meta(fields = "seconds")  # Laufzeit der Targets

 

Projektstruktur
 

.
├── buttons                    # Buttons (nur optische Bedeutung)
├── CHANGELOG.md               # Alle Änderungen
├── compose.yaml               # Konfiguration für Docker
├── config.toml                # Zentrale Konfigurations-Datei
├── data                       # Datensätze, auf denen die Pipeline aufbaut
├── delete_all_data.R          # Löscht den Datensatz und Zwischenschritte
├── docker-build-image.sh      # Docker Image erstellen
├── Dockerfile                 # Definition des Docker Images
├── docker-run-project.sh      # Docker Image und Datensatz kompilieren
├── functions                  # Wichtige Schritte der Pipeline
├── gpg                        # Persönlicher Public GPG-Key für Seán Fobbe
├── old                        # Alter Code aus früheren Versionen
├── pipeline.Rmd               # Zentrale Definition der Pipeline
├── README.md                  # Bedienungsanleitung
├── reports                    # Markdown-Dateien
├── requirements-python.txt    # Benötigte Python packages
├── requirements-R.R           # Benötigte R packages
├── requirements-system.txt    # Benötigte system dependencies
├── run_project.R              # Kompiliert den gesamten Datensatz
└── tex                        # LaTeX-Templates

 

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

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

 

Kontakt

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

 

Files

CE-BVerfG_2023-02-26_CompilationReport.pdf

Files (330.6 MB)

Name Size Download all
md5:d749ab4665f09560f6f1506f07aeacc8
538.2 kB Preview Download
md5:6f38ae7dcf0050795e392217a065e2f0
6.3 kB Preview Download
md5:27a262730437428b87bfa79b68805bd3
455.5 kB Preview Download
md5:c4980e544cbf56e63e0334c0163e1419
191.1 kB Preview Download
md5:c66df96046610d7f52de001a770f4106
329.4 MB Preview Download

Additional details

Related works

Compiles
Dataset: 10.5281/zenodo.7659109 (DOI)
Is derived from
Software: https://github.com/SeanFobbe/ce-bverfg (URL)
References
https://www.bundesverfassungsgericht.de (URL)