Semantische Modellierung mit Drupal 8

Fokus des WissKI-Projektes war, die Umsetzung der gängigen Datenspeicherung des Semantic Web in Form von Tripeln mit der Funktionalität von Drupal zu kombinieren. Naheliegend wäre dabei ein Ansatz, wie ihn auch Semantic Mediawiki verfolgt: Alle Individuen entsprechen eigenen Websites und alle Relationen entsprechen Datenfeldern. Versucht man dies direkt mit Drupal umzusetzen, so entsprechen Individuen in Drupal den Entities, Konzepte den Bundles und Relationen den Fields.

https://lh3.googleusercontent.com/nc90HuH9CK1PBWvzWneN9-JrvhB2QYZ9r1orxier5EH85Qg89_a3fiFKq-l8mgkXH7W7q8jMBmoXbbMTJOitGMuNaZn2D_NMaRUPo-Mw2Ig8F0yjw68eTl7be_jDeV0paGDssuf5 Aufgrund der starken Anforderungen von ISO 21127 an einen komplexen Datengraphen setzt WissKI einen noch komplexeren Ansatz um. Die integrale Komponente des Systems ist der sogenannte „Pathbuilder”. Er unterstützt den Systemadministrator bei der Erzeugung von „Pfaden” durch die Ontologie. Ein Pfad ist dabei eine Verkettung von n Konzepten und n-1 Relationen zwischen den Konzepten. Bei der Speicherung von Daten anhand eines Pfades wird zuerst pro Konzept ein Individuum erzeugt. Anschließend  werden die entstandenen Individuen untereinander durch die Relationen nach den Vorgaben des Pfades verbunden. Am Ende eines solchen Pfades steht in WissKI stets eine Relation auf einen primitiven Datentyp, in dem die eigentliche Eingabe gespeichert wird. Zur Speicherung von mehreren Eingaben über dasselbe Subjekt können Pfade in sogenannte Gruppen zusammengefasst werden. Die Gruppe definiert dabei den gemeinsamen Anteil aller ihr zugehörigen Pfade. Dabei entspricht der triviale Fall (Gruppen und Pfaden der Länge 1) der oben beschriebenen Implementierung von OWL direkt. Sie erlaubt aber zusätzlich die Implementierung komplexerer Modellierungen, wie sie das CIDOC CRM vorschreibt. Für die Implementierung in Drupal bildet der Pathbuilder eine Zwischenschicht zwischen dem Triplestore mit den dort in Tripeln abgespeicherten Daten auf der einen Seite und Drupal mit der Datenspeicherung auf Basis von Entity Types, Bundles, Entities und Fields auf der anderen. Er erzeugt dabei ein Mapping von Gruppen und Untergruppen im Pathbuilder auf Bundles und referenzierte Bundles in Drupal sowie von Pfaden auf Datenfelder. Durch diesen Mechanismus wird die vollständige Komplexität des Semantic Web-Ansatzes sowie des CIDOC CRM vor dem eigentlichen Benutzer versteckt, der lediglich Formulare ausfüllen muss.

Das System gibt dabei die Möglichkeit eine beliebige auf OWL basierende Ontologie zu laden. Bei der Erstellung von Pfaden auf Basis der Ontologie kann das System den Administrator durch die Berechnung der für die einzelnen Schritte (anhand von Domain und Range) möglichen Konzepte und Relationen unterstützen.