Semantische Vorlagen

From semantic-mediawiki.org
Semantic MediaWiki-
Nutzeranleitung
Einführung
Browsen und Suchen
Semantisches Browsen
Spezial:Semantische Suche
Spezial:Browsen
Semantische Suche
Seitenauswahl
Informationsanzeige
Ergebnisformate
Eingebettete Abfragen
Abfragen abfragen
Konzepte
Schlussfolgerungen
Bearbeiten
Attribute und Datentypen
Spezialattribute
Help:Inverse properties/de
Eigene Maßeinheiten

Semantische Vorlagen

Servicelinks

Semantisches Web
RDF-Export

Externe Programme

Vokabular importieren

Semantic MediaWiki-
Administratorenanleitung

Semantische Vorlagen sind MediaWiki-Vorlagen, die mit Hilfe von Semantic MediaWiki um semantische Annotationen erweitert wurden. Diese bieten zwei wesentliche Vorteile:

  • Benutzer können semantische Daten erfassen, ohne die spezifischen SMW-Befehle kennen zu müssen
  • semantische Daten werden einheitlich erfasst, d.h. die Benutzer müssen bei der Seitenbearbeitung nicht erst nach dem richtigen Attribut bzw. der richtigen Kategorie suchen

Daher stellen semantische Vorlagen einen weit verbreiteten Weg dar, um mit semantischen Annotationen umzugehen; in vielen Wikis werden semantische Daten daher auch ausschließlich über Vorlagen erfasst.

Zu diesem Zweck besonders geeignet sind Infobox-Vorlagen, da diese von Natur aus eine strukturierte Datengrundlagen und eine häufig wesentlich schönere Darstellung bieten.

Einfache semantische Vorlagen – ein Beispiel[edit]

Vorlagen, ob mit oder ohne Semantik, können eine sehr einfache Form haben. Wenn wir zum Beispiel den Wert für die Oberfläche eines astronomischen Objekts auf einer Wikiseite angeben, möchten wir dies vielleicht anzeigen als

6.088 × 1018 m²

was wir erreichen können, indem wir schreiben:

6.088 × 10<sup>18</sup> m²

Diese Vorgehensweise ist jedoch ungünstig. Wir würden stattdessen eher eine Vorlage:Oberfläche für Flächen entwickeln, damit Bearbeiter einfach

{{Oberfläche|6.088|18}}

schreiben können und die Vorlage den Rest erledigt: die richtige Darstellung der Oberfläche und die semantische Erfassung derselben.

MediaWiki-Vorlagen haben demnach einen unübersehbaren Wert für die einheitliche und einfache Erfassung sowie Darstellung von Daten in einem Wiki (sofern die Benutzer mit der Verwendung von Vorlagen vertraut sind).

Durch die Verwendung von SMW erreichen wir, dass Werte für eine Oberfläche automatisch zu semantischen Annotationen werden und sowohl in der Faktenbox erscheinen als auch sich über die Suche abrufen lassen.

Wir möchten daher ein semantisches Attribut mit dem Namen Oberfläche erstellen, welches auf den benutzerdefinierten Datentyp Fläche zurückgreift.

Bekanntlich bietet SMW die Möglichkeit, in einem Schritt einem Attribut einen Wert zuzuordnen und eine abweichende Darstellung festzulegen, denn einerseits kann der Datentyp Zahl auch mit der wissenschaftlichen Schreibweise umgehen und andererseits ist ähnlich wie bei Wikilinks ein benutzerdefinierten Anzeigetext erlaubt:

[[Oberfläche::6.088e18 m²|6.088 × 10<sup>18</sup> m²]]

Diese Schreibweise wäre an sich jedoch noch umständlicher und darüber hinaus in hohem Maße fehleranfällig. Allerdings können wir sie in abgewandelter Form in unsere Oberflächen-Vorlage übernehmen, sodass Bearbeiter wie oben angesprochen tatsächlich einfach nur

{{Oberfläche|6.088|18}}

schreiben müssen, was obendrein die Lesbarkeit des Quelltexts fördert. Um dies zu erreichen, programmieren wir die Vorlage Oberfläche wie folgt:

[[Oberfläche::{{{1}}}e{{{2}}} m²|{{{1}}} × 10<sup>{{{2}}}</sup> m²]]

Siehe hierzu die Beispielseite Sol und deren Quelltext für die Anwendung einer semantischen Vorlage.

Übrigens markiert das Oberfläche::-Attribut in der Vorlage nicht die Vorlagenseite selbst; es hat lediglich auf den Seiten eine Wirkung, die die Vorlage verwenden. Dies ist darauf zurückzuführen, dass SMW standardmäßig keine semantische Annotationen im Namensraum Vorlagen: auswertet. Wenn diese Einstellung (vom Seitenadministrator) geändert sein sollte, sollte der Vorlagenquelltext mit dem <includeonly>-Befehl eingeschlossen werden, um eine semantische Markierung der Vorlagenseite zu verhindern. Wie bei gewöhnlichen MediaWiki-Vorlagen kann innerhalb eines <noinclude>-Befehls eine Dokumentation der Vorlage erfolgen.

Semantische Infobox-Vorlagen[edit]

Viele MediaWiki-Seiten verwenden wesentlich kompliziertere Vorlagen, um einen Grundstock an Informationen darzustellen. Zum Beispiel benutzen Wikipedia-Autoren in Artikeln über Städte und Dörfer eine Vorlage, in der allgemeine Kenndaten hinterlegt werden, wie etwa das folgende (vom Wikipedia-Artikel über Karlsruhe):

{{Infobox Gemeinde in Deutschland
|Art               = Stadt
|Wappen            = Coat of arms de-bw Karlsruhe.svg
|Breitengrad       = 49.014
|Längengrad        = 8.4043
|Lageplan          = Baden-Württemberg KA (town).svg
|Lageplanbeschreibung = Lage der Stadt Karlsruhe<br />in Baden-Württemberg
|Bundesland        = Baden-Württemberg
|Regierungsbezirk  = Karlsruhe
|Landkreis         = Stadtkreis
…

Üblicherweise stellt eine solche Vorlage (in diesem Fall Vorlage:Infobox Gemeinde in Deutschland) die Informationen in einer schön formatierten Tabelle an. Solche gleichmäßig über Vorlagen erfasste Informationen sind prädestiniert dafür, in semantische Annotationen umgewandelt zu werden, sodass bestehende Artikel mit dieser Vorlage nachträglich um semantische Daten ergänzt werden, ohne dass die Artikel selbst geändert werden müssen.

Die Beispielseite Demo:California auf diesem Wiki veranschaulicht die Verwendung einer einfachen Infobox-Vorlage, die um semantische Annotationen erweitert wurde.

Semantische Vorlagen richtig verwenden[edit]

Nach dem obigen Schema lassen sich alle möglichen Arten semantischer Vorlagen von beliebiger Komplexität erstellen. Nichtsdestotrotz sollten dabei mehrere Problemstellungen berücksichtigt werden.

Automatische Annotationen erfordern die Einhaltung des Formats[edit]

Wenn Vorlagen-Werte automatisch in eine semantische Annotation umgewandelt werden, ist zu beachten, dass die angegebenen Werte dem erwarteten Format entsprechen müssen. So ist es zwar eine gute Idee, das Attribut Einwohnerzahl einer Stadt mit dem Datentyp Zahl zu beschreiben. Allerdings nimmt dieses scheinbar numerische Feld in manchen Infobox-Vorlagen nicht nur eine einzige Zahl oder eine Reihe von Zahlen auf. Im Falle des Wikipedia-Artikels über Frankreich beinhaltet es etwa ebenso Erläuterungen in Textform. Solche Spezialfälle sollten bei der Entwicklung semantischer Vorlagen stets im Hinterkopf behalten werden.

In diesem Fall wäre es jedoch denkbar, das Feld Einwohnerzahl nicht mit einer automatischen Annotation zu versehen und es stattdessen dem Benutzer zu überlassen, die Einwohnerzahl an den entsprechenden Stellen mit [[Einwohnerzahl::...]] zu markieren.

Optionale Einträge und Bedingungen[edit]

Gewöhnlicherweise werden Infoboxen auf den meisten Seiten nicht vollständig ausgefüllt. In solchen Fällen ist es jedoch nicht erwünscht, dass dem zugehörigen Attribut ein leerer Wert zugewiesen wird, da dies unter anderem Fehlermeldungen versuchen kann (was nebenbei mit der Direktive $smwgInlineErrors verhindert werden kann). Um dies zu umgehen, können wir Bedingungen in den Vorlagenquelltext einbauen, damit den Attributen nur ein Wert zugewiesen wird, wenn dieser nicht leer ist.

Dies lässt sich mit Hilfe der Softwareerweiterung ParserFunctions für MediaWiki erreichen. Für weitere Informationen siehe die zugehörige Dokumentation. Die Wikipedia enthält viele Beispiele für den Einsatz von Parserfunktionen in Vorlagen, wie etwa der VorlageTaxobox. Diese Vorgehensweise führt im Normalfall leider zu einem unübersichtlichen Vorlagenquelltext, kann für Benutzer jedoch eine beträchtliche Vereinfachung und Arbeitserleichterung darstellen.

Abfragen innerhalb von Vorlagen[edit]

Auch Eingebettete Abfragen sind häufig Bestandteil semantischer Abfragen. Sie beinhalten hierzu meist die Variable {{PAGENAME}} (vgl. z. B. ow:Template:Ask) und werden dazu verwendet, um eine Liste aller Seiten mit einem bestimmten Attribut zu sammeln, welches auf diese Seite als Wert hat (z. B. eine Vorlage für einen Staat mit einer Liste aller Städte in diesem Staat).

Annotationen für Vorlagen[edit]

Standardmäßig ist es nicht möglich, Vorlagen selbst mit Annotationen bzw. semantischen Attributen zu versehen. Auch wenn dies nicht zu empfehlen ist, kann diese Funktion vom Seitenadministrator aktiviert werden.

Vorlagen bearbeiten[edit]

Eine beliebte Erweiterung Semantic Forms, gibt Benutzern die Möglichkeit, die Inhalte einer Vorlage über ein Formular hinzuzufügen und zu bearbeiten. Siehe hierzu auch die Softwareerweiterungen für SMW.