Semantic Web: Semantische Suche



Ähnliche Dokumente
RDF und RDF Schema. Einführung in die Problematik Von HTML über XML zu RDF

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:

!!!!T!!! Systems!() Multimedia Solutions

Barrierefreie Webseiten erstellen mit TYPO3

Dokumentation von Ük Modul 302

Semantic Web Technologies 1

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

1 Mathematische Grundlagen

PHPNuke Quick & Dirty

Internet Kurs. Suchmaschinen

Was meinen die Leute eigentlich mit: Grexit?

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Verknüpfte Daten abfragen mit SPARQL. Thomas Tikwinski, W3C.DE/AT

Der Kalender im ipad

Informatik 12 Datenbanken SQL-Einführung

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Datenbanken Kapitel 2

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Gesucht und Gefunden: Die Funktionsweise einer Suchmaschine

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

2.5.2 Primärschlüssel

Traditionelle Suchmaschinenoptimierung (SEO)

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Professionelle Seminare im Bereich MS-Office

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Die Entwicklung eines Glossars (oder eines kontrollierten Vokabulars) für ein Unternehmen geht üblicherweise in 3 Schritten vor sich:

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Professionelle Seminare im Bereich MS-Office

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Das Leitbild vom Verein WIR

Zeichen bei Zahlen entschlüsseln

Artikel Schnittstelle über CSV

Linked Samian Ware: Potentiale von Linked Data in der Archäologie. Florian Thiery M.Sc.

Allgemeiner Leitfaden zum Einfügen suchmaschinenoptimierter Texte

Semantic Markup für die Dokumentenklassifizierung. Seminarvortrag von Mirko Pracht

1 topologisches Sortieren

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

Ihr Weg in die Suchmaschinen

Anleitung über den Umgang mit Schildern

Apartment App. Web Style Guide

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Anleitung zur Erstellung und Bearbeitung von Seiten in Typo3. Typo3. Anleitung. Wenpas Informatik

WEBSEITEN ENTWICKELN MIT ASP.NET

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Word 2010 Schnellbausteine

Suchergebnisdarstellung in Google, Bing, Cuil, etc. Christina Ficsor

SJ OFFICE - Update 3.0

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Was man mit dem Computer alles machen kann

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Dokumentation für die software für zahnärzte der procedia GmbH Onlinedokumentation

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Folge 19 - Bäume Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

- Google als Suchmaschine richtig nutzen -

Leichte-Sprache-Bilder

Ressourcen-Beschreibung im Semantic Web

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Dokumentation Typo3. tt - news - Nachrichtenmodul

Primzahlen und RSA-Verschlüsselung

Funktionsbeschreibung. Lieferantenbewertung. von IT Consulting Kauka GmbH

Updatehinweise für die Version forma 5.5.5

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

Windows 8 Lizenzierung in Szenarien

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Informationen zu den regionalen Startseiten

! " # $ " % & Nicki Wruck worldwidewruck

Die Post hat eine Umfrage gemacht

Thematische Abfrage mit Computerlinguistik

POP -Konto auf iphone mit ios 6 einrichten

IAWWeb PDFManager. - Kurzanleitung -

SEMINAR Modifikation für die Nutzung des Community Builders

Access Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013

Vorkurs Informatik WiSe 15/16

Menü auf zwei Module verteilt (Joomla 3.4.0)

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl

Microsoft Access 2013 Navigationsformular (Musterlösung)

Lassen Sie sich dieses sensationelle Projekt Schritt für Schritt erklären:

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5

HTML5. Wie funktioniert HTML5? Tags: Attribute:

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

How to do? Projekte - Zeiterfassung

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender FHNW, Services, ICT

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Strategie & Kommunikation. Trainingsunterlagen TYPO3 Version 4.3: News Stand

Erklärung zu den Internet-Seiten von

.procmailrc HOWTO. zur Mailfilterung und Verteilung. Stand:

Informationsblatt Induktionsbeweis

impact ordering Info Produktkonfigurator

Anwendungsbeispiele Buchhaltung

Suche konfigurieren, Type-Ahead Begriffe festlegen, Tags und Suche webbank+ Handbuch Basic, Kapitel 8 Version Januar 2015

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten

Transkript:

Semantic Web: Semantische Suche Dokumentation Arbeit im Modul BTI7311 Informatik Seminar Studiengang: [Informatik] Autor: [Menzi Stephan] Betreuer: [Eckerle Jürgen] Datum: 04.05.2015 Berner Fachhochschule Haute École spécialisée bernoise Bern University of Applied Sciences

a Versionen Version Datum Status Bemerkungen 0.1 24.04.2015 Entwurf 1. Entwurf 1.0 04.05.2015 Definitiv Eingereichte Version Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 i

Inhaltsverzeichnis 1 Semantische Suche 2 1.1 Textsuche......................................... 2 1.2 Semantische Suche.................................... 2 2 Herausforderungen für die semantische Suche 4 3 Das Semantic Web 5 3.1 Geschichte......................................... 5 3.2 Semantic Web Layers................................... 5 4 Ontologien 7 4.1 Was sind Ontologien................................... 7 4.2 Wie werden Ontologien aufgebaut............................ 7 4.3 Wie werden Ontologien verbunden............................ 9 4.4 Beispiele.......................................... 11 5 Abfrage 12 5.1 SPARQL.......................................... 12 5.2 Benutzerschnittstellen................................... 14 6 Schlussfolgerungen/Weiterführende Links 16 Literaturverzeichnis 17 Abbildungsverzeichnis 18 Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 1

1 Semantische Suche 1.1 Textsuche Googeln hat sich mittlerweile als Synonym für eine Suche im Internet eingebürgert. Der Benutzer gibt Begriffe ein, und schon wenige Sekunden später wird ihm eine Liste mit Ergebnissen angezeigt. Diese verweisen auf Dokument, Bilder oder Videos, die einen der gesuchten Begriffe im Text, im Namen oder in Metadaten enthält. In den ersten Tagen des World Wide Web gab es noch keine solchen Suchmaschinen. Es gab ein Liste mit den angeschlossenen Servern und den Dokumenten, dass von einem Menschen nachgeführt wurde. Wollte man eine bestimmte Information suchen, musste man diese Liste durchsuchen. Die ersten Suchmaschine waren genau für Suchen auf solchen Verzeichnissen entworfen. Aber schon nach kurzer Zeit gab es zu viele Server, und das Nachführen solcher Listen und Verzeichnissen war für Menschen nicht mehr möglich. Es war also notwendig, das Programme nach Dokumenten suchen und die Verzeichnisse führten. Wegen den limitierten Systemen der Zeit, suchten diese ersten Suchmaschinen nur nach Begriffen in den Headern und Titel. Heute sind die allermeisten Suchmaschinen sind solche Volltextsuchmaschinen. Mit Webcrawler kam 1994 die erste solchen Suchmaschine auf den Markt und verdrängten nach und nach die Verzeichnissuchmaschinen. Sie durchsuchen das gesamte Dokuemente nach den Stichworten. Natürlich durchsuchen moderne Suchmaschinen nicht direkt bei einer Abfrage das ganzen World Wide Web. Sogenannte Spiders durchsuchen laufend das Web und sammeln Ergebnisse in indexierten Datenbanken. Und auf diesen Datenbanken suchen die erfolgt die Suchen von Benutzern. Die Reihenfolge, wie die Ergebnisse präsentiert wird, hängt von den Suchmaschinen, respektiv deren Sortierlogik ab. Die Sortierung erfolgt danach, wie prominent der Eintrag im Dokument ist. Auch die Popularität, wie oft auf das Dokument verlinkt wird spielt eine wesentliche Rolle. So wird ein Eintrag in Wikipedia einer der ersten Treffer liefern. Die Ranking Algorithmen trugen wesentlich zum Erfolg von Google bei. Natürlich durchsucht die Suchmaschine nicht direkt bei einer Abfrage das ganzen World Wide Web. Aber sogenannte Spiders durchsuchen laufend und sammeln Ergebnisse in indexierten Datenbanken. Und auf diesen Datenbanken suchen die Benutzer. 1.2 Semantische Suche Einzelne Suchbegriffe und einfache Kombinationen sind für Volltextsuche kein Problem. Aber komplexere Suchabfragen wie Welchem Roman hatte der Autor von Carpe Jugulum noch geschrieben oder Romane mit dem König von Lancre bringen diese an die Grenzen ihrer Leistungsfähigkeit. Für einen Menschen ist ist klar, was die einzelnen Begriffe Roman, Terry Pratchett, König und Lancre bedeuten, oder bedeuten können. Für eine (Such)Maschine ist dies aber nicht so ohne weiteres nachvollziehbar. Eine Volltextsuche wird auch Dokumente gelistet, die nur die Stichworte Romane und önig enthalten. Die Ergebnisse für eine solche Suche sind auch kein Dokument, sondern eine Liste mit Information. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 2

Diese Information können natürlich auch Verweise auf Dokumente, wie Wikipediaeinträge, enthalten. Das Ziele der Semantischen Suche sind Suchabfrage jenseit dere Möglichkeiten einer Volltextsuchmaschine. [3] Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 3

2 Herausforderungen für die semantische Suche Was sind die Herausforderung, die Problem für solche Semantische Suchen? Und was bedeutet der Begriff Semantik eigentlich? Der deutsche Wikipediartikel erklärt ihn wie folgt. Semantik (von griechisch σηµαινειν semaínein,,bezeichnen,,zum Zeichen gehörig ), auch Bedeutungslehre, nennt man die Theorie oder Wissenschaft von der Bedeutung der Zeichen. Zeichen können in diesem Fall Wörter, Phrasen oder Symbole sein. Die Semantik beschäftigt sich typischerweise mit den Beziehungen zwischen den Zeichen und den Bedeutungen dieser Zeichen. [1, Wikipedia] Wie kommt man an ontologisches Wissen, das von Maschinen gesucht und gefunden werden kann? Wie sollen Daten als Entitäten und Beziehungen aufgebaut werden und wie können sie über das World Wide Web verteilt und verknüpft werden. Bei strukturierten Daten ist dies schon jetzt gut mögliche Wie kann ein Wort einer Entität eindeutig zugeordnet werden. Ist mit dem Wort Queen die Rockband gemeint oder das Staatsoberhaupt des Vereinigten Königreich, oder etwa der englische Ausdruck für die Schachfigur Dame. Was ist mit Synonymen oder Begriffe aus unterschiedlichen Sprachen. Wie kann eine Maschine begreifen, dass Name, nombre und nom den selben Begriff meinen. Wie werden Begriffe gehandhabt, die aus mehreren Worten bestehen wie North America, da in vielen Sprachen Nominalkomposita, also aus anderen Substantiven zusammensetzte Substantiven, weniger häufig vorkommen. Und auch die Pronomen wie er, sie, es müssen berücksichtigt werden. Wie wird erkannt, welche Worte semantisch zusammengehören. Als Beispiel nehmen wir die Frage Welchen Pflanzen haben essbaren Beeren. Die Kartoffel hat essbare Knollen, die Beeren sind aber giftig enthält zwar die verwendeten Stichworte, ist aber kein korrektes Ergebnis der Frage. Semantisches parsen ist momentan noch sehr aufwändig. Die Vollständige Extraktion von Fakten aus natürlich-sprachlichem Text ist ein schweres Problem. Die Erfolgsraten der zurzeit besten System liegt bei nur 50%. [3] Wie kann der Benutzer möglichst unkompliziert und zuverlässig Wissen suchen. Selber Abfragen mit einer Sprache wie SQL für relationale Datenbanken ist für ein breites Publikum nicht geeignet. Somit sind Benutzerschnittstellen ein Muss. Wie erstellt man Suchindexe, um schnelle Antwortzeiten bei der Suche zu erreichen. Verschieden Suchmaschinen wie Bing und Google haben schon ein gewisse Funktionen der semantischen Suche implementiert. Aber für eine wirkliche Semantische Suchen müssen neben den Suchmaschinen auch die Daten und das Internet dafür bereit gemacht werden. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 4

3 Das Semantic Web Die Überlegungen der vorherigen Kapitel für uns zum Semantic Web. Das Semantic Web ist also ein ein Netz, in dem Maschinen Begriffe suchen, und auch die Bedeutung dieser Begriffe erkennen und beachten. Der Weg dahin ist die Bereitstellung von Wissen in in maschinenlesbarer Form 3.1 Geschichte Die ersten Überlegungen zur Assoziation von Begriffen und der Beziehung zwischen ihnen als Netzwerk wurden von Psychologen schon seit dem 18. Jahrhundert gemacht. Auch im Bereich der Künstlichen Intelligenz wurde seit den Sechzigerjahren solche semantischen Netze geforscht. Mit dem Aufkommen des World Wide Web wurden die Idee erweitert. Wissen solle auf eine weltumspannendes Netzwerk verteilt und jedermann zugänglich gemacht werden. Der Begriff und das Konzept des Semantic Web stammen von Tim Berners-Lee. Zusammen mit James Hendler und Ora Lassila veröffentlichte Berners-Lee in der Zeitschrift Scientific American vom 17. Mai 2001 eine grundlegenden Artikel dazu. [5]. Sie führten aus, wie sie sich ein solches Semantic Web vorstellten, ohne auf die Implementation einzugehen. Die Entwicklung des Semantic Web, resp. deren grundlegenden Technologien wurden vom Wolrd Wide Web Council, kurz W3C übernommen. Mehre dieser Technologien sind mittlerweile als W3C Recommendantions veröffentlicht. Obwohl schon vierzehn Jahre seit dem Artikel vergangen sind, hat sich die Vision von Tim Berners- Lee noch nicht vollständig erfüllt. Obwohl schon einige Projekt zum Semantic Web, vor allem im Akademischen Umfeld, realisiert wurden, ist es noch weit von einer verbreiteten Nutzung entfernt. 3.2 Semantic Web Layers Die Semantic Web Layers, auch Semantic Web Cake genannt, beschreiben aus welchen Schichten das Semantic Web aufgebaut ist. Auch dieses Modell geht auf Tim Berners-Lee zurück. Die untersten Schichten sind schon durch das W3C standardisiert worden. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 5

Abbildung 3.1: Der Semantic Web Layer URI XML RDF RDFS OWL Im Semantic Web werden Dinge, auch Entitäten genannt, mit einem URI eindeutig identifiziert. Entitäten können nicht nur konkrete Dinge, sondern auch Eigenschaften, Relationen oder Ereignissen sein. Um die Beschreibung einer Entität auszutauschen, wird die weit verbreite Auszeichnungssprache XML (Exchange Markup Language) verwendet. Das Resource Description Framework ist ein Modell zur Beschreibung von Aussagen über eine Entität. RDF ist die Syntax des Semantic Web. Es ist ein W3C-Standard. Das Resource Description Framework Schema stellt ein Grundvokabular für RDF zur Verfügung. Es erweitert RDF um Möglichkeiten wie Klassen, Vererbung und Instanzen. Die Web Ontolgy Language erweitert RDF weiter. Da sich nie alle Entwickler von Semantischen Ontologien auf ein gemeinsames Vokabular einigen werden, müssen die Daten von verschiedenen Quellen abgeglichen werden. OWL bietet weitere Möglichkeiten, die Ausdrucksmächtigkeit von RDF zu steigern. Die aktuellste Version ist OWL2. SPARQL ist die Abfragesprache für Semantic Web. Es ähnelt nicht nur vom Namen her SQL, der verbreitetsten Abfragesprache für relationale Datenbanken. Mit SPARQL kann über RDF codierte Daten gesucht werden. Cryptography, Proof, Trust und User Interface Wie können wir die Daten im Semantischen Web verschlüsseln? Wie können wir garantieren, das die Daten korrekt und vertrauenswürdig sind? Wie kann ein Benutzer das Semantic Web nutzen? Diese Elemente des Semantic Webs sind noch nicht standardisiert oder nur als Ideen vorhanden. Von diesen Elementen wird in dieser Dokumentation nur auf User Interface eingehen. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 6

4 Ontologien 4.1 Was sind Ontologien Ontologien sind, vereinfacht ausgedrückt, eine Menge von Begriffen und ihren Beziehungen, auch Fakten genannt. Diese werden als Tripel, bestehend aus einem Subjekt, einem Prädikat und einem Objekt gebildet. Bär ist ein Säugetier, Fisch ist ein Tier oder Säugetier ist ein Tier. Mit solchen Tripeln wird die Ontologie als gerichteten Graph aufgebaut. Subjekt und Objekte sind Knoten, Prädikate sind Kanten oder leere Knoten. Solche Graphen können dann mit Algorithmen durchsucht werden. Abbildung 4.1: Ein Semantisches Netz Quelle: WikiMedia-Commons 4.2 Wie werden Ontologien aufgebaut Wie kann nun ein solcher Graph als maschinenlesbare Ontologie aufgebaut werden. Nehmen wir als Beispiel den Bären aus der obigen Abbildung. Oder genauer den Braunbären. Welche Eigenschaften hat so ein Braunbär. Braunbär ist ein Bär. Braunbär hat einen Lebensraum. Braunbär hat eine Fell. Syntax:RDF Als Datenmodel zur Erstellung eines maschinenlesbaren Graphen dient das Resource Description Framework, kurz RDF. RDF ist einer der Grundbausteine des Semantic Web und ist eine Recommendation des W3C. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 7

Subjekte und Objekte bilden die Knoten des Graphen. Dabei werden drei Typen von Knoten unterschieden: Resources Literale Leere Knoten Alle Dinger über die eine Aussage getroffen werden kann. Einfache Wert wie reine Zahlen oder Bool sche Werte. Resources ohne URI. Resources müssen eindeutig identifizierbar sein. In relationalen Datenbanken werden dazu Primärschlüssel benutzt. In RDF geschieht dies mit Universal Resource Indentifier, kurz URI. Subjekt und Prädikate sind immer Resources, also mit einen URI identifiziert. Objekte können auch ein Literale oder leere Knoten sein. Leere Knoten sind von Aussen nicht sichtbar. Sie verweisen über weiter Prädikate auf weitere Knoten. Zum Beispiel hat ein Subjekt Person ein Objekt Name der aus einem Vor- und eine Nachnamen besteht. Das Prädikat Name ist mit eine leeren Knoten verknüpft, dieser wiederum mit weiteren Prädikaten auf Vorname und Nachname. Weil leere Knoten beim zusammenführen von verschiedenen Graphen zu Problemen führen können, verwenden viele Entwickler sie nur sparsam. Aber RDF ist schlussendlich nur ein abstraktes Modell. Zum Serialisieren solcher Tripel braucht es konkrete Notationsformate. Beispiele für solche Notationen sind RDF/XML, Notation3, kurz N3, Turtle und JSON-LD. Turtle (Terse RDF Triple Language) ist wegen seiner Kompaktheit, seiner Lesbarkeit und seiner Ähnlichkeit zur Abfragesprache SPARQL die verbreitetste Notation. Als Beispiel die Beschreibung in Turtle für Braunbär ist ein Bär. <http://dbpedia.org/resource/brown_bear> <http://dbpedia.org/property/familia> <http://dbpedia.org/resource/bear> Anstelle des ganzen URI <http://dbpedia.org/property/familia>kann mit prefix dbpp<http://dbpedia. die Abkürzung dbpp:familia verwendet werden. Dies gilt auch für RDF, OWL, und SPARQL, die in den folgenden Abschnitten behandelt werden. Weiter Informationen und Beispiele sind in der W3C Recommendation zu finden. Vokabular:RDFS Resources mit einer URI zu identifizieren bringt viele Freiheit. Leider werden sich nie alle auf eine Bezeichnung oder URI für ein bestimmtes Ding einigen können, es ist so als würde man verschiedene Sprachen sprechen. Um Aussagen in RDF zu interpretieren brauch es ein Vokabular, dass meistens eine Menge von Kanten ist. Ein Grundvokabular das W3C veröffentlicht hat, ist das RDF Schema, kurz RDFS. RDFS ist objektorientiert und so können Klassen und Hierarchien zwischen Resources erstellt werden. RDFS ist eine Erweiterung von RDF und wird genauso verwendet. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 8

Eine Liste mit wichtigen Elementen des RDFS Vokabulars: rdfs:resource rdfs:class rdf:literals rdf:property rdf:type rdf:subclassof rdf:label Die Grundklasse. Alle anderen Klassen sind Subklassen von rdfs:resource. Alle Resources die Klassen sind. Resources die Literale sind. rdf:literals sind ein Instanz von rdf:class Klasse der RDF Propertys, auch eine Instanz von rdfs:class Eine Property die aussagt, das eine Resource eine Instanz einer Klasse ist. dbpr:finn rdf:type dbpr:brown_bear Der Bär Finn des Bärenparks ist ein Braunbär. Property die aussagt, dass eine Resource die Subklasse einer Anderen ist. dbpr:author> rdf:subclassof dbpr:person> Heisst nichts anderes als das Author auch eine Person ist. Die Bezeichnung der Resource in menschenlesbarer Form. Auch viele Ontologien, wie zum Beispiel Friend of a Friend, stellen grundlegende Vokabulare zur Verfügung. Speicherung:Triple Store Datenbanken Alle diese Information müssen in einer Datenbank gespeichert werden. Dafür gibt es speziell für die Speicherung und Abfrage von Tripeln konzipierte Datenbanken, sogenannte Triple Stores oder auch RDF Stores. Bekannte Triple Stores sind Virtuoso, Apache Jena, oder Sesame. 4.3 Wie werden Ontologien verbunden Linked Data Um Daten über das Web zu verteilen, wird das Prinzip der Linked Data verwendet. Auch dies geht auf die Ideen von Tim Bernes-Lee zurück. Sie können wie folgt zusammengefasst werden.[11] Benutze URI um Dinge zu bezeichnen. Benutze HTTP URI, damit sie nachgeschlagen werden können. Schlägt jemand ein URI nach, stelle nützliche Informationen zur Verfügung mit Hilfe von Standards (RDF, SPARQL). Verweise auf andere URIs um mehr Dinge zu finden. Linked Open Data ist ein solches Linked Data Projekt, um freie Informationen im Web zur verfügung zu stellen und zu verknüpfen. Das Zentrum bildet DBpedia. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 9

Abbildung 4.2: LOD Cloud Stand 2011, Quelle: WikiMedia-Commons OWL: Web Ontology Language Die Web Ontology Language erweitert die Möglichkeiten von RDF und RDFS um weitere Konstrukte, um die Ausdrucksmächtigkeit zu steigern (oder teilweise auch einzuschränken, um Entscheidbarkeit zu erreichen) [2]. Mit OWL ist es möglich, Vergleiche zwischen Klassen, Instanzen und Properties zu machen, und damit das Problem der verschiedenen Bezeichnung von Entitäten zu lösen. Einige Elemente von OWL: owl:sameas Das wahrscheinlich häufigste Element. Eine Resource ist exakt das selbe Ding wie eine Andere. dbpr:terry_pratchett owl:sameas foaf:terry_pratchett owl:differentfrom owl:unionof owl:equivalentclass owl:disjointof Genau das Gegenteil von owl:sameas. Zwei Resources sind nicht das selbe Ding. Jede Instanz der Ersten Klasse ist auch Instanz von mindestens einer Klasse einer Liste von Klassen. foaf:sibling owl:unionof (foaf:brother foaf:sister) Elemente der einen Klasse sind auch Elemente der Anderen. dbpr:scientist> owl:equivalentclass foaf:scientist Genau das Gengenteil von owl:equivalentclass. dbpr:dog owl:disjointof dbpr:cat Die Web Ontology Language ermöglicht es, Information über verteilte Ontologien zu extrahieren. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 10

4.4 Beispiele Einige Beispiele von Ontologien. DBPedia Dublin Core Friend of a Friend SNOMED Clinical Terms Eine Projekt mehrerer deutscher Universitäten, um strukturierte Daten aus Wikipedia zu extrahieren. Eine Sammlung einfacher und standardisierter Konventionen zur Beschreibung von Dokumenten und anderen Objekten im Internet, um diese mit Hilfe von Metadaten einfacher auffindbar zu machen. Urheber dieses Schemas ist die Dublin Core Metadata Initiative (DCMI). Ein Projekt zur maschinenlesbaren Modellierung sozialer Netzwerke. Herzstück des Projekts ist ein RDF-Schema, das Klassen und Eigenschaften definiert, die in einem XML-basierten RDF-Dokument verwendet werden können. Eine von Maschinen verarbeitbare Sammlung von Human- und Veterinärmedizinschen Fachbegriffen. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 11

5 Abfrage Suchindexe Bei der Suche im World Wide Web, ob Volltext oder Semantisch, sind im Normalfall eine sehr grosse Datenmenge zu durchforschen.grosse Ontologien haben mehrere hundert Millionen Triple. Dies stellt die Suchmaschinen vor ein grosse Herausforderung. Effiziente Suchindexe sind nötig. Die gängigsten Lösungen sind eine Mischung aus Indexen für Semantische Suchen und Indexen für Volltextsuche. 5.1 SPARQL SPARQL ist ein Abfragesprache für eine RDF-Graph, und ist in ihrem Aufbau der Abfragesprache für Datenbanken SQL ähnlich. Und wie SQL ist sie auch nur bedingt benutzerfreundlich. Eine kurze Übersicht über die Versionen von SPARQL.[8] SPARQL 1.0 wurde Standard im Januar 2008, und beinhaltet : SPARQL 1.0 Query Language SPARQL 1.0 Protocol SPARQL Resultate im XML Format SPARQL Resultate im JSON Format SPARQL 1.1 wurde Standard im Januar 2008, und beinhaltet: Updated 1.1 Version of SPARQL Query and SPARQL Protocol SPARQL 1.1 Update - für Einfügen, Löschen, modifizierenvon RDF Date SPARQL 1.1 Graph Store HTTP Protocol - RESTful access für RDF Graphs SPARQL 1.1 Service Descriptions - Möglichkeiten von SPARQL Endpoints SPARQL Results im CSV/TSV Format Wir werden uns hier Abfragen mit SELECT beschränken. Für die Suche ist ein SPARQL-Endpoint wie Apache-Jena oder Virtuoso nötig. Syntax Die Elemente eines SPARQL Querys sind Prefix Deklaration PREFIX Definieren der Abkürzungen für URI. damit sie der eigenlichen Abfrage nicht jedesmal ausgeschrieben werden müssen. Datensatz FROM Welche RDF-Graphen werden durchsucht. Resultate SELECT Welche Entitäten soll die Abfrage zurückgeben. Suchmuster WHERE spezifiziert die eigentliche Abfrage. Modifikatoren div. Modifizieren der Abfrage wie Sortieren oder Beschränkung der Menge der Suchergebnisse. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 12

Abbildung 5.1: SPARQL Query in DBpedia. Eine Abfrage nach den Werken des Autors des Romans Carpe Jugulum könnte auf dem SPARQL Endpoint von DBpedia so aussehen. PREFIX dbprop: <http://dbpedia.org/property/> PREFIX db: <http://dbpedia.org/resource/> SELECT?who,?WORK,?genre,?pdate FROM <http://dbpedia.org> WHERE { db:carpe_jugulum dbprop:author?who.?work dbprop:author?who.?work dbprop:pubdate?pdate OPTIONAL {?WORK dbprop:genre?genre }. } ORDER BY (?pdate) Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 13

PREFIX SELECT FROM WHERE ORDER BY dbprob anstelle von <http://dbpedia.org/property/> und db anstelle von <http://dbpedia.org/resource/> die Variablen für eine Person, Werke, Genres und das Erscheinungsjahr. Variablen in SPARQL beginnen immer mit einem Fragenzeichen,z.B.?who wenn eine Person gesucht wird. Im SPARQL-Endpoint von DBpedia kann der Hauptgraph auch in einem in einem separaten Felder eingeben (s. Abb. 5.1). Andere Graphen die durchsucht werden sollen wie Friend of a Friend müssen hier angegeben werden. db:carpe_jugulum dbprop:author?who Subjekt ist die Resource <http://dbpedia.org/resource/carpe Jugulum> das Prädikat ist die Property <http://dbpedia.org/property/author> Das Objekt ist die Variable?who. Dieser verweist durch diese Klausel nun auf die Resource des Objekts, auf dass das Prädikat für das Subjekt zeigt. Im nächsten Ausdruck?WORK dbprop:author?who wird der Wert der Variable?who zum suchen der Subjekte, deren Prädikat auf die URI von?who verweist, verwende.t Die Ergebnisse werden nach Erscheinungsjahr der Werke sortiert. Die Resultate einer solche Abfrage könne in verschiedenen Formaten sein. HTML, XML, JSON, RDF, Turtle. 5.2 Benutzerschnittstellen Reine SPARQL Abfragen sind umständlich. Für eine benutzerfreundliche Suche ist eine Benutzerschnittstelle nötig. Das Semantic Web stellt neue Herausforderungen zu Entwurf von Benutzerschnittstellen. Die Daten sind dynamisch und es ist nicht klar, wie viele Resources es gibt und wo sie zu finden sind. Momentan sind vor allem Query Editoren gebräuchlich, in denen man Abfragen zusammenbauen kann, aber auch einige akademische Implementation, die Suchen mit natürlicher Sprache ermöglicht. Einige dieser Suchmaschinen machen ein ad-hoc retrieval und übertragen das Prinzip der Schlüssenwortsuche auf die semantische Suche. Für die Suchmaschien ist es allerdings schwer, die semantischen Bezüge zu erkennen[3]. Momentan ist noch keine Suchmaschine in Sicht, die das Äquivalent von Google für die Semantische Suche ist. Beispiel: Broccoli Ein Beispiel einer solchen akademischen Implementation ist broccoli. Es ist ein von der Universität Freiburg i.br. entwickelter Prototyp einer Semantischen Suchmaschine für die Englische Wikipedia. http://broccoli.informatik.uni-freiburg.de/demos/broccolifreebase/#wordsclosed=true In broccoli ist benutzt das oben erwähnte ad-hoc retrieval, damit suchen in natürlichen Sprachen möglich ist. Hier nochmals die Suche von vorher. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 14

Abbildung 5.2: Dieselbe Suche mit broccoli Zusätzlich zu den Suchergebnissen werden auch die RDF-Tripel angezeigt, aus denen broccoli die Ergebnisse ermittelt hat. Damit erfüllt broccoli auch den Zweck als Demonstrationsobjekt für die Semantische Suche. Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 15

6 Schlussfolgerungen/Weiterführende Links Semantische Suche und das Semantik Web können ein mächtiges Werkzeug für den Austausch von Wissen und Daten werden. Aber obwohl Google und Bing schon über Elemente der Semantischen Suche verfügen und die Musikdatenbank der BBC auf Ontologien beruht, ist es ein eher akademisches Projekt geblieben. Auch 14 Jahre nach dem Artikel von Berners-Lee sind seine Ideen erst in Ansätzen umgesetzt. Ob und wann das Semantic Web in grösserem Umfang in Gebrauch sein wird, ist heute nicht klar. Weiterführende Links Semantic Web beim W3C http://www.w3.org/standards/semanticweb/ Semantic Universtiy, Tutorials der Firma Cambridge Semantics, Boston http://www.cambridgesemantics.com/semantic-university/ DBpedia http://wiki.dbpedia.org/ Linked Open Data http://linkeddata.org/ broccoli, Benutzerschnittstelle für die englsiche Wikipedia. http://broccoli.informatik.uni-freiburg.de/demos/broccolifreebase/ Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 16

Literaturverzeichnis [1] Semantik. [Online]. Available: https://de.wikipedia.org/wiki/semantik [2] Web ontology language. [Online]. Available: http://de.wikipedia.org/wiki/web Ontology Language [3] H. Bast, Semantische suche, Informatik-Spektrum, vol. 36, no. 2, pp. 136 143, 2013. [Online]. Available: http://dx.doi.org/10.1007/s00287-013-0678-z [4] D. Becket, T. Berners-Lee, E. Prud hommeaux, and G. Carother. (2014) Rdf 1.1 turtle. [Online]. Available: http://www.w3.org/tr/turtle/ [5] T. Berners-Lee, J. Hendler, and O. Lassila, The semantic web, Scientific American, 2001. [6] D. Brickley and R. Guha. Rdf schema 1.1. [Online]. Available: http://www.w3.org/tr/ rdf-schema/ [7] CambrigeSemantics. Semantic university. [Online]. Available: http://www.cambridgesemantics. com/semantic-university/ [8] L. Feigenbaum and E. Prud hommeaux. Sparql by example. [Online]. Available: http: //www.cambridgesemantics.com/semantic-university/sparql-by-example [9] S. W. Group, Sparql 1.1 query language. [Online]. Available: http://www.w3.org/tr/2013/ REC-sparql11-query-20130321/ [10] I. Herman. (2012) Tutorial on semantic web. [Online]. Available: http://www.w3.org/people/ Ivan/CorePresentations/SWTutorial/ [11] M. Janik, A. Scherp, and S. Staab, The semantic web: Collective intelligence on the web, Informatik-Spektrum, vol. 34, no. 5, pp. 469 483, 2011. [Online]. Available: http://dx.doi.org/10.1007/s00287-011-0535-x Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 17

Abbildungsverzeichnis 3.1 Semantic Web Layer.................................... 6 4.1 Ein semantisches Netz................................... 7 4.2 LOD Cloud Stand 2011, Quelle: WikiMedia-Commons.................. 10 5.1 SPARQL in DBpedia................................... 13 5.2 Dieselbe Suche mit broccoli................................ 15 Semantic Web: Semantische Suche, Version 1.0, 04.05.2015 18