# Ein Datenwörterbuch schreiben, bevor andere deinen Bericht lesen

Eigene konstruierte Übung und vollständiger Arbeitsweg. Keine echte Teilnehmerantwort, kein Produkttest, kein realer Vorfall und kein Kundenbeleg. Frühere Beispiele des bestehenden Leitfadens behalten ihren ausdrücklich erklärten Umfang.

Beschreibe zuerst, was ein Datensatz darstellt. Definiere für jede Spalte Bedeutung, Typ, Einheit, Zeitbezug und fehlende Werte. Ergänze Quellumfang, erlaubte Kategorien und Version. Prüfe die Definition an echten Einträgen: Andere müssen eine gemessene Null ohne Rückfrage von einer nicht verfügbaren Messung unterscheiden können.

## Vor der Rechnung das Verständnis klären

Ein Kollege liest impressions als im Oktober entstandene Anzeigen. Du meintest kumulierte Beobachtungen jeweils 24 Stunden nach Veröffentlichung. Beide können richtig rechnen und dennoch verschiedene Aussagen machen. Es fehlt eine Definition statt eines aufwendigeren Diagramms.

Das Datenwörterbuch erklärt die Datei und wird mit ihr aufbewahrt. Das W3C-Tabellenmodell trennt Zelltext und semantischen Wert und beschreibt Datensätze, Schlüssel und Metadaten. Unser kleines JSON ist ein eigenes Übungsformat, keine behauptete vollständige Umsetzung dieser Spezifikation.

## Zuerst Einheit und Schlüssel festlegen

Ist eine Zeile ein Beitrag, eine Beobachtung dieses Beitrags, ein täglicher Kontowert oder eine Interaktion? Wird derselbe Beitrag in mehreren Altersstufen gemessen, ist post_id allein nicht über die ganze Beobachtungstabelle eindeutig. Erkläre einen passenden zusammengesetzten Schlüssel oder eine Beobachtungskennung.

Das Beispiel enthält je eine Beobachtung pro fiktivem Beitrag im Alter von 24 Stunden. Die kurzen Kennungen sind Übungswerte statt tatsächlicher LinkedIn-URNs. observed_at enthält ausdrücklich UTC. Keine Zeile ist eine echte Kontomessung.

## Definitionen schreiben, die Streitfragen beantworten

Notiere zu jedem Feld Typ, erlaubte Werte, Einheit und Darstellung fehlender Angaben. Erkläre bei Zahlen Kennzahl und Erfassungszeitpunkt. Definiere unknown, statt jeden Eintrag zwangsläufig als organisch zu behandeln. Ein Zeitstempel braucht Ereignisbedeutung und Zeitzonenbezug.

Eine eingetragene Kategorie bleibt eine Angabe, solange die Quelle sie nicht bestätigt. Das Wörterbuch beweist weder organische Verteilung noch vollständige Erfassung. Halte Quellgrenzen neben den Felddefinitionen fest, damit eine saubere Struktur nicht für geprüfte Wahrheit gehalten wird.

| Beispielspalte | Bedeutung | Regel für fehlende Werte |
| --- | --- | --- |
| post_id | Fiktive Textkennung eines Beitrags | In der Übung erforderlich |
| observed_at | UTC-Zeitpunkt der Beobachtung | Erforderlich; kein Veröffentlichungszeitpunkt |
| post_age_hours | Beitragsalter in Stunden bei Beobachtung | Erforderlich und nichtnegativ |
| impressions | Bis zu diesem Alter beobachtete Anzeigen | Leer bedeutet nicht verfügbar; 0 bedeutet gemessene Null |
| distribution | Angabe organic / paid / mixed / unknown | unknown bei ungeklärter Verteilung |

## Die drei Beispieleinträge abgleichen

Lade reporting-example.csv und data-dictionary.json gemeinsam. Die konstruierten Impressionswerte lauten 0, leer und 250. Alle Einträge tragen ein Alter von 24 Stunden. Erster und dritter sind als organic angegeben, der leere Eintrag als unknown.

Es gibt drei Datensätze, zwei verfügbare Impressionswerte, eine gemessene Null und eine nicht verfügbare Angabe. Zwei Einträge erfüllen die erklärte Auswahl organisch und beobachtet. Ihre Summe ist 250. Alle drei als vollständig zu bezeichnen wäre falsch, selbst wenn die Umdeutung von leer zu null hier zufällig dieselbe Summe ergäbe.

## Bedeutungsänderungen ausdrücklich versionieren

Wer impressions von der 24-Stunden-Beobachtung auf den heutigen Gesamtstand umstellt, verändert den Zeitbezug. Verstecke das nicht hinter derselben Überschrift. Dokumentiere neue Version, betroffene Dateien und tatsächliche Umrechenbarkeit. Ohne damalige Beobachtung lässt sich der alte 24-Stunden-Wert womöglich nicht wiederherstellen.

Auch unknown durch organic zu ersetzen verändert die Auswahl. Erhalte die frühere Angabe und den Beleg für eine Korrektur. Eine Versionsnummer allein reicht nicht: Beschreibe Änderung und erneut zu prüfende Ergebnisse.

1. Version und Quellumfang festhalten.
2. Datensatzeinheit, Schlüssel und Zeitbezug definieren.
3. Typen, Einheiten, Kategorien und fehlende Werte beschreiben.
4. Null, fehlenden Wert und normalen Eintrag durchgehen.
5. Bedeutungsänderungen vor Wiederverwendung einer alten Auswertung dokumentieren.

## Datei, Bedeutungsfassung und Auswertung zusammenbinden

Ein Dateiname allein zeigt nicht, mit welchem Wörterbuch eine Tabelle ausgewertet wurde. Halte in einem Übergabestand die tatsächliche Datenreferenz, Wörterbuchfassung, Zeileneinheit und verwendete Auswahlregel zusammen. Ein optionaler lokaler Dateihash kann gleiche Bytes erkennen; er bestätigt weder Herkunft, Erlaubnis noch sachliche Richtigkeit. Publiziere keine privaten Rohdateien nur, um eine Referenz vollständig aussehen zu lassen.

Drei konstruierte Zusatzfälle: G1 bindet F1 an D1 und die erklärte Auswahl „organic und beobachtet“; die ursprünglichen Werte 0, leer und 250 ergeben weiterhin zwei verfügbare Werte und die Auswahlsumme 250. G2 bindet dieselbe F1-Datei an D2, obwohl D2 „aktuell lebenslang“ statt „nach 24 Stunden“ definiert; der Bedeutungsabgleich scheitert, selbst bei gleichen Bytes. G3 hat keine Erklärung für leere Werte; der Zahlenwert bleibt unbekannt, statt durch Null ersetzt zu werden.

W3C empfiehlt nachvollziehbare Metadaten, erkennbare Fassungen und Änderungsgeschichte. Unser kleiner Übergabestand ist eine eigene Übungsform und keine vollständige Umsetzung dieser Empfehlung oder von CSVW. Er notiert getrennt, ob Dateiidentität, Bedeutungsfassung, Auswahlregel und tatsächliche Neuberechnung geprüft sind. Fehlende historische Beobachtungen lassen sich durch ein neues Wörterbuch nicht nachträglich erzeugen.

| Übungsbindung | Was sie festhält | Was sie nicht belegt |
| --- | --- | --- |
| Datenreferenz F1 | Welche vorhandene Datei gemeint ist | Vollständige Erhebung oder Erlaubnis |
| Dateiidentität | Gleiche Bytes bei tatsächlichem Vergleich | Sachliche Richtigkeit |
| Wörterbuch D1 | Einheit und 24-Stunden-Bedeutung | Vergleichbarkeit mit Lebenszeitwerten |
| Auswahlregel | organic und beobachtet | Dass unknown organisch wäre |
| Null/leer | 0 beobachtet; leer nicht verfügbar | Dass leere Felder Null bedeuten |
| Neuberechnung | Tatsächlich geprüft oder offen | Erfolg allein durch neues Versionsetikett |

Die ursprünglichen drei Datensätze und ihr Wörterbuch bleiben unverändert; G1–G3 sind zusätzliche konstruierte Übergabefälle.

## Die Übergabe mit einer Frage prüfen

Lass eine prüfende Person ohne mündliche Hilfe den fehlenden Wert, die gemessene Null und die genaue Auswahl für die Summe bestimmen. Gelingt das nicht, verbessere die Definition vor dem Diagramm. Das ist eine vorgeschlagene Aufgabe; diese Übung behauptet keine unabhängige Prüfung oder gemessene Leserwirkung.

Das Wörterbuch erklärt Daten und erteilt keine Weitergabeerlaubnis. Private Referenzen bleiben geschützt; öffentlich wird nur eine passende minimale Ableitung. Der verwandte Belegleitfaden verbindet eine konkrete veröffentlichte Aussage mit Dateien und Rechenweg. Das ist eine andere Aufgabe als Spalten zu definieren.

## Quellen und Grenzen

- [W3C: tabular rows, keys, cell values and metadata](https://www.w3.org/TR/tabular-data-model/)
- [Original fictional reporting table](https://wrapped.li/blog-assets/data-workflows/reporting-example.csv)
- [Original versioned data dictionary](https://wrapped.li/blog-assets/data-workflows/data-dictionary.json)
- [Original fictional examples, inspector source and reproducible checks (ZIP)](https://wrapped.li/blog-assets/data-workflows/worked-files-and-source.zip)
- [W3C: metadata, versioning and locale-neutral representations (declared scope)](https://www.w3.org/TR/dwbp/)
