Table2RDF automatisiert die Verarbeitung von Excel-Arbeitsblättern, mappt die Daten mit Ontotext Refine und lädt die resultierenden RDFs in GraphDB.
Damit das Tool funktioniert, müssen die Informationen in der Excel-Datei einer vorgegebenen Struktur folgen. Eine Excel-Vorlage ist im Repository enthalten. Ob die Informationen in einem Arbeitsblatt oder auf mehrere Arbeitsblätter verteilt sind, ist egal.
Die Schritte können als gesamten Workflow oder einzeln ausgeführt werden.
- Excel-Vorlage: Im Repo enthalten.
- PostgreSQL: Installation erforderlich (muss nicht aktiv laufen).
Downloads z.B.: https://www.pgadmin.org/download/ oder https://www.postgresql.org/download/ - Ontotext Refine
- Datei
ontorefine-cli-1.2.1-jar-with-dependencies.jarmuss im selben Ordner wie Table2RDF.py liegen. - Ontotext Refine muss installiert und gestartet sein (Client greift auf
localhostzu).
Installation: https://www.ontotext.com/products/ontotext-refine/
- Datei
- GraphDB: Installation und laufender Dienst (Zugriff über
localhost).
Installation: https://graphdb.ontotext.com/
Wichtig: Sowohl Ontotext Refine als auch GraphDB müssen aktiv laufen. Nur installiert zu sein reicht nicht — sonst treten Fehler auf.
- Laden der Excel-Datei.
- Auswahl des/der Arbeitsblattes/Arbeitsblätter, die exportiert werden sollen.
- Exportieren des Arbeitsblattes, in dem die Prefixes definiert sind.
- Generieren der URIs über PostgreSQL.
- Vorgabe: PostgreSQL muss installiert sein (die Installation genügt; der Dienst muss nicht laufen).
- Ausführen des Mappings mit Ontotext Refine.
- Vorgaben:
ontorefine-cli-1.2.1-jar-with-dependencies.jarliegt im gleichen Ordner wie Table2RDF.py.- Ontotext Refine ist installiert und gestartet (Client nutzt
localhost).
- Hinweis: Dieser Schritt muss zweimal ausgeführt werden:
- für URI-Dateien ohne Literals
- für URI-Dateien mit Literals
- Laden der generierten Triples entweder in ein bestehendes oder neues Repository.
- Optional: Ein bestehendes Repository kann zunächst gelöscht und anschließend neu angelegt werden.
- Wichtig: Projekte/Exports aus Ontotext Refine ohne und mit Literals müssen separat, aber in dasselbe GraphDB-Repository geladen werden.
- Vorgabe: GraphDB muss installiert sein und laufen (Zugriff via
localhost).
- Um die geforderte Struktur sicherzustellen, muss das mitgelieferte Excel-File verwendet werden.
- Wenn Dateien nicht händisch generiert werden, muss die Reihenfolge eingehalten werden, es können aber alle Schritte auch einzeln ausgeführt werden.
- Falls der Zugriff auf
localhostfehlschlägt:- Überprüfen, ob Ontotext Refine bzw. GraphDB wirklich laufen.
- Kontrollieren der Ports und Firewall-Einstellungen.
- Vorlagetabelle sowie alle Scripts für PostgreSQL, Ontotext Refine und GraphDB:
Gerald Hiebel, Universität Innsbruck, Institut für Archäologien und Digital Science Center Gerald.Hiebel@uibk.ac.at; https://www.uibk.ac.at/archaeologien/institut/mitarbeiter/gerald-hiebel/gerald_hiebel.html - Ontotext Refine Client: https://github.com/Ontotext-AD/ontorefine-client — Apache-2.0 license
Viel Erfolg mit Table2RDF!
Im Ordner "example" befindet sich eine Beispieltabelle. In dieser Tabelle ist im Arbeitsblatt "generic_CRM" völlig generisches Beispiel mit folgenden Angaben angeführt:
- 3 Namespaces (S20, A8, E19)
- 1 Ort
- 1 Grabung mit Start- und Enddatum
- 1 Sondage
- 2 Schichten
- je 2 Funde in den Schichten mit Material und Typ sowie Geometrie der Einmessung (Punkt) Dies ist ein Beispiel mit unterschiedlichen Namedspaces im gleichen Arbeitsblatt und ist völlig generisch. Hier reicht der Export dieses einzelnen Arbeitsblattes für einen Knowledge Graphen mit 3 Namedspaces
In den Arbeitsblättern "S20_example", "A8_example" und "E19_example" ist ein fiktives Beispiel mit drei Arbeitsblättern für drei unterschiedliche Namedspaces in einem Knowledge Graphen aufgeführt Das Beispiel besteht aus den gleichen "Einheiten" wie oben angeführt, ist aber mit Beispielen gefüllt. Um ein Knowledge Graphen mit drei Namedspaces zu erhalten, müssen alle drei Arbeitsblätter exportiert werden.
-
Table2RDF.py in der Aufgabeaufforderung starten
-
"Schritt 1: Triple Export"
- Exceldatei mit "Excel-Datei auswählen" laden
- unter "Arbeitsblätter für Triples auswählen" entweder "generic_CRM" oder alle drei "S20_example", "A8_example" und "E19_example" auswählen
- "Triples exportieren" die Arbeitsblätter exportieren
- "Next" oder oben nächten Reiter auswählen
-
"Schritt 2: Prefix Export"
- mit "Excel-Datei auswählen" die Excel-Datei aus Schritt 1 laden.
- Arbeitsblatt "prefixes" auswählen
- "Prefixes exportieren"
- "Next" oder oben nächsten Reiter auswählen
-
"Schritt 3: SQL-Statements"
- Triples.csv und Prefixes.csv sind bereits ausgefüllt, wenn Schritt 1 und 2 erfolgt sind, ansonsten entsprechende .csv-Datei auswählen
- PostgreSQL-Verbindung angeben
- "SQL-Statement ausführen"
- "Next" oder oben nächsten Reiter auswählen
-
"Schritt 4: Ontotext Refine"
- Ontotext refine muss gestartet sein!
- Wenn Schritt 3 erfolgte, ist Triples_URI.tsv bereits vorausgefüllt, ansonsten entsprechende Datei auswählen
- "Projekt erstellen und Mapping anwenden"
- Wenn Schritt 3 erfolgte (und literals vorhanden sind), ist "Triples_URI_literals.tsv" bereits vorausgefüllt ansonsten entsprechende Datei auswählen
- "Projekt erstellen und Mapping anwenden"
- "Next" oder oben nächsten Reiter auswählen
-
"Schritt 5: GraphDB"
- GraphDB muss gestartet sein!
- Wenn Schritt 4 erfolgte, sind die beiden Felder der Ontotext Refine Projektnummern bereits vorausgefüllt, ansonsten entsprechende Nummer angeben
- "Repos laden/aktualisieren" und entweder "Auswahl übernehmen" oder unter "Neues Repository" neuen Namen für Repository angeben (mit "Repository löschen" kann ein bestehendes auch gelöscht und dann ggf. unter "Neues Repository" neu angelegt werden)
- "Knowledge Graph in GraphDB starten"
- wenn literals vorhanden sind "Knowledge Graph literals in GraphDB starten"
-
im Browser GraphDB aktualisieren, mit entsprechendem Repository verbinden und unter Graph overview Knowledge Graphen aufrufen.