Wenn man den Begriff des SemanticWeb nicht kennt, könnte man meinen, es ist wie das DarkWeb, noch ein Web neben dem WWW. Dies ist es jedoch nicht! Einige bezeichnen das SemanticWeb, in Anlehnung an das Web 2.0, auch das kommende Web 3.0. Es werden außerdem die Begriffe LinkedOpenData und WebOfData verwendet, sie bezeichnen alle das selbe.
SemanticWeb laut Wiki
Das SemanticWeb beschreibt eine Erweiterung zum bekannten WWW, bei dem der Computer mitliest. Der erste Entwurf vom SemanticWeb stammt vom Gründer des WWW Tim Berner Lee (TBL), von ihm stammt auch die Idee des SemanticWeb. Web-Seiten sind meist so gestaltet, dass man sie als Mensch lesen kann. Häufig sind Informationen in Sätzen formuliert statt in Tabellen, die ein Computer strukturiert verstehen kann. Das SemanticWeb ermöglicht an dieser Stelle, die Sätze anhand eines Datenschemas zu strukturieren. Wikipedia hat dazu dieses Beispiel:
Auf der Webseite wird für den menschlichen Konsumenten folgender Satz dargestellt: “Paul Schuster wurde in Dresden geboren.”
Der Computer könnte einen Parser einsetzen um diesen Satz in seine Einzelteile zu zerlegen. Mit etwas mehr Aufwand, würde der Computer auch herausfinden, dass Paul Schuster eine Person ist, Dresden eine Ort bzw. Stadt ist und dass scheinbar Paul dort geboren wurde. Falls der Computer eine anderssprachige Webseite lesen möchte, müsste man ihm vorher den entsprechenden Parser beibringen. Bei der Parser-Lösung müsste man nicht nur die Sprache beachten, sondern der Computer müsste auch erst herausfinden, wo auf der Webseite der wichtige Inhalt steht.
Das SemanticWeb sieht vor, dass man die Webseite mit einigen Annotationen versieht, sodass der Computer direkt einen Graphen (mit Knoten und Kanten) daraus erstellen kann. Setzt man in den Beispiel-Satz die HTML-Annotationen ein, sieht der Satz wie folgt aus:
<div vocab="http://schema.org/" typeof="Person">
<span property="name">Paul Schuster</span> wurde in
<span property="birthPlace" typeof="Place" href="http://www.wikidata.org/entity/Q1731">
<span property="name">Dresden</span>
</span> geboren.</div>
Dort wurde festgelegt, dass alles innerhalb des div-Element Person die Person definiert. Innerhalb des div-Elements befinden sich einige span-Elemente, die jeweils einen Propertynamen gesetzt haben. Diese span-Element beinhalten den Wert des jeweiligen Property. Ein RDFa-Parser würde aus diesem HTML-Block folgenden Graph bilden können:
![]()
Von Denny – Eigenes Werk, CC0, https://commons.wikimedia.org/w/index.php?curid=38335508
Das SemanticWeb bietet eine standardisierte Form um Daten in HTML-Dokumenten zu strukturieren. Aber dies ist nur ein kleiner Teil von dem was das SemanticWeb bietet.
SemanticWeb ist mehr!
Der Wow-Effekt kommt mit der bereits vorgestellten OWL und der darauf aufbauenden Ideen. Durch OWL lassen sich mittels definierter Inferenzen aus vorhandenen Daten weitere Schlüsse ziehen. Das klingt schon gut, aber die W3C möchte noch weiter gehen. Die W3C hat dazu einen Layer Cake konstruiert:

In dem Layer-Cake sind die einzelnen SemanticWeb-Technologien aufgeführt und wie sie aufeinander basieren. Die unteren vier Schichten bis zur Ontology vocabulary wurden in diesem Blog bereits behandelt. Bei den auf OWL aufbauenden Schichten gibt es Uneinigkeit im Netz:
Nach Medić und Golubović sind die Schichten Logic und Proof von TBL nicht im Detail definiert worden und im ersten Entwurf treten sie als eine Schicht auf. Zieht man sie auf zwei Layer, dann wird vermutlich der Logic-Layer dafür sorgen, dass Daten gemäß einer Logik aus dem Web extrahiert werden. Der Proof-Layer hingegen prüft, ob und weshalb ein Agent extrahierten Daten vertrauen soll.
Craig Knoblock von der University of Southern California zeigt dies anhand von Beispielen. Nach ihm wendet man im Logic-Layer Prädikatenlogik auf die Daten an, um neue Informationen zu generieren. Dazu gibt er auch dieses Beispiel:
Angenommen man hat folgendes Datenschema entwickelt:

Dort möchte man nun die neue Klasse “rabies animal” einführen. Da man nicht alles neu definieren möchte, verwendet man die bereits vorhandenen Klassen. Für die neue Klasse muss man also irgendwie den Zusammenhang zwischen den Klassen animal und rabies herstellen. Dazu legt man eine Klasse “rabies animal” an, die von der Klasse sick animal erbt und eine has-Relation zu rabies hat. Gezeigt in folgendem Diagramm:

Aber: Alle Layer nach dem OWL-Layer sind laut Wiki noch nicht realisiert und sind daher noch Wunschkonstrukte.
Fazit
Das SemanticWeb ist eine von TBL entwickelte Idee, die schon weit spezifiziert und entwickelt wurde, aber noch nicht komplett fertig gestellt ist. Es ist bereits jetzt verwendbar. Wie im Datenbank-Artikel gezeigt, gibt es leider eine zu geringe Verbreitung der SemanticWeb-Technologien. Dies könnte sich in nächster Zeit ändern, da mehr Projekte ihre Daten öffentlich bereitstellen, wozu häufig SemanticWeb-Technologien verwendet werden.