Semantic Technologies     Übung, Wintersemester 2011/12   23. November 2011 - RDFS+ / OWL
Aufgabe 1• Gegeben seien die folgenden RDF-Daten.• Notieren sie alle Tripel, die daraus durch  Anwendung der zu RDF Schema...
@prefix   rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.@prefix   rdfs: <http://www.w3.org/2000/01/rdf-schema#>.@pref...
Aufgabe 2 • Welche Tripel können zusätzlich abgeleitet     werden, wenn folgende Aussagen     hinzugefügt werden?lib:Docum...
Zusammenfassung                RDFS• Klassenhierachien• Eigenschaftshierarchien• domain und range➡Eingeschränkte Ausdrucks...
Introducing: OWL
OWL      Web Ontology Language•   Reichhaltige                    rdfs:Resource    Ontologiesprache                       ...
OWLWeb Ontology Language               rdfs:Resource  rdfs:Class                     rdf:Property                         ...
OWL     Web Ontology Language• Verschiedene Varianten mit  unterschiedlicher Ausdruckskraft: •   OWL Full     •   OWL DL  ...
Namespacehttp://www.w3.org/2002/07/owl#
Klassen und Properties•   owl:Class     <owl:Class rdf:about="http://example.org/uni-vokabular#Dozent"/>                  ...
Umkehrung• owl:inverseOf • Eigenschaft einer Property • Gibt eine andere Property an, die die gleiche     Bedeutung hat, b...
Umkehrung                 IF ?x ?P ?y• Regel:         AND ?Q owl:inverseOf ?P                 THEN ?y ?Q ?x.   @prefix owl...
Symmetrische              Eigenschaften• owl:SymmetricProperty • Klasse von Properties • Gibt an, dass bei der gleichen Ei...
Symmetrische                Eigenschaften• Regel:           IF ?P rdf:type owl:SymmetricProperty                   THEN ?P...
Transitivität• owl:TransitiveProperty • Klasse von Properties • Mathematisches Konzept der Transitivität:   • wenn R(a,b) ...
Transitivität                   IF ?x ?P ?y• Regel:           AND ?y ?P ?z                   AND ?P rdf:type owl:Transitiv...
Äquivalenz• owl:equivalentClass• owl:equivalentProperty•    Besonders nützlich beim Zusammenführen     unterschiedlicher V...
Äquivalenz• Regeln:                 IF ?A owl:equivalentClass ?B      IF ?A owl:equivalentClass ?B                 AND ?y ...
Äquivalenz• owl:sameAs • Gibt an, dass zwei Individuen identisch sind.     <movie:Character rdf:about="&sw;anakin.skywalke...
Äquivalenz• Regeln:                     IF ?s ?P ?x             IF ?x ?P ?o                     AND ?x owl:sameAs ?y    AN...
Funktionale Eigenschaften• owl:FunctionalProperty • Klasse von Properties • Gibt an, dass eine Property für eine Instanz n...
Funktionale Eigenschaften                   IF ?x ?P ?a• Regel:           AND ?x ?P ?p                   AND ?P rdf:type o...
Invers-funktionale            Eigenschaften• owl:InverseFunctionalProperty • Klasse von Properties • Gibt an, dass eine Pr...
Invers-funktionale           Eigenschaften               IF ?x ?P ?a• Regel:       AND ?y ?P ?a               AND ?P rdf:t...
Aufgaben
Aufgabe 1• Gegeben ist folgende Ontologie für die  Verwaltung von Musik: ‣   http://www.hki.uni-koeln.de/sites/all/files/co...
Aufgabe 2• Erstellen Sie mit Hilfe der Klassen und  Properties aus RDFS+ ein Mapping der  Ontologie aus Aufgabe 1 auf FOAF.
Upcoming SlideShare
Loading in …5
×

Sitzung 7

578 views
539 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
578
On SlideShare
0
From Embeds
0
Number of Embeds
123
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Sitzung 7

  1. 1. Semantic Technologies Übung, Wintersemester 2011/12 23. November 2011 - RDFS+ / OWL
  2. 2. Aufgabe 1• Gegeben seien die folgenden RDF-Daten.• Notieren sie alle Tripel, die daraus durch Anwendung der zu RDF Schema gehörenden Regeln abgeleitet werden können.
  3. 3. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.@prefix lib: <http://example.org/library#>.@prefix ub: <http://ub.uni-koeln.de/inventar/>.# Klassenlib:Document a rdfs:Class.lib:Book a rdfs:Class;! rdfs:subClassOf lib:Document. # Abgeleitet ub:42lib:Article a rdfs:Class; ! a lib:EArticle; # über domain von webVersion! rdfs:subClassOf lib:Document. ! a lib:Article; # über subClassOf von EArticle! ! a lib:EDocument; # über subClassOf von EArticlelib:EDocument a rdfs:Class; ! a lib:Document; # über subClassOf von Article/Document! rdfs:subClassOf lib:Document. ! a rdfs:Resource. # über domain von rdf:typelib:EArticle a rdfs:Class; ub:23! rdfs:subClassOf lib:Article, lib:EDocument. ! a lib:Book; # über domain von isbn! ! a lib:Document; # über subClassOf von Booklib:Author a rdfs:Class. ! a rdfs:Resource. # über domain von rdf:type !lib:author a rdfs:Property; <http://dbpedia.org/resource/Donald_Ervin_Knuth>! rdfs:domain lib:Document; ! a lib:Author; # über range von author! rdfs:range lib:Author. ! a rdfs:Resource. # über domain von rdf:typelib:title a rdfs:Property; <http://www.w3.org/People/Berners-Lee/card#i>! rdfs:domain lib:Document; ! a lib:Author; # über range von author! rdfs:range xsd:string. ! a rdfs:Resource. # über domain von rdf:type!lib:isbn a rdfs:Property; lib:isbn! rdfs:domain lib:Book; ! rdfs:domain lib:Document; # über domain von! rdfs:range xsd:string. ! ! ! ! ! # isbn & subClassOf von Book! ...lib:webVersion a rdfs:Property;! rdfs:domain lib:EArticle.# Instanzenub:42 lib:title "The Semantic Web";! lib:author <http://www.w3.org/People/Berners-Lee/card#i>;! lib:webVersion <http://www.scientificamerican.com/article.cfm?id=the-semantic-web>.ub:23 lib:title "The Art of Computer Programming";! lib:isbn "978-0321751041";! lib:author <http://dbpedia.org/resource/Donald_Ervin_Knuth>.
  4. 4. Aufgabe 2 • Welche Tripel können zusätzlich abgeleitet werden, wenn folgende Aussagen hinzugefügt werden?lib:Document rdfs:subClassOf <http://xmlns.com/foaf/0.1/Document>.<http://xmlns.com/foaf/0.1/Document> rdfs:subClassOf lib:Document.lib:title rdfs:subPropertyOf <http://purl.org/dc/elements/1.1/title>.lib:author rdfs:subPropertyOf <http://xmlns.com/foaf/0.1/maker>.
  5. 5. Zusammenfassung RDFS• Klassenhierachien• Eigenschaftshierarchien• domain und range➡Eingeschränkte Ausdruckskraft
  6. 6. Introducing: OWL
  7. 7. OWL Web Ontology Language• Reichhaltige rdfs:Resource Ontologiesprache rdfs:Class rdf:Property• erweitert RDF- Schema owl:Class owl:Object Property owl:Datatype Property
  8. 8. OWLWeb Ontology Language rdfs:Resource rdfs:Class rdf:Property owl:Object owl:Datatype owl:Class Property Property
  9. 9. OWL Web Ontology Language• Verschiedene Varianten mit unterschiedlicher Ausdruckskraft: • OWL Full • OWL DL Subset • OWL Lite • Informell: RDFS-Plus (RDFS + ein bisschen OWL)
  10. 10. Namespacehttp://www.w3.org/2002/07/owl#
  11. 11. Klassen und Properties• owl:Class <owl:Class rdf:about="http://example.org/uni-vokabular#Dozent"/> <owl:DatatypeProperty rdf:about="&uni;name">• owl:DatatypeProperty <rdfs:domain rdf:resource="&uni;Dozent"/> <rdfs:range rdf:resource="&xsd;string"/> </owl:DatatypeProperty> <owl:ObjectProperty rdf:about="&uni;wirdGehaltenVon">• owl:ObjectProperty <rdfs:domain rdf:resource="&uni;Veranstaltung"/> <rdfs:range rdf:resource="&uni;Dozent"/> </owl:ObjectProperty>
  12. 12. Umkehrung• owl:inverseOf • Eigenschaft einer Property • Gibt eine andere Property an, die die gleiche Bedeutung hat, bei der aber Subjekt und Objekt vertauscht sind. <owl:ObjectProperty rdf:about="&uni;wirdGehaltenVon"/> <owl:ObjectProperty rdf:about="&uni;haelt"> <owl:inverseOf rdf:resource="&uni;wirdGehaltenVon"/> </owl:ObjectProperty>
  13. 13. Umkehrung IF ?x ?P ?y• Regel: AND ?Q owl:inverseOf ?P THEN ?y ?Q ?x. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix uni: <http://example.org/uni-vokabular#>. @prefix hki: <http://hki.uni-koeln.de/stundenplan/>. hki:5 uni:wirdGehaltenVon staff:thaller. uni:haelt owl:inverseOf uni:wirdGehaltenVon. # abgeleitete Tripel hki:thaller uni:haelt hki:5.
  14. 14. Symmetrische Eigenschaften• owl:SymmetricProperty • Klasse von Properties • Gibt an, dass bei der gleichen Eigenschaft Subjekt und Objekt vertauscht werden können. <owl:ObjectProperty rdf:about="&ex;worksWith"> <rdf:type rdf:resource="&owl;SymmetricProperty"/> </owl:ObjectProperty>
  15. 15. Symmetrische Eigenschaften• Regel: IF ?P rdf:type owl:SymmetricProperty THEN ?P owl:inverseOf ?P. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix ex: <http://example.org/work-relations#>. @prefix staff: <http://hki.uni-koeln.de/staff/>. staff:cuy ex:worksWith staff:de-oliveira. ex:worksWith a owl:SymmetricProperty. # abgeleitete Tripel ex:worksWith owl:inverseOf ex:worksWith. staff:de-oliveira ex:worksWith staff:cuy.
  16. 16. Transitivität• owl:TransitiveProperty • Klasse von Properties • Mathematisches Konzept der Transitivität: • wenn R(a,b) und R(b,c), dann R(a,c) <owl:ObjectProperty rdf:about="&uni;vorfahreVon"> <rdf:type rdf:resource="&owl;TransitiveProperty"/> </owl:ObjectProperty>
  17. 17. Transitivität IF ?x ?P ?y• Regel: AND ?y ?P ?z AND ?P rdf:type owl:TransitiveProperty THEN ?x ?P ?z. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix ex: <http://example.org/family-relations#>. @prefix sw: <http://example.org/star-wars/>. sw:shmi.skywalker ex:vorfahreVon sw:anakin.skywalker. sw:anakin.skywalker ex:vorfahreVon sw:luke.skywalker. ex:vorfahreVon a owl:TransitiveProperty. # abgeleitete Tripel sw:shmi.skywalker ex:vorfahreVon sw:luke.skywalker.
  18. 18. Äquivalenz• owl:equivalentClass• owl:equivalentProperty• Besonders nützlich beim Zusammenführen unterschiedlicher Vokabulare (Mapping). <owl:Class rdf:about="&klips;Veranstaltung"> <owl:equivalentClass rdf:resource="&hki;Kurs"/> </owl:Class> <owl:ObjectProperty rdf:about="&klips;wirdGehaltenVon"> <owl:equivalentProperty rdf:resource="&hki;unterrichtetVon"/> </owl:ObjectProperty>
  19. 19. Äquivalenz• Regeln: IF ?A owl:equivalentClass ?B IF ?A owl:equivalentClass ?B AND ?y rdf:type ?A AND ?y rdf:type ?B THEN ?y rdf:type ?B. THEN ?y rdf:type ?A. owl:equivalentClass rdf:type owl:SymmetricProperty. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix klips: <http://klips.uni-koeln.de/vokabular#>. @prefix hki: <http://hki.uni-koeln.de/kursverwaltung#>. @prefix course: <http://hki.uni-koeln.de/courses/>. course:7 a hki:Kurs. hki:unterrichtetVon rdfs:domain hki:Kurs. klips:Veranstaltung owl:equivalentClass hki:Kurs. # abgeleitete Tripel course:7 a klips:Veranstaltung. hki:unterrichtetVon rdfs:domain hki:Kurs.
  20. 20. Äquivalenz• owl:sameAs • Gibt an, dass zwei Individuen identisch sind. <movie:Character rdf:about="&sw;anakin.skywalker"/> <movie:Character rdf:about="&sw;darth.vader"> <owl:sameAs rdf:resource="&sw;anakin.skywalker"/> </movie:Character>
  21. 21. Äquivalenz• Regeln: IF ?s ?P ?x IF ?x ?P ?o AND ?x owl:sameAs ?y AND ?x owl:sameAs ?y THEN ?s ?P ?y. THEN ?y ?P ?o. owl:sameAs rdf:type owl:SymmetricProperty. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix klips: <http://klips.uni-koeln.de/vokabular#>. @prefix kv: <http://klips.uni-koeln.de/veranstaltungen/>. @prefix hc: <http://hki.uni-koeln.de/courses/>. @prefix staff: <http://hki.uni-koeln.de/staff/>. kv:2342 klips:titel "Semantic Technologies"; ! a klips:Uebung. staff:cuy klips:haelt hc:5. hc:5 owl:sameAs kv:2342. # abgeleitete Tripel hc:5 klips:titel "Semantic Technologies"; ! a klips:Uebung. staff:cuy klips:haelt kv:2342.
  22. 22. Funktionale Eigenschaften• owl:FunctionalProperty • Klasse von Properties • Gibt an, dass eine Property für eine Instanz nur einen einzigen Wert annehmen kann. <owl:ObjectProperty rdf:about="&uni;wirdGehaltenVon"> <rdf:type rdf:resource="&owl;FunctionalProperty"/> </owl:ObjectProperty>
  23. 23. Funktionale Eigenschaften IF ?x ?P ?a• Regel: AND ?x ?P ?p AND ?P rdf:type owl:FunctionalProperty THEN ?a owl:sameAs ?b. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix ex: <http://example.org/family-relations#>. @prefix sw: <http://example.org/star-wars/>. sw:luke.skywalker ex:hatVater sw:anakin.skywalker. sw:luke.skywalker ex:hatVater sw:darth.vader. ex:hatVater a owl:FunctionalProperty. # abgeleitete Tripel sw:anakin.skywalker owl:sameAs sw:darth.vader.
  24. 24. Invers-funktionale Eigenschaften• owl:InverseFunctionalProperty • Klasse von Properties • Gibt an, dass eine Property für jede Instanz einen anderen Wert annimmt. <owl:ObjectProperty rdf:about="&uni;matrikelNr"> <rdf:type rdf:resource="&owl;InverseFunctionalProperty"/> </owl:ObjectProperty>
  25. 25. Invers-funktionale Eigenschaften IF ?x ?P ?a• Regel: AND ?y ?P ?a AND ?P rdf:type owl:InverseFunctionalProperty THEN ?x owl:sameAs ?y. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix ex: <http://example.org/family-relations#>. @prefix sw: <http://example.org/star-wars/>. staff:cuy foaf:mbox <mailto:sebastian.cuy@uni-koeln.de>. person:523 foaf:mbox <mailto:sebastian.cuy@uni-koeln.de>. foaf:mbox a owl:InverseFunctionalProperty. # abgeleitete Tripel person:523 owl:sameAs staff:cuy.
  26. 26. Aufgaben
  27. 27. Aufgabe 1• Gegeben ist folgende Ontologie für die Verwaltung von Musik: ‣ http://www.hki.uni-koeln.de/sites/all/files/courses/ 5899/11-11-23_music-ontology_simple.owl• Erweitern Sie diese Ontologie mit den Konstrukten aus RDFS+ so, dass dadurch möglichst viele Schlüsse automatisch gezogen werden können.
  28. 28. Aufgabe 2• Erstellen Sie mit Hilfe der Klassen und Properties aus RDFS+ ein Mapping der Ontologie aus Aufgabe 1 auf FOAF.

×