OntoWiki-basierte Entwicklung einer Video-Plattform
Als Grundlage dient das Wiki des entsprechenden Repositorys. (https://github.com/AKSW/site.ontowiki/wiki)
- Clone Extension von GitHub nach /extensions (Innerhalb des Verzeichnisses /extensions “git clone https://github.com/AKSW/site.ontowiki.git site” ausführen);
- Neue (leere) Knowledge Base erstellen;
- Die Source Codes der neuen Knowledge Base öffnen („View all Ressources“ Reiter „Source“);
- Inhalte der Datei model.n3 in /extensions/site/sites/example/data/model.n3 außer der @base-Zeile (@base http://localhost/Site) kopieren und in Source Codes beim Schritt 3 einsetzen;
- Die Datei /extensions/site/sites/example/config.ini entsprechend anpassen (model = "@base-URI der Knowledge Base")
- Eine Datei /extensions/site.ini mit dem Inhalt enabled = true; erstellen;
- Innerhalb des Verzeichnisses /extensions/site/sites/, den Ordner „example“ kopieren und umbenennen (z.B. „local“);
- „Name“-Feld in der Datei /extensions/site/sites/local/config.ini ändern (Name für Tab)
- Das Feld „defaultSite“ im „[private]“-Teil der Datei /extensions/site.ini mit dem neuen Namen („local“) aktualisieren (in diesem Fall defaultSite = "local").
Inhalte können grundsätzlich nur mithilfe von SPARQL-Abfragen dargestellt werden.
Der Code muss im entsprechenden Site Model implementiert werden. Hier: /var/www/html/OntoWiki/extensions/site/sites/local/types
<?php
$headlineQuery = 'PREFIX vidp: <https://bmake.th-brandenburg.de/vidp#>' . PHP_EOL;
$headlineQuery.= 'PREFIX schema: <https://schema.org/>' . PHP_EOL;
$headlineQuery.= 'PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>' . PHP_EOL;
$headlineQuery.= 'SELECT ?videoLecture' . PHP_EOL;
$headlineQuery.= 'WHERE {?videoLecture rdf:type vidp:VideoLecture.' . PHP_EOL;
$headlineQuery.= '}' . PHP_EOL;
?>
<h4><?= $this->_('Video Lectures') ?></h4>
<ul>
<?= $this->querylist($headlineQuery, 'local/types/person.phtml', array(), array('prefix' => '<li>', 'suffix' => '</li>')) ?>
</ul>
Im oberen Teil erfolgt die Einbindung des entsprechenden Models, Schemas usw. Im unteren Teil erfolgt die eigentliche Abfrage auf Basis von SPARQL.
Bild 1: Übersicht über alle ElementeBild 2: Ansicht eines einzelnen Elements