Benutzer-Werkzeuge

Webseiten-Werkzeuge


Sidebar

Navigation

Tags

paper:visualisierung_ontologienutzungsdaten:section02

Visualisierung von Ontologienutzungsdaten

Markus Bischoff
Verfasser:Markus Bischoff
Erstgutachter:Prof. Dr. Adrian Paschke
Zweitgutachter: Prof. Dr. Elfriede Fehr
Freie Universität Berlin

2 Grundlagen

Im folgenden werden Grundlagen der Bachelorarbeit erläutert. Begonnen wird in Abschnitt 2.1 mit einem Überblick über das Semantic Web und deren Technologien, die für diese Arbeit relevant waren. Dem folgend wird der Begriff Linked Open Data in 2.2 erläutert. Damit einhergehend wird DBpedia als Teil der Linked Open Data Initiative vorgestellt.

Anschließend wird in 2.3 das Web Usage Mining und dessen Probleme bei semantischen Datenrepositories erklärt. In 2.4 wird darauf folgend die Arbeit vorgestellt, auf die diese Bachelorarbeit aufbaut. Die Analyse und Visualisierung von Daten in einem Netzwerk wird schließlich in 2.5 beschrieben.

2.1 Semantic Web

Das Web in seiner jetzigen Form ist geprägt von einer riesigen Masse an Informationen, die beispielsweise in Webseiten enthalten sind. Damit können Informationen über jegliches Wissensgebiet über das Internet bezogen werden. Gleichzeitig birgt diese Informationsflut einen großen Nachteil. Die Inhalte des Webs sind für Menschen konzipiert. Maschinen können deren Bedeutung nicht verstehen und auch nicht direkt automatisiert weiterverarbeiten.

Somit ist das Web ein riesiges Netzwerk von Dokumenten, deren Inhalte für die Nutzung durch Menschen konzipiert sind. Beispielsweise ergibt die Suche mittels einer Suchmaschine wie Google je nach Anfrageart sehr viele Ergebnisse, die alle URIs (Uniform Resource Identifier, siehe Abschnitt 2.1.1.) von Webseiten sind. Diese Suchergebnisse müssen durch den Nutzer gelesen und interpretiert werden, um die Relevanz des gefundenen Dokuments zu verifizieren und dessen Informationen nutzen zu können. Im jetzigen Web können Maschinen dies nicht automatisch realisieren, da sie den gefundenen Inhalten keine Bedeutung zuordnen können. [Hitzler08, S. 9-13]

Eine Lösung dieses und anderer Probleme, soll das Semantic Web bieten. Die Idee dazu wurde im Mai 2001 von Tim Berners-Lee, James Handler und Ora Lassila in [BernersLee01] veröffentlicht:

„The Semantic Web is not a separate Web but an extension of the current one, in which information is given well-defined meaning, better enabling computers and people to work in cooperation.“

Das Semantic Web soll das existierende Web nicht ersetzen, sondern erweitern, sodass Maschinen die Bedeutung der Inhalte verstehen und diese Daten automatisiert verarbeiten können. Das Internet soll somit durch das Semantic Web zu einem Netz aus Daten, das sogenannte Web of Linked Data, erweitert werden. Hierfür sollen die Informationen in einer bestimmten Struktur zur Verfügung gestellt werden, sodass sie eine Semantik erhalten. Mit Hilfe dieser Struktur soll die semantische Verarbeitung der Informationen durch Maschinen ermöglicht werden, wodurch beispielsweise die Suche nach Informationen verbessert werden kann. Zum Beispiel können komplexere Fragen, wie „Welche Fußballer waren Torschützenkönig in den Fußballweltmeisterschaften, in denen Deutschland Weltmeister wurde?“, mit Hilfe der Technologien des Semantic Web beantwortet werden.

Semantic Web Stack seit 2007 Abbildung 1: Semantic Web Stack seit 2007, Quelle: http://www.w3.org/2007/03/layerCake.png

Um diese Ziele zu realisieren werden vom World Wide Web Consortium (W3C, siehe www.w3.org/Consortium) standardisierte Technologien eingesetzt. Diese Standards sind notwendig, damit eine Interoperabilität zwischen den heterogenen Anwendungen und Plattformen hergestellt werden kann. Die Komposition dieser Technologien ist unter dem Namen Semantic Web Stack oder Semantic Web Layer Cake bekannt. Dieser ist in Abbildung 1 zu erkennen.

In den folgenden Kapiteln werden die Technologien, die für diese Arbeit von Bedeutung sind, näher erläutert. In 2.1.1 wird die Basis des Semantic Web anhand von Unicode, Uri und XML erläutert. Darauf aufbauend erfolgt in Kapitel 2.1.2 eine Beschreibung des Ressource Description Frameworks (RDF), welches als grundlegendes Darstellungsformat für Daten im Semantic Web angesehen wird. Die Definition einer Ontologie wird in 2.1.3 erklärt und RDF-Schema (RDFS), als eine Erweiterung von RDF zur Beschreibung einfacher Ontologien, näher betrachtet. Anschließend wird in 2.1.4 die Ontologie-Beschreibungssprache OWL, als der vom W3C empfohlene Standart zur Erstellung von Ontologien, beschrieben.

Abschließend erfolgt in Kapitel 2.1.5 eine Betrachtung der Abfragesprache SPARQL, die für die Abfrage von Daten des Semantic Web genutzt wird.

2.1.1 Unicode, Uri und XML

Zur globalen Realisierung des Semantic Web muss die Interoperabilität heterogener Systeme hergestellt werden. Um dies zu erreichen, wird das semantische Web auf Basis der Standards Unicode, URI und XML aufgebaut.

Verschiedene Systeme verwenden unterschiedliche Zeichendarstellungen wie beispielsweise ASCII (American Standard Code for Information Interchange) oder KOI8-R (8-Bit Zeichenkodierung des kyrillischen Alphabets für die russische Sprache). Zur systemunabhängigen Kodierung der Zeichen im Semantic Web wird Unicode (www.unicode.org) verwendet. Ein Uniform Resource Identifier (URI, siehe www.w3.org/Adressing) ist ein einheitlicher Bezeichner für Ressourcen. Dieser dient zur Identifikation einer abstrakten oder physischen Ressource, wie beispielsweise einer Webseite oder RDF-Ressource (vgl. Abschnitt 2.1.2). Ein Internationalized Resource Identifier (IRI, siehe www.w3.org/International/O-URL-and-ident.html) ist eine Erweiterung einer URI, wodurch in einer URI fast alle Unicode Zeichen verwendet werden dürfen.

Die syntaktische Grundlage des Semantic Web stellt die eXtensible Markup Language (XML, siehe www.w3.org/XML) dar. XML ist eine generische Auszeichnungssprache, mit der man Inhalte strukturiert und medienneutral darstellen kann. Markup- oder Auszeichnungssprachen zeichnen sich dadurch aus, dass sie bestimmte Teile von Textdokumenten mit zusätzlichen Informationen annotieren. Diese Informationen werden Metadaten, also Daten, die andere Daten näher beschreiben, genannt. In XML können diese Annotationen (Tags) beliebig gewählt werden, wodurch die komplette Struktur des Dokuments durch den Anwender festgelegt werden kann.

Dadurch wird XML zu einem universellen Datenaustauschformat. Weiterhin können XML-Dokumente leicht von Maschinen verarbeitet werden. Aus diesen Gründen XML für den Einsatz im Semantic Web als syntaktische Grundlage sehr gut geeignet.

Beispiel eines XML-DokumentsAbbildung 2: Beispiel eines XML-Dokuments, Quelle: eigen

XML-Dokumente bestehen im Allgemeinen aus Elementen und Attributen. Durch die Elemente, zum Beispiel Arbeit, werden die einzelnen Teile des Dokuments ausgezeichnet. Attribute werden genutzt, um diesen Elementen Metadaten, wie „type = Bachelorarbeit“, hinzufügen zu können. In Abbildung 2 ist ein Beispieldokument abgebildet. Am Anfang des Dokuments wird die Version und die Zeichenkodierung angegeben. Danach erfolgt die Definition des Wurzel-Elements des Dokuments. In diesem Beispiel ist es Arbeiten. Zur Vermeidung von Namenskonflikten wird der Namensraum http://example.org importiert. Ein Namensraum wird über eine URI identifiziert. Ein Namenskonflikt würde zwischen dem Titel der Arbeit und dem Titel des Autors auftreten, da beide Elemente selben Namen tragen. Elemente können auch leer sein, wenn wie in diesem Beispiel der Autor keinen Titel besitzt. Diese und weitere Informationen zu XML können in [Hunter07] gefunden werden.

Die universelle Art der Auszeichnung eines XML-Dokuments ist sowohl die Stärke, als auch aus der Sicht des Semantic Web die Schwäche von XML. Da es nicht möglich ist die Bedeutung der Tags in XML zu definieren, haben Maschinen keine Möglichkeit die Semantik der Inhalte zu verstehen. Beispielsweise ist aus Sicht der Maschine egal, ob ein Tag mit asdf oder Buch benannt ist. Nur der Anwendungsentwickler gibt an, auf welche Art ein bestimtes Tag von einer Maschine verarbeitet werden soll. Da die Verarbeitung der Daten durch Maschinen aber automatisch erfolgen soll, muss eine Möglichkeit geschaffen werden, um Aussagen über die Semantik der Informationen treffen zu können. Dazu werden die auf XML aufbauenden Schichten des Layer Cake genutzt. [Hitzler08, S. 17-30]

2.1.2 RDF

Das Resource Description Framework (RDF, siehe www.w3.org/RDF) baut auf der XML-Schicht des Semantic Web Stack auf. Es dient als grundlegendes Datenmodell für Fakten und Metadaten im semantischen Web. Durch RDF werden Informationen in einer Struktur dargestellt, die es ermöglicht Daten zwischen Systemen auszutauschen, während ihre ursprüngliche Bedeutung erhalten bleibt. Dazu beschreibt RDF diese Informationen mit Hilfe von Metadaten. Dies erfolgt alles in einer maschinenlesbaren Form, sodass Computer in die Lage versetzt werden die Informationen mitsamt ihrer urspünglichen Bedeutung weiterverarbeiten zu können. [Hitzler08, S.35ff]

In RDF werden Aussagen über Ressourcen durch sogenannte Tripel getroffen. Diese Tripel ordnen den Ressourcen bestimmte Metadaten zu. Ein solches Tripel besitzt die Form Ressource Eigenschaft Wert. Eine Ressource ist dabei ein Objekt, über das etwas ausgesagt wird. Der erste Teil des RDF-Tripels wird auch als Subjekt bezeichnet. Jede Ressource wird durch eine URI identifiziert, wie beispielsweise http://example.org/Bachelorarbeit. Durch diese Identifikation werden Namenskonflikte verhindert. Eine Maschine kann so zwischen dem Planeten „Mars“ und dem Schokoriegel „Mars“ unterscheiden, da beide Ressourcen unterschiedliche URIs besitzen. Eine Eigenschaft ist eine spezielle Ressource. Sie ordnet einer Ressource einen speziellen Wert zu, wodurch eine Relation entsteht. Diese Relation ist immer binär, das heißt eine Eigenschaft setzt immer genau 2 Ressourcen miteinander in Beziehung.

Dieser Teil eines Tripels gilt auch als Prädikat. Ein Wert kann wiederum eine Ressource oder ein Literal sein (Ein Literal ist ein konkreter Wert, der durch eine Zeichenkette repräsentiert wird. Ihnen kann auch ein Datentyp zugeordnet werden. In einem RDF-Graph wird ein Literal durch ein Rechteck dargestellt). Er wird auch als Objekt des RDF-Tripels bezeichnet. Durch diese Sturktur bildet ein RDF-Tripel einen kleinen Teil eines gerichteten Graphen. Ein Sammlung solcher Tripel, also ein RDF-Dokument, kann somit als ein Graph angesehen werden. Eine Ressource ist ein Knoten des Graphen. Eine Kante symbolisiert eine Relation zwischen zwei Ressourcen. In Abbildung 3 ist ein solcher RDF-Graph zu sehen.

Beispiel eines RDF-Graphen Abbildung 3: Beispiel eines RDF-Graphen, Quelle: eigen

In diesem wird beispielsweise ausgesagt, dass die Ressource http://example.org/Bachelorarbeit mit der Ressource http://example.org/Bischoff über die Eigenschaft http://example.org/erstelltVon in Beziehung steht. Um in RDF komplexere Aussagen zu treffen, können Blank Nodes verwendet werden. Dies sind Knoten, die keine URI besitzen. Sie besitzen nur eine strukturelle Funktion um eine Aussage über etwas treffen zu können, was nicht direkt adressiert werden muss.

Zur Serialisierung eines RDF-Graphen kann die Syntax RDF/XML genutzt werden. Dies ist eine XML-Sprache, die vom W3C für RDF standardisiert wurde. Der als RDF/XML-Dokument serialisierte Graph aus Abbildung 3 ist in Abbildung 4 dargestellt.

RDF/XML Serialisierung des Graphen aus Abbildung 3Abbildung 4: RDF/XML Serialisierung des Graphen aus Abbildung 3, Quelle: eigen

Das Wurzelelement des Dokuments ist das rdf:RDF, in dem die Namensräume „ex“ und „rdf“ eingebunden werden. Der rdf-Namensraum ist von dem W3C spezifiziert und enthält das Vokabular zur Erstellung von RDF-Dokumenten. Ein Vokabular ist eine Zusammenstellung von Bezeichnern, die eine definierte Bedeutung besitzen. Ein wichtiges Element des rdf-Vokabulars ist das rdf:Description Tag, mit welchem man Aussagen über eine Ressource, die mit rdf:about angegeben wird, treffen kann. Anstatt rdf:about kann auch rdf:ID verwendet werden. Dadurch wird eine Ressource relativ zu einer Basisadresse, wie beispielsweise der Adresse des RDF-Dokuments, identifiziert. So kann auf die Angabe der Domain verzichtet werden. In Abbildung 4 wird beispielsweise ausgesagt, dass die Bachelorarbeit von der Ressource http://example.org/Bischoff erstellt wurde. In der Aussage wird mit Hilfe des Sprachelements rdf:resource wird auf die Ressource verwiesen. Die komplette RDF/XML Syntax kann unter [RDFPrimer] nachgeschlagen werden. Die Serialisierung von RDF ist nicht an RDF/XML gebunden. Es gibt verschiedene Möglichkeiten zur Serialisierung eines RDF-Graphen. Eine Form ist die von Tim-Berners Lee entwickelte Notation 3 (N3, siehe www.w3.org/DesignIssues/Notation3.html). Aus N3 entstanden Sprachen wie N-Triples (siehe www.w3.org/2001/sw/RDFCore/ntriples) und Turtle (siehe www.w3.org/TeamSubmission/turtle), die zur Beschreibung zulässiger RDF-Graphen genutzt werden können. [RDFPrimer]

Mittels RDF können Aussagen über Ressourcen getroffen werden, die auch zwischen Computern ausgetauscht werden können. Durch die Nutzung von Vokabularen enthalten diese Aussagen eine Semantik, die auch Maschinen von heterogenen Systemen interpretieren können. Um solche Vokabulare zu definieren, werden Ontologien benötigt. Diese werden mittels RDFS und OWL erstellt.

paper/visualisierung_ontologienutzungsdaten/section02.txt · Zuletzt geändert: 2011/12/30 23:20 von ben