40
© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn ein Vortrag von Julian Maicher Die „Semantic Web Recommendations“ und das Jena Framework

Semanticwebjena 100721154646-phpapp02(2)

Embed Size (px)

Citation preview

Page 1: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

ein Vortrag von Julian Maicher

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Gliederung

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

3Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher 070310

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Word Wide Web Eine Bestandsaufnahme

WWW Das bdquoNetz der Dokumenteldquo Besteht aus unzaumlhligen vernetzten Dokumenten Dokumente beinhalten Informationen

Basiert auf (X)HTML und CSS Praumlsentation der Informationen fuumlr den Menschen Beschraumlnkte Semantik

Suche im WWW Stichwort- oder Patternsuche

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher 070310

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Semantic Web Eine Vision

Eine Vision von Tim Berners-Lee bdquoErfinderldquo des WWW Vorstand und Gruumlnder des World Wide Web Consortium

Ziel Das bdquoNetz der Datenldquo Daten auf Basis ihrer Bedeutung miteinander in Verbindung

bringen Daten fuumlr den Computer verstaumlndlich aufbereiten

Hilfe bei der Umsetzung durch Empfehlungen des W3C Semantic Web Recommendations

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Begrifflichkeiten

Ontologien Beschreibung von Objekte und ihren Beziehungen innerhalb

eines Universums Definieren Vokabular und Regeln

Beispiele Friend-Of-A-Friend The Gene Ontology

Inferencing Neues Wissen aus bestehenden Daten herleiten Reasoner fuumlhren Inferencing auf Daten durch

Beispiel Anna ist die Frau von Paul =gt Paul ist der Mann von Anna

5Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 2: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Gliederung

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

3Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher 070310

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Word Wide Web Eine Bestandsaufnahme

WWW Das bdquoNetz der Dokumenteldquo Besteht aus unzaumlhligen vernetzten Dokumenten Dokumente beinhalten Informationen

Basiert auf (X)HTML und CSS Praumlsentation der Informationen fuumlr den Menschen Beschraumlnkte Semantik

Suche im WWW Stichwort- oder Patternsuche

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher 070310

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Semantic Web Eine Vision

Eine Vision von Tim Berners-Lee bdquoErfinderldquo des WWW Vorstand und Gruumlnder des World Wide Web Consortium

Ziel Das bdquoNetz der Datenldquo Daten auf Basis ihrer Bedeutung miteinander in Verbindung

bringen Daten fuumlr den Computer verstaumlndlich aufbereiten

Hilfe bei der Umsetzung durch Empfehlungen des W3C Semantic Web Recommendations

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Begrifflichkeiten

Ontologien Beschreibung von Objekte und ihren Beziehungen innerhalb

eines Universums Definieren Vokabular und Regeln

Beispiele Friend-Of-A-Friend The Gene Ontology

Inferencing Neues Wissen aus bestehenden Daten herleiten Reasoner fuumlhren Inferencing auf Daten durch

Beispiel Anna ist die Frau von Paul =gt Paul ist der Mann von Anna

5Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 3: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Word Wide Web Eine Bestandsaufnahme

WWW Das bdquoNetz der Dokumenteldquo Besteht aus unzaumlhligen vernetzten Dokumenten Dokumente beinhalten Informationen

Basiert auf (X)HTML und CSS Praumlsentation der Informationen fuumlr den Menschen Beschraumlnkte Semantik

Suche im WWW Stichwort- oder Patternsuche

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher 070310

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Semantic Web Eine Vision

Eine Vision von Tim Berners-Lee bdquoErfinderldquo des WWW Vorstand und Gruumlnder des World Wide Web Consortium

Ziel Das bdquoNetz der Datenldquo Daten auf Basis ihrer Bedeutung miteinander in Verbindung

bringen Daten fuumlr den Computer verstaumlndlich aufbereiten

Hilfe bei der Umsetzung durch Empfehlungen des W3C Semantic Web Recommendations

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Begrifflichkeiten

Ontologien Beschreibung von Objekte und ihren Beziehungen innerhalb

eines Universums Definieren Vokabular und Regeln

Beispiele Friend-Of-A-Friend The Gene Ontology

Inferencing Neues Wissen aus bestehenden Daten herleiten Reasoner fuumlhren Inferencing auf Daten durch

Beispiel Anna ist die Frau von Paul =gt Paul ist der Mann von Anna

5Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 4: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Semantic Web Eine Vision

Eine Vision von Tim Berners-Lee bdquoErfinderldquo des WWW Vorstand und Gruumlnder des World Wide Web Consortium

Ziel Das bdquoNetz der Datenldquo Daten auf Basis ihrer Bedeutung miteinander in Verbindung

bringen Daten fuumlr den Computer verstaumlndlich aufbereiten

Hilfe bei der Umsetzung durch Empfehlungen des W3C Semantic Web Recommendations

4Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Begrifflichkeiten

Ontologien Beschreibung von Objekte und ihren Beziehungen innerhalb

eines Universums Definieren Vokabular und Regeln

Beispiele Friend-Of-A-Friend The Gene Ontology

Inferencing Neues Wissen aus bestehenden Daten herleiten Reasoner fuumlhren Inferencing auf Daten durch

Beispiel Anna ist die Frau von Paul =gt Paul ist der Mann von Anna

5Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 5: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Begrifflichkeiten

Ontologien Beschreibung von Objekte und ihren Beziehungen innerhalb

eines Universums Definieren Vokabular und Regeln

Beispiele Friend-Of-A-Friend The Gene Ontology

Inferencing Neues Wissen aus bestehenden Daten herleiten Reasoner fuumlhren Inferencing auf Daten durch

Beispiel Anna ist die Frau von Paul =gt Paul ist der Mann von Anna

5Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 6: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 7: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 8: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Beispiel httpJohn_Doe

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 9: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 10: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 11: Semanticwebjena 100721154646-phpapp02(2)

httpJohn_Doe

Doe

family_name

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Semantic Web Recommendations [1]

Unified Resource Identifier Zeichenketten zur Identifizierung von

Internetresourcen (Dokumente Personen )

Internationalisierung durch IRI

6

Resource Description Framework RDF basiert auf XML Standard fuumlr Datenaustausch

im Internet Benutzt URIs um Resourcen

und Beziehungen zu benennen Definiert Triple ltSubjektgt ltPraumldikatgt ltObjektgt

Beispiel lthttpJohn_Doegt ltfamily_namegt lt ldquoDoeldquogtDie bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 12: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 13: Semanticwebjena 100721154646-phpapp02(2)

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 14: Semanticwebjena 100721154646-phpapp02(2)

Human

Man Woman

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF Schema Semantische Erweiterung von RDF Vokabular zur hierarchischen

Beschreibung von Klassen und Eigenschaften

Beschreibung von einfachen Ontologien

7Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [2]

Beispiel

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 15: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 16: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 17: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Web Ontology Language Mehr Vokabular mehr Semantik Unter anderem

bull Beziehungen zwischen Klassen(zB disjunkt invers)

bull Kardinalitaumlten (zB maximal eins)bull Eigenschaften von Beziehungen

(zB Reflexiv Transitiv)

8

Semantic Web Recommendations [3]

Beispiel Eine Frau hat maximal einen Ehemann

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 18: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 19: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 20: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

9

SPARQL Protocol and RDF Query Language Graph-basierte Anfragesprache fuumlr

RDF Nachfolger mehrerer Anfragesprachen

(RDF Query Language RDQL) Nutzt Triple Syntax fuumlr Anfragen

(bdquobasic graph patternldquo)

Beispiel Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Semantic Web Recommendations [4]

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 21: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 22: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 23: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

10

Semantic Web Recommendations [5]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 24: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Zwischenbilanz

11Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das World Wide Web Eine Bestandsaufnahme Das Semantic Web Eine Vision Die bdquoSemantic Web Recommendationsldquo Das Jena Framework Praxiserfahrungen mit dem Jena Framework

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 25: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Das Jena Framework

Eine Java-Implementierung der bdquoSemantic Web Recommendationsldquo

Framework zur Entwicklung von bdquoSemantic Webldquo Applikationen

Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java-Entwickler

Implementiert Unterstuumltzung fuumlr RDF RDFS OWL SPARQL Query Language

12Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 26: Semanticwebjena 100721154646-phpapp02(2)

Virtual GraphsMaterialized Graphs

RDF APIsubject

object

predicate

Ontology API amp Inferencing

Query

Reasoner

ARQ

InputOutput

RDFXML

n-triples

N3

SQL

databaseinferencingin-memory

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Grafische Uumlbersicht

13Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 27: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Datenhaltung

In-memory Datenhaltung im Speicher Keine persistenten Daten

Persistente Datenhaltung TDB

bull pure Java enginebull unterstuumltzt keine Transaktionenbull manuelles Setzen von read und write locks

SDBbull basiert auf konventionellen SQL Datenbankenbull Vorteil vorhanden Tools fuumlr Load Balancing Sicherheit

Clustering Backups etc koumlnnen verwendet werden

14Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 28: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

RDF API [1]

Implementierung der abstrakten Syntax von RDF

Grundlegende Funktionalitaumlt zur Navigation im RDF Graph zB modellistStatements(S P O)

15Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

RDF Spezifikation Repraumlsentation in Jena

RDF Graph Model

Resource Resource

Eigenschaft Property

Triple Statement

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 29: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 30: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

16

RDF API [2]

httpJohn_Doe

Doe

family_name

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 31: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

InputOutput

Im- und Export Funktionalitaumlt fuumlr RDF-Graphen

Export uumlber Writer RDFXML

bull bdquoDumbldquo Writer (default)bull bdquoPrettyWriterldquo (RDFXML-ABBREV Syntax)

Writer fuumlr N-TRIPLE und Notation 3 (N3)

Import uumlber Reader RDFXML

bull RDFReader amp Another RDF Parser (ARP) Reader fuumlr N-TRIPLE und N3

17Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 32: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Ontology API amp Inferencing [1]

Ontology API OntModel repraumlsentiert Ontologie Ontologien koumlnnen gelesen werden

bull ontModelread(URI)

Unterstuumltzt nicht bei der Erstellung von Ontologienbull dafuumlr zB Protege (httpprotegestanfordedu)

Inferencing InfModel repraumlsentiert Graph mit inferiertem Wissen Reasoner (OWL Reasoner RDFS Reasoner )

bull Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologiebull Erzeugt InfModel durch inferieren von neuem Wissen

18Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 33: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Beispiel

19

Ontology API amp Inferencing [2]

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 34: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 35: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 36: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Query

ARQ Jena Implementierung der SPARQL Query Language Wichtige Klassen

bull Query und QueryFactorybull QueryExecution und QueryExecutionFactory

20

Beispiel Gib Familiennamen und Telefonnummernaller Freunde von John Doe aus

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 37: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Praxiserfahrungen

Einsatz in der knowAAN Projektgruppe an der Universitaumlt Paderborn (httpddiuni-paderborndelehresommersemester-2010pg-knowaanhtml)

TDB schneller als SDB Aber Erhebliche Performanceprobleme bei groszligen

Datenmengenbull Inferencing bei gt 200000 Ressourcen und gt 3 Millionen Tripel

21Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 38: Semanticwebjena 100721154646-phpapp02(2)

Das Jena Framework Implementierung der bdquoSemantic Web

Recommendationsldquo Fuumlhrendes bdquoSemantic Webldquo-Toolkit fuumlr Java

Entwickler Guter Ansatz aber Probleme mit groszligen

Datenmengen

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Die bdquoSemantic Web Recommendationsldquo Theoretische Spezifikation Ansatz zur Standardisierung des bdquoSemantic

Webldquo Viele bdquoActive Groupsldquo

22

Zusammenfassung

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 39: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher

Page 40: Semanticwebjena 100721154646-phpapp02(2)

copy F

achg

ebie

t Sof

twar

etec

hnik

Hei

nz N

ixdo

rf In

stitu

t U

nive

rsitauml

t Pad

erbo

rn

Danke fuumlr Ihre Aufmerksamkeit

23

Fragen

Die bdquoSemantic Web Recommendationsldquo und das Jena Framework - Julian Maicher