Help:Daten aus einem Tabellenblatt in FactGrid eingeben: Difference between revisions

From FactGrid
Jump to navigation Jump to search
Line 40: Line 40:
* Spalte W bietet diesbezügliche Details - zumeist zu Ort.
* Spalte W bietet diesbezügliche Details - zumeist zu Ort.


== Die Objekte mit Basis-Informationen anlegen ==
== Über Datenüberlappungen nachdenken ==


Um die Personen anzulegen ist es nötig, ihnen in einem ersten Schritt Ausgangsinformationen zuzuweisen, an die die Q-Nummern für jede einzelne gekoppelt werden.
Projekte sollten es vermeiden Datenbankobjekte anzulegen, die bereits bestehen - im vorliegenden Fall: Personen-Items zu erzeugen, wo diese Personen bereits in der Datenbank bekannt sind.


Das kann sich einfacher oder schwieriger gestalten, je nachdem ob ein Vor-Abgleich mit der Datenbank nötig wird oder nicht. Der vorliegende Fall gestaltete sich übersichtlich. Wir konnten davon ausgehen, dass kaum ein Schüler bereits in der Datenbank notiert war.
In unübersichtlichen Datenlagen ist OpenRefine das Werkzeug der Wahl - das Programm verdient ein eigenes Tutorial. Es muss erst installiert und dann korrekt bedient werden werden.
 
Alternativ ist der Datenvergleich über VLookup möglich: Man lädt zu ihm i Frage kommende Paralleldaten aus der Plattform in die Datenbank um gleicht diese in einen Suchdurchgang spaltenweise ab - dazu mehr im Verlauf.
 
Der vorliegende Fall gestaltete sich übersichtlich: Wir konnten davon ausgehen, dass kaum ein Schüler bereits in der Datenbank notiert war. Die Basisabfrage
 
* [https://database.factgrid.de/query/index.html#%23title%3A%20Personen%2C%20die%20mit%20Heiligenstadt%20in%20Verbindung%20stehen%0ASELECT%20DISTINCT%20%3Fperson%20%3FpersonLabel%20%3Fpage%20WHERE%20%7B%0A%20%20%3Fperson%20%3Fprop%20wd%3AQ80796%20%3B%0A%20%20%20%20%20%20%20%20wdt%3AP2%20wd%3AQ7%20.%0A%20%20OPTIONAL%20%7B%20%3Fpage%20schema%3Aabout%20%3Fperson%20%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20schema%3AisPartOf%20%3Chttps%3A%2F%2Fwww.wikidata.org%2F%3E%20%7D%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%7D alle Personen, die mit Heiligenstadt in Verbindung stehen]
 
machte es einfach zu erfassen, dass hier erst einmal zur zwei Personen als Treffer in Frage kamen ([[Item:Q101778]] und [[Item:Q396051]]). Wir überprüften zudem separat unter den Heiligenstadt-Schülern Gotha-Bezüge, da Gothaer Bevölkerung umfassend erfasst war. [[Item:Q156903]] erwies sich als dritter Treffer. Alle anderen Personen waren absehbar Neulinge, so die angenehme Ausgangslage der Schule, die nicht in die bisherigen Netzwerke passte.
 
== Basisobjekte anlegen ==
 
Bei der Anlage der einzelnen Datenbankobjekte benötigen diese mindestens ein "Label". Praktisch ist es ihnen im selben Zug einige Basisdaten zuzuweisen, die es ermöglichen, die Ausgangstabelle in der Datenbank zu replizieren - in diesem Fall in der Reihenfolge der Einträge in der Ausgangsliste.
 
Das "Label", das FactGrid-Projekte im mit Wikidata geteilten Standard benutzen bietet die Vornamen gefolgt vom Nachnamen:


  Erika Maria Mustermann
  Erika Maria Mustermann


# In einem eigenen Blatt, bringe ich die drei Namensspalten D-E-F-G in die Wunschreihenfolge E-F-G-D und füge sie zusammen (geht bei geringem Wissen auch in Notepad oder Word)
Die Personenanlage führte ich, der Übersichtlichkeit halber, in einem eigenen Datenblatt durch
# Für die neu generierte Spalte mit den Anzeigenamen eröffne vier Spalten rechts von B, diese erhalten die Überschriften Lde, Len, Lfr, Les für Label auf Deutsch, Englisch, Französisch und Spanisch.
 
# Mit dem jeweiligen Projekt kläre ich, was für Eigenschaften die anzulegenden Objekte alle miteinander teilen - sie alle gehen in die erste Eingabe. Im vorliegenden Fall folgen diese Eigenschaften in den Spalten G bis K:
https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=444879751
:# Alle hier anzulegenden Objekte sind Menschen. Die diesbezügliche Aussage lautet ''qid (anzulegende Person) —  P2 (ist ein) — Q7 (Mensch)''. P2 wird in der CSV Datei, auf die wir hin arbeiten, die Überschrift von Spalte G, Q7 der Wert für alle Personen die ganze Spalte hinab.
 
:# Alle hier anzulegenden Personen sind, Spalte H, männlichen Geschlechts (P154 — Q18)
# im vorliegenden Fall, brachte ich dazu die [https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=158953953 Namensspalten D-G der Arbeitsseite] in die passende Reihenfolge Vornamen+Nachname. Word ist ein bequemes Werkzeug, um Formatierungszeichen wie Tabstops gezielt auszuwechseln. Beim Hin und Her zwischen Word und dem Google-Spreadsheet ist zudem Strg+Shift+Leertaste eine praktische Tastenkombination, um Daten "Values only", das heißt ohne Interferenzen allein als Text, wieder in das Google-Sheet zurückzuführen.
:# Alle besuchten, Spalte I, das Gymnasium Heiligenstadt (P160 — Q458481)
:* Die deutschen Label (Lde) finden sich im Blatt "[https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=444879751 Personen-Anlage] in Spalte C, in den Spalten D-F gab ich dieselben Angaben für englische, französische und spanische Namenanzeigen.
:# Alle sind, Spalte J, alphabetisch in derselben Quelle gelistet (P124 — Q459499)
:* Die Beschreibungsfelder Dde, Den, DFr, Des hob ich in der vorliegenden Eingabe für das Ende auf - bei ihnen stellt die Datenbank am Ende die Angaben in vier Sprachversionen zur Verfügung.
:# Alle sind, Spalte K, Teil von Heino Richards Projekt Thüringer Genealogie (P131 — Q459500)
:* Bei der Auswahl der Spalten G bis #, war das entscheidende Kriterium, dass sich die Angaben jeweils vollständig für die gesamte Spalte durchziehen ließen.
:* Spalte G: Alle Personen dieses Sets sind Menschen - die Aussagen dazu P2 (ist ein) kommt in Zeile 1, der Wert Q7 in die Spalte G hinab bis Zeile 5429.  
:* Spalte H bietet durchgehend die Aussage P154 — Q18, Geschlecht männlich für das gesamte Set.
:* Alle besuchten, Spalte I, das Gymnasium Heiligenstadt (P160 — Q458481)
:* Alle sind, Spalte J, in derselben Quelle gelistet P124 — Q459499
:* Alle sind, Spalte K, Teil desselben Forschungsprojekte: P131 — Q459500


Alle anderen Spalten weisen im vorliegenden Fall Lücken auf oder fordern mehr oder minder unangenehme Umformungsschritte ein und bleiben deshalb bei der Erstablage der Person vorerst auf Warteliste.
Alle anderen Spalten wiesen im vorliegenden Fall Lücken auf oder forderten Umformungs- und Abgleiche ein, sie kamen auf die Warteliste.


== Matching: Überprüfen, ob die Personen bereits in FactGrid bestehen ==
== Matching: Überprüfen, ob die Personen bereits in FactGrid bestehen ==

Revision as of 23:00, 24 June 2023

In der Betreuung von Projekten haben sich gemeinsame Google-Spreadshets als extrem hilfreiches Arbeitsinstrument erwiesen.

Zum einen kann man diese Spreadsheets von verschiedenen Seiten aus betreuen, zum anderen sind sie mit Excel-Grundkenntnissen auch von Geisteswissenschaftlern gut zu bedienen, vor allem aber erlauben sie im Verlauf direkte Übertritte in die Datenbank, in den beiden Eingabeformaten, die QuickStatements, das Werkzeug für Masseneingaben bereithält.

Auf dieser Seite eine knappe Anleitung dazu, wie man ein solches Datenblatt auf Eingaben vorbereitet. Das Beispiel ist eine Datei die zwischen User:Heino Richard und User:Olaf Simons eine Eingabe der Schülerliste vorbereitet, die Richard aus der 1929 veröffentlichten Schülerliste des Jahres 1929[1] Ende 2022 generierte.

https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=1040247030

Gemeinsames Datenblatt herstellen

  1. Überführen Sie die zu Bearbeitenden Projektdaten in ein Google-Spreadsheet. Damit dieses von verschiedenen Seiten aus bearbeitet werden kann, muss es freigegeben werden (im Musterfall bleibt diese Bearbeitbarkeit eingeschränkt, um den stabilen weiteren Bezug zu erlauben).
  2. Schalten Sie der Tabelle zwei Spalten vor - eine gute Praxis ist es, die erste stets rot und die zweite stets blau zu färben. Die rote Spalte wird mit einer durchlaufenden Nummerierung versehen, die zweite ist erst einmal leer und wird im Verlauf die Q-Nummern erhalten, die die Datenbank den einzelnen Schülern zuweisen wird.
  3. Über die rotes Spalte lässt sich im Verlauf nach beliebigen Sortierungen wieder auf die Origfinalsortierung zurückkommen. Das ist praktisch, da viele Projekte eine ihnen vorliegende Quelle exakt abbilden. Zu deren Sortierung lässt sich nun jederzeit wieder zurückkommen, was bei Fehlersuchen später extrem interessant ist.
  4. Machen Sie eine Kopie des Ausgangs-Datenblatts (das Kontext-Menü des Tabs unten auf der Seite erlaubt das). Nutzen sie diese Kopie für die Vorbereitung aller weiteren Eingaben. Auf der ersten Seite bleibt nun das Original des Projektes erhalten. Über die roten Spalten lassen sich dabei mit "Vlookup" jederzeit wieder ganze Tabellenspalten wieder korrigieren, falls hier Informationen durcheinandergeraten sollten - zu "Vlookup" im Verlauf.

Im vorliegenden Beispiel ist dies die Seite, von der aus die nächsten Schritte erfolgen:

https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=158953953

Vorbereitende Checks

In Projekten schleichen sich immer wieder datentechnische Unsauberkeiten ein:

  1. Überprüfen Sie in einem langsamen Durchlauf von oben nach Unten, ob es in der vorgelegten Tabelle Zeilenbrüche gibt - mitunter legen Projekte kleine Aufzählungen in Zellen an, die bei der Dateneingabe später Verwirrung erzeugen. Jede Zeile sollte eine die Höhe nur einer Zeile aufweisen.
  2. Erfassen Sie ob in einzelnen Spalten mehre Spalten stecken, hier werden Trennungen nötig. Eine Tabelle kann etwa Wohnorte von Personen notieren und wenn eine Person sukzessive an mehreren Orten lebte in der entsprechenden Spalte mehrere Werte in Angaben wie "Köln, ab 1910 München" aufweisen. in solchen Fällen werden Trennungen nötig.
  3. Erfassen Sie Bemerkungen, die in Zellen gesetzt wurden - bei Jahreszahlen ist das Beliebt mit Fragezeichen, ca.-Angaben etc. In der späteren Eingabe darf in einer Spalte zu Kalenderdaten nichts als ein einziges Kalenderdatum stehen. Zusatznotizen müssen in einem eigenen Qualifier zum Datum gesetzt werden und benötigen dazu eigene Tabellenzellen.

Die Spalte verstehen

Die Tabelle, die Heino Richard vorlegte ([https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=1040247030 dieses Tabellenblatt), kam bereits mit einiger Vorerfahrung zustande.

  • Spalte A bietet den Nachnamen.
  • Die Spalten E-G bieten die Vornamen von 1 bis 3 isoliert an.
  • Spalte H das Geburtsjahr,
  • Spalte I den Geburtsort.
  • In den Spalten J und K ist erfasst von wann bis wann der Schüler die Schule besuchte
  • Spalte L notiert Studienunterbrechungen
  • Die Spalten M-P haben bereits alle multiplen Berufsangaben aufgeteilt.
  • Die Spalten Q-S tun dasselbe mit bis zu drei Wohnortangaben
  • Spalte T notiert das Sterbedatum
  • Spalte den Sterbeort
  • Spalte V erfasst zuweilen eine Angabe zur Todesursache, davon scheint die Schule vor allem bei Kriegsgefallenen Informationen erhalten zu haben.
  • Spalte W bietet diesbezügliche Details - zumeist zu Ort.

Über Datenüberlappungen nachdenken

Projekte sollten es vermeiden Datenbankobjekte anzulegen, die bereits bestehen - im vorliegenden Fall: Personen-Items zu erzeugen, wo diese Personen bereits in der Datenbank bekannt sind.

In unübersichtlichen Datenlagen ist OpenRefine das Werkzeug der Wahl - das Programm verdient ein eigenes Tutorial. Es muss erst installiert und dann korrekt bedient werden werden.

Alternativ ist der Datenvergleich über VLookup möglich: Man lädt zu ihm i Frage kommende Paralleldaten aus der Plattform in die Datenbank um gleicht diese in einen Suchdurchgang spaltenweise ab - dazu mehr im Verlauf.

Der vorliegende Fall gestaltete sich übersichtlich: Wir konnten davon ausgehen, dass kaum ein Schüler bereits in der Datenbank notiert war. Die Basisabfrage

machte es einfach zu erfassen, dass hier erst einmal zur zwei Personen als Treffer in Frage kamen (Item:Q101778 und Item:Q396051). Wir überprüften zudem separat unter den Heiligenstadt-Schülern Gotha-Bezüge, da Gothaer Bevölkerung umfassend erfasst war. Item:Q156903 erwies sich als dritter Treffer. Alle anderen Personen waren absehbar Neulinge, so die angenehme Ausgangslage der Schule, die nicht in die bisherigen Netzwerke passte.

Basisobjekte anlegen

Bei der Anlage der einzelnen Datenbankobjekte benötigen diese mindestens ein "Label". Praktisch ist es ihnen im selben Zug einige Basisdaten zuzuweisen, die es ermöglichen, die Ausgangstabelle in der Datenbank zu replizieren - in diesem Fall in der Reihenfolge der Einträge in der Ausgangsliste.

Das "Label", das FactGrid-Projekte im mit Wikidata geteilten Standard benutzen bietet die Vornamen gefolgt vom Nachnamen:

Erika Maria Mustermann

Die Personenanlage führte ich, der Übersichtlichkeit halber, in einem eigenen Datenblatt durch

https://docs.google.com/spreadsheets/d/1ASPscc70wyNW66-MVhr86ib9lR0zIJIuBcb16eQWclY/edit#gid=444879751

  1. im vorliegenden Fall, brachte ich dazu die Namensspalten D-G der Arbeitsseite in die passende Reihenfolge Vornamen+Nachname. Word ist ein bequemes Werkzeug, um Formatierungszeichen wie Tabstops gezielt auszuwechseln. Beim Hin und Her zwischen Word und dem Google-Spreadsheet ist zudem Strg+Shift+Leertaste eine praktische Tastenkombination, um Daten "Values only", das heißt ohne Interferenzen allein als Text, wieder in das Google-Sheet zurückzuführen.
  • Die deutschen Label (Lde) finden sich im Blatt "Personen-Anlage in Spalte C, in den Spalten D-F gab ich dieselben Angaben für englische, französische und spanische Namenanzeigen.
  • Die Beschreibungsfelder Dde, Den, DFr, Des hob ich in der vorliegenden Eingabe für das Ende auf - bei ihnen stellt die Datenbank am Ende die Angaben in vier Sprachversionen zur Verfügung.
  • Bei der Auswahl der Spalten G bis #, war das entscheidende Kriterium, dass sich die Angaben jeweils vollständig für die gesamte Spalte durchziehen ließen.
  • Spalte G: Alle Personen dieses Sets sind Menschen - die Aussagen dazu P2 (ist ein) kommt in Zeile 1, der Wert Q7 in die Spalte G hinab bis Zeile 5429.
  • Spalte H bietet durchgehend die Aussage P154 — Q18, Geschlecht männlich für das gesamte Set.
  • Alle besuchten, Spalte I, das Gymnasium Heiligenstadt (P160 — Q458481)
  • Alle sind, Spalte J, in derselben Quelle gelistet P124 — Q459499
  • Alle sind, Spalte K, Teil desselben Forschungsprojekte: P131 — Q459500

Alle anderen Spalten wiesen im vorliegenden Fall Lücken auf oder forderten Umformungs- und Abgleiche ein, sie kamen auf die Warteliste.

Matching: Überprüfen, ob die Personen bereits in FactGrid bestehen

Das Matching gab im vorliegenden Fall nur drei Treffer, die weiter unten im Alphabet folgten. Bei ihnen setzten wir die Q-Nummern in die blaue Spalte und glichen die Labels ab.

Die Objekte mit Basis Information anlegen

Das Anlegen von Personen ist über CSV Tabellen übersichtlich durchführbar, bei allen weiteren Eingaben bevorzuge ich in QuickStatements die Version 1-Eingabe bei der direkt vom Tabellenblatt eingegeben wird.

  1. Für die CSV-Eingabe muss aus den Spalten D-K eine CSV Tabelle erstellt werden. Dabei müssen die Text-Spalten D-F (in denen keine Q-Nummern stehen) Anführungsstriche erhalten. Im Google Spreadsheet geht das mit Strg+H und den Variablen ^ für Zellenbeginn und $ für Zellenende in Wechselbefehlen bei denen "Search using regular expressions" anzuklicken ist.
  2. Wenn die Namen in den Spalten D-F alle in Anführungsstrichen stehen, kann man die Spalten B-K markieren und in einem Notepad die Tabulatorstellen zwischen den Werten durch Kommata ersetzen. Man hat danach eine CSV-Datei, eine Datei mit Comma-Separated-Values. Zur Demonstration lege ich diese umgeformte Datei hier im Google Sheet ab
  3. Im FactGrid Menü QuickStatements öffnen, dort die CSV-Datei im Eingabefenster ablegen. (Bei der erstmaligen Bedienung wird eine Aufforderung sich einzuloggen erfolgen.)
  4. Auf CSV-Input klicken und überprüfen, ob die Eingabe wie gewünscht geschieht und dann mit Import CSV commands absenden.

Die bestehende Tabelle mit Q-Nummern ausstatten

QueryService, P131-Funktionalität und VLOOKUP hier erklären

Datumsangaben

Ortsangaben

Berufsangaben

  1. Karl Pabst (ed.), Verzeichnis der Schüler des Staatl. kathol. Gymnasiums zu Heiligenstadt (Heiligenstadt, 1929-05-22).