Sesame Florian Mayrhuber 0105668. Was ist Sesame Repository für RDF Open Source Unterstützung von...

Post on 06-Apr-2015

113 views 5 download

Transcript of Sesame Florian Mayrhuber 0105668. Was ist Sesame Repository für RDF Open Source Unterstützung von...

Sesame

Florian Mayrhuber 0105668

Was ist Sesame

Repository für RDF Open Source Unterstützung von RDF Schema Persistente Speicherung von RDF

Daten OS unabhängig (Java basiert)

Resource Descripton Framework

Modell zur Repräsentation von Metadaten Spezifiziert von W3C als Erweiterung zu

XML anwendungs- und domänenunabhängige

Beschreibungsmöglichkeit für Ressourcen Legt keine Syntax fest

RDF Bestandteile

Ressourcen Alle Dinge die durch RDF Ausdrücke beschrieben

werden sollen, und über eine URI identifiziert werden können.

Eigenschaften Beschreiben Charakteristika, Relationen und Attribute

von Ressourcen.

Aussagen Tripel aus Subjekt, Prädikat und Objekt

RDF Darstellung

Graph

Tripel

XML

RDF Darstellung: Graph

http://www.w3.org/RDF/

World Wide Web Consortium

dc:publisher

RDF Darstellung: Tripel

Statement:

(http://www.w3.org/RDF/,

dc:publisher,

World Wide Web Consortium)

S

P

O

RDF Darstellung: XML

<?xml version=“1.0“ encoding=“UTF-8“?><rdf:RDF xmlns:rdf=“http://www.w3.org/1999/02/22-

rdf-syntax-ns#“xmlns:dc=“http://purl.org/dc/elements/1.0/“ ><rdf:Description about=

„http://www.w3c.org/RDF“><dc:publisher>World Wide Web Consortium</dc:publisher></rdf:Description></rdf:RDF>

RDF Schema

Erweiterung für RDF Erlaubt es Eigenschaften und Ressourcen

näher zu beschreiben Legt für jede Eigenschaft fest

Welche Werte erlaubt sind Welche Ressource sie besitzen darf Welche Beziehung sie zu anderen Eigenschaften

hat

RDF Speichern

Vorteile von RDBMS Weit verbreitet Ausgereift Skalierbarkeit Effizienz Geschwindigkeit

Entwicklung von Sesame

On-To-Knowledge http://www.ontoknowledge.org „develop tools and methods for supporting

knowledge management relying on sharable and reusable knowledge ontologies“

Aduna http://www.aduna.biz

Ontology Middleware Module

Aktuelle Version: 1.1

Repositories in Sesame

RDBMS Häufigster Anwendungsfall Unterstützung für

PostgreSQL MySQL Oracle 9i

JDBC Connector Files Hauptspeicher (Java Objekte)

Sesame Architektur

SAIL

Storage and Inference Layer Abstraktionslayer API mit speziellen Methoden um auf RDF

Daten zuzugreifen Umwandlung in die speziellen DBMS

Befehle

Reasoning Support

Sesame Server

Access APIs

Ermöglichen direkten Zugriff auf Sesame Funktionsmodule Clientapplikation Server

Repository API

Graph API

Sesame Repository API

Zentraler Zugangspunkt zu den Sesame Repositories

Ermöglicht Verbindungsaufbau zu einem Sesame

Server Querys Speichern und Extrahieren von RDF

Daten

Graph API

Repräsentation eines RDF Graphen in Form eines Java Objekts

Erstellung neuer Graphen

Manipulation von bestehenden Graphen

SeRQL

Sesame RDF Query Language RDF/RDFS Querysprache Vereinigung/Weiterentwicklung mehrer

Querysprachen (RQL, RDQL, N-Triples, N3) Features

Graphentransformation Unterstützung von RDF Schema Unterstützung XML Schema Datentypen Ausdrucksvolle Syntax für Pfadausdrücke Optionale Pfadangaben

SeRQL: Variablen

Variablen Name besteht aus Buchstaben, Zahlen,

„-“, „_“, „.“ muss mit einem Buchstaben oder

einem Unterstrich beginnen Gewisse Keywords zB from, where etc

sind nicht erlaubt zB Var1, _var2

SeRQL: Literale

Label Optional:

Language Tag Datatype Tag

Beispiele: "foo" "foo"@en "<foo/>"^^<http://www.w3.org/1999/02/22-

rdf-syntax-ns#XMLLiteral

SeRQL: URIs

vollständige URIs <http://www.w3c.org/index.html>

Abgekürzte URIs w3c:index.html

SeRQL: Pfadausdrücke

Person Unternehmen foo:ITUnternehmen

{Person} <foo:arbeitetFür> {Unternehmen} <rdf:type> {<foo:ITUnternehmen>}

<foo:arbeitetFür> <rdf:type>

SeRQL: Pfadausdrücke

Trennen in mehrere Ausdrücke {Person} <foo:arbeitetFür> {Unternehmen} {Unternehmen} <rdf:type> {<foo:ITUnternehmen>}

Abkürzungen{subj1} pred1 {obj1}{subj1} pred1 {obj2}{subj1} pred1 {obj3}

Verzweigungen{subj1} pred1 {obj1}{subj1} pred2 {obj1}

{subj1} pred1 {obj1, obj2, obj3}

{subj1} pred1 {obj1}; pred2 {obj2}

SeRQL: Pfadausdrücke

Optionale Pfadausdrücke

{Person} <person:name> {Name}; <person:age> {Age}; [<person:email> {EmailAddress}]

SeRQL: Querys

Select Ähnlich wie SQL Select Statements Gibt eine Tabelle mit Ergebnissen zurück

Construct Geben RDF Graphen als Zusammenstellung von

Triplen zurück Teilgraphen oder abgeleitete Graphen

SeRQL: Select Query

Besteht ausSelectFromWhereNamespace

SeRQL: Construct Query

Besteht ausConstructFromWhereNamespace

SeRQL: Querys

Beispiel

SELECT Country FROM {Country} foo:population {Population} WHERE Population < "1000000„

CONSTRUCT     {Künstler} <rdf:type> {<art:Maler>};              <art:hatGemalt {Gemälde} FROM     {Künstler} <rdf:type> {<art:Künstler>};              <art:hatGeschaffen> {Gemälde} <rdf:type> {<art:Gemälde>}

On To Knowledge

http://www.ontoknowledge.com IST Projekt Entwicklung von Methoden und Werkzeugen

für Wissensmanagment Ontologiebasierter Ansatz

Sesame Repositories für OnTo Extract OnTo Edit OnTo Share Spectacle ...

DOPE

Drug Ontology Project for Elsevier http://aduna.biz/dope/

Thesaurus basierter Browser für Wissenschaftliche Dokumente

Nutzt Sesame RDF Repositories

Bibster

http://bibster.semanticweb.org/ P2p basierte Anwendung

Zur gemeinsamen Nutzung und Verwaltung von bibliographischen Daten

Andere Projekte

Jena 2 Open Source Framework zur Erstellung

von Semantic Web Applications http://jena.sourceforge.net

Kaon Open Source Ontology Management

Infrastructure http://kaon.sourceforge.net

Weitere Projekte

RDFStore http://rdfstore.sourceforge.net

ICS-Forth RDFSuite http://www.ics.forth.gr

SquishQL http://swordfish.rdfweb.org/rdfquery/

Ausblick

Größere Anzahl unterstützter Repositories Standard SQL Support

DAML + OIL Support

Erweiterung des Admin Moduls

Performance