Semanticwebjena 100721154646-phpapp02(2)

369 Aufrufe

Veröffentlicht am

Jena

0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
369
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
7
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Semanticwebjena 100721154646-phpapp02(2)

    1. 1. Die „Semantic Web Recommendations“ und das Jena Framework ein Vortrag von Julian Maicher© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn
    2. 2. Gliederung  Das World Wide Web: Eine Bestandsaufnahme  Das Semantic Web: Eine Vision  Die „Semantic Web Recommendations“  Das Jena Framework  Praxiserfahrungen mit dem Jena Framework© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 07/03/10 3
    3. 3. Das Word Wide Web: Eine Bestandsaufnahme  WWW: Das „Netz der Dokumente“  Besteht aus unzähligen vernetzten Dokumenten  Dokumente beinhalten Informationen  Basiert auf (X)HTML und CSS  Präsentation der Informationen für den Menschen© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Beschränkte Semantik  Suche im WWW  Stichwort- oder Patternsuche Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 07/03/10 4
    4. 4. Das Semantic Web: Eine Vision  Eine Vision von Tim Berners-Lee  „Erfinder“ des WWW  Vorstand und Gründer des World Wide Web Consortium  Ziel: Das „Netz der Daten“  Daten auf Basis ihrer Bedeutung miteinander in Verbindung© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn bringen  Daten für den Computer verständlich aufbereiten  Hilfe bei der Umsetzung durch Empfehlungen des W3C  Semantic Web Recommendations Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 4
    5. 5. Begrifflichkeiten  Ontologien  Beschreibung von Objekte und ihren Beziehungen innerhalb eines Universums  Definieren Vokabular und Regeln  Beispiele: Friend-Of-A-Friend, The Gene Ontology© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Inferencing  Neues Wissen aus bestehenden Daten herleiten  Reasoner führen Inferencing auf Daten durch  Beispiel: Anna ist die Frau von Paul => Paul ist der Mann von Anna Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 5
    6. 6. Semantic Web Recommendations [1]© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    7. 7. Semantic Web Recommendations [1]  Unified Resource Identifier  Zeichenketten zur Identifizierung von Internetresourcen (Dokumente, Personen, ...)  Internationalisierung durch IRI© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    8. 8. Semantic Web Recommendations [1]  Unified Resource Identifier  Zeichenketten zur Identifizierung von Internetresourcen (Dokumente, Personen, ...)  Internationalisierung durch IRI  Beispiel: http://../John_Doe© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    9. 9. Semantic Web Recommendations [1]  Unified Resource Identifier  Zeichenketten zur Identifizierung von Internetresourcen (Dokumente, Personen, ...)  Internationalisierung durch IRI  Resource Description Framework© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  RDF basiert auf XML  Standard für Datenaustausch im Internet  Benutzt URIs um Resourcen und Beziehungen zu benennen  Definiert Triple: <Subjekt> <Prädikat> <Objekt> Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    10. 10. Semantic Web Recommendations [1]  Unified Resource Identifier  Zeichenketten zur Identifizierung von Internetresourcen (Dokumente, Personen, ...)  Internationalisierung durch IRI  Resource Description Framework© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  RDF basiert auf XML  Standard für Datenaustausch im Internet  Benutzt URIs um Resourcen und Beziehungen zu benennen  Definiert Triple: <Subjekt> <Prädikat> <Objekt>  Beispiel: <http://../John_Doe> <family_name> < “Doe“> Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    11. 11. Semantic Web Recommendations [1]  Unified Resource Identifier  Zeichenketten zur Identifizierung von Internetresourcen (Dokumente, Personen, ...)  Internationalisierung durch IRI  Resource Description Framework© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  RDF basiert auf XML  Standard für Datenaustausch im Internet http://../John_Doe  Benutzt URIs um Resourcen family_name und Beziehungen zu benennen Doe  Definiert Triple: <Subjekt> <Prädikat> <Objekt>  Beispiel: <http://../John_Doe> <family_name> < “Doe“> Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 6
    12. 12. Semantic Web Recommendations [2]  RDF Schema  Semantische Erweiterung von RDF  Vokabular zur hierarchischen Beschreibung von Klassen und Eigenschaften  Beschreibung von einfachen Ontologien© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 7
    13. 13. Semantic Web Recommendations [2]  RDF Schema  Semantische Erweiterung von RDF  Vokabular zur hierarchischen Beschreibung von Klassen und Eigenschaften  Beschreibung von einfachen Ontologien© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Beispiel: Human Man Woman Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 7
    14. 14. Semantic Web Recommendations [2]  RDF Schema  Semantische Erweiterung von RDF  Vokabular zur hierarchischen Beschreibung von Klassen und Eigenschaften  Beschreibung von einfachen Ontologien© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Beispiel: Human Man Woman Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 7
    15. 15. Semantic Web Recommendations [3]  Web Ontology Language  Mehr Vokabular, mehr Semantik  Unter anderem: • Beziehungen zwischen Klassen (z.B. disjunkt, invers) • Kardinalitäten (z.B. maximal eins)© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn • Eigenschaften von Beziehungen (z.B. Reflexiv, Transitiv) Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 8
    16. 16. Semantic Web Recommendations [3]  Web Ontology Language  Mehr Vokabular, mehr Semantik  Unter anderem: • Beziehungen zwischen Klassen (z.B. disjunkt, invers) • Kardinalitäten (z.B. maximal eins)© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn • Eigenschaften von Beziehungen (z.B. Reflexiv, Transitiv)  Beispiel: Eine Frau hat maximal einen Ehemann. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 8
    17. 17. Semantic Web Recommendations [3]  Web Ontology Language  Mehr Vokabular, mehr Semantik  Unter anderem: • Beziehungen zwischen Klassen (z.B. disjunkt, invers) • Kardinalitäten (z.B. maximal eins)© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn • Eigenschaften von Beziehungen (z.B. Reflexiv, Transitiv)  Beispiel: Eine Frau hat maximal einen Ehemann. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 8
    18. 18. Semantic Web Recommendations [4]  SPARQL Protocol and RDF Query Language  Graph-basierte Anfragesprache für RDF  Nachfolger mehrerer Anfragesprachen (RDF Query Language, RDQL)  Nutzt Triple Syntax für Anfragen© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn („basic graph pattern“) Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 9
    19. 19. Semantic Web Recommendations [4]  SPARQL Protocol and RDF Query Language  Graph-basierte Anfragesprache für RDF  Nachfolger mehrerer Anfragesprachen (RDF Query Language, RDQL)  Nutzt Triple Syntax für Anfragen© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn („basic graph pattern“)  Beispiel: Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 9
    20. 20. Semantic Web Recommendations [4]  SPARQL Protocol and RDF Query Language  Graph-basierte Anfragesprache für RDF  Nachfolger mehrerer Anfragesprachen (RDF Query Language, RDQL)  Nutzt Triple Syntax für Anfragen© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn („basic graph pattern“)  Beispiel: Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 9
    21. 21. Semantic Web Recommendations [5]© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 10
    22. 22. Semantic Web Recommendations [5]© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 10
    23. 23. Semantic Web Recommendations [5]© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 10
    24. 24. Zwischenbilanz  Das World Wide Web: Eine Bestandsaufnahme  Das Semantic Web: Eine Vision  Die „Semantic Web Recommendations“  Das Jena Framework  Praxiserfahrungen mit dem Jena Framework© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 11
    25. 25. Das Jena Framework  Eine Java-Implementierung der „Semantic Web Recommendations“  Framework zur Entwicklung von „Semantic Web“ Applikationen  Führendes „Semantic Web“-Toolkit für Java-Entwickler© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Implementiert Unterstützung für  RDF  RDFS  OWL  SPARQL Query Language Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 12
    26. 26. Grafische Übersicht Query ARQ Ontology API & Inferencing Reasoner Input/Output© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn RDF/XML RDF API subject predicate n-triples object N3 Materialized Graphs Virtual Graphs SQL in-memory inferencing database Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 13
    27. 27. Datenhaltung  In-memory: Datenhaltung im Speicher  Keine persistenten Daten  Persistente Datenhaltung  TDB • pure Java engine© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn • unterstützt keine Transaktionen • manuelles Setzen von read und write locks  SDB • basiert auf konventionellen SQL Datenbanken • Vorteil: vorhanden Tools für Load Balancing, Sicherheit, Clustering, Backups etc. können verwendet werden Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 14
    28. 28. RDF API [1]  Implementierung der abstrakten Syntax von RDF RDF Spezifikation Repräsentation in Jena RDF Graph Model Resource Resource Eigenschaft Property Triple Statement© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Grundlegende Funktionalität zur Navigation im RDF Graph z.B. model.listStatements(S, P, O) Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 15
    29. 29. RDF API [2]  Beispiel: http://../John_Doe family_name Doe© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 16
    30. 30. RDF API [2]  Beispiel: http://../John_Doe family_name Doe© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 16
    31. 31. Input/Output  Im- und Export Funktionalität für RDF-Graphen  Export über Writer  RDF/XML • „Dumb“ Writer (default) • „PrettyWriter“ (RDF/XML-ABBREV Syntax)© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Writer für N-TRIPLE und Notation 3 (N3)  Import über Reader  RDF/XML • RDFReader & Another RDF Parser (ARP)  Reader für N-TRIPLE und N3 Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 17
    32. 32. Ontology API & Inferencing [1]  Ontology API  OntModel repräsentiert Ontologie  Ontologien können gelesen werden • ontModel.read(URI)  Unterstützt nicht bei der Erstellung von Ontologien • dafür z.B. Protege (http://protege.stanford.edu)© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Inferencing  InfModel repräsentiert Graph mit inferiertem Wissen  Reasoner (OWL Reasoner, RDFS Reasoner, ..) • Arbeitet auf RDF Graph mit Regeln einer bestimmten Ontologie • Erzeugt InfModel durch inferieren von neuem Wissen Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 18
    33. 33. Ontology API & Inferencing [2]  Beispiel:© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 19
    34. 34. Query  ARQ  Jena Implementierung der SPARQL Query Language  Wichtige Klassen • Query und QueryFactory • QueryExecution und QueryExecutionFactory© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 20
    35. 35. Query  ARQ  Jena Implementierung der SPARQL Query Language  Wichtige Klassen • Query und QueryFactory • QueryExecution und QueryExecutionFactory© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Beispiel: Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 20
    36. 36. Query  ARQ  Jena Implementierung der SPARQL Query Language  Wichtige Klassen • Query und QueryFactory • QueryExecution und QueryExecutionFactory© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Beispiel: Gib Familiennamen und Telefonnummern aller Freunde von John Doe aus. Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 20
    37. 37. Praxiserfahrungen  Einsatz in der knowAAN Projektgruppe an der Universität Paderborn (http://ddi.uni-paderborn.de/lehre/sommersemester-2010/pg-knowaan.html)  TDB schneller als SDB  Aber: Erhebliche Performanceprobleme bei großen Datenmengen • Inferencing bei > 200.000 Ressourcen und > 3 Millionen Tripel© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 21
    38. 38. Zusammenfassung  Die „Semantic Web Recommendations“  Theoretische Spezifikation  Ansatz zur Standardisierung des „Semantic Web“  Viele „Active Groups“© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn  Das Jena Framework  Implementierung der „Semantic Web Recommendations“  Führendes „Semantic Web“-Toolkit für Java Entwickler  Guter Ansatz, aber: Probleme mit großen Datenmengen Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 22
    39. 39. Danke für Ihre Aufmerksamkeit© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 23
    40. 40. Danke für Ihre Aufmerksamkeit Fragen ?? ?© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Die „Semantic Web Recommendations“ und das Jena Framework - Julian Maicher 23

    ×