SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
Semantic Technologies
    Übung, Wintersemester 2011/12
  26. Oktober 2011 - von XML zu RDF
Aufgabe 1
• Entwickeln Sie ein XML Schema zur
     Erfassung von Veranstaltungen an einer
     Universität.
    • Das Schema soll unter anderem Elemente für Veranstaltung,
        Lehrperson, und Raum enthalten.

    •   Definieren Sie dabei mindestens einen eigenen simpleType, der einen
        Basistyp einschränkt.

•   Schreiben Sie ein XML-Dokument, das diesem Schema entspricht und
    validieren Sie es.
Aufgabe 2

• Entwickeln Sie ein weiteres XML Schema
     zur Erfassung von persönlichen
     Stundenplänen.
    • Das Schema soll die Elemente aus dem aus Aufgabe 1 entstandenen
        Schema mit Hilfe von Namespaces wiederverwenden.

•   Schreiben Sie ein XML-Dokument, das diesem Schema entspricht und
    validieren Sie es.
Nachtrag
Referenzen XML
Möglichkeit 1:
              xsd:keyref
                           <order>
                               <number>123ABBCC123</number>
                               <items>
                                   <shirt number="557">
                                       <quantity>1</quantity>
                                       <color value="blue"/>
                                   </shirt>
                                   <shirt number="557">
                                       <quantity>1</quantity>


•   Referenzen innerhalb
                                       <color value="sage"/>
                                   </shirt>
                                   <hat number="563">
    eines XML-Dokuments                <quantity>1</quantity>
                                   </hat>
                               </items>
                               <products>
                                   <product>
                                       <number>557</number>
                                       <name>Short-Sleeved Linen Blouse</name>
                                       <price currency="USD">29.99</price>
                                   </product>
                                   <product>
                                       <number>563</number>
                                       <name>Ten-Gallon Hat</name>
                                       <price currency="USD">69.99</price>
                                   </product>
                               </products>
                           </order>
Möglichkeit 2:
                 XLink
•   Referenzen innerhalb eines XML-Dokuments und zu
    anderen XML-Dokumenten

         <order xmlns:xlink="http://www.w3.org/1999/xlink">
             <number>123ABBCC123</number>
             <items>
                 <shirt xlink:type="simple" xlink:href="#557">
                     <quantity>1</quantity>
                     <color value="blue"/>
                 </shirt>
                 <hat xlink:type="simple"
                      xlink:href="http://example.org/products/hats.xml#563">
                     <quantity>1</quantity>
                 </hat>
             </items>
             <products>
                 <product xml:id="557">
                     <name>Short-Sleeved Linen Blouse</name>
                     <price currency="USD">29.99</price>
                 </product>
             </products>
         </order>
Semantik
Ist XML eine semantische Technologie?
Semantik in XML
•   Bsp.: Manfred Thaller ist der Dozent von Softwaretechnologie I.

            <veranstaltung name="Softwaretechnologie I">
                <dozent>Manfred Thaller</dozent>
            </veranstaltung>




            <dozent name="Manfred Thaller">
                <veranstaltung>Softwaretechnologie I</veranstaltung>
            </dozent>




            <unterrichtsAngebot>
                <dozent>Manfred Thaller</dozent>
                <veranstaltung>Softwaretechnologie I</veranstaltung>
            </unterrichtsAngebot>
Semantik in XML


• Die Bedeutung der Relationen zwischen
  Elementen ist in XML nie explizit.
Semantik in XML
     <dozent>Jan Wieners</dozent>
     <professor>Manfred Thaller</professor>
     <veranstaltung name="Programmierpraktikum C++">
         <wirdGehaltenVon>Daniel de Oliveira</wirdGehaltenVon>
     </veranstaltung>




•   Aufgabe: Finde alle Dozenten - XPath: //dozent

•   Antwort: „Jan Wieners“
Semantik in XML
• Die Bedeutung der Relationen zwischen
  Elementen ist in XML nie explizit.
• Die Bedeutung einzelner Elemente ist in
  XML nie explizit.


➡RDF to the rescue!
RDF
Ein Datenmodell für das Semantic Web
Verhältnis XML zu RDF
                                   •   XML = Markupsprache

     XML           RDF             •   XML Schema
                                       beschränkt die Struktur
                                       von XML


     XML          RDF              •   RDF = Datenmodell

    Schema       Schema            •   RDF Schema definiert
                                       das Vokabular von RDF


•   RDF/XML ist eine konkrete Syntax zum Austausch von RDF
RDF: Grundidee
• resources + properties = statements

• resources
 •   alles was mit einem URI referenziert werden kann

• properties
 •   Eigenschaften von Ressourcen
Exkurs: URIs
• Uniform Resource Identifier
 •   Ein globaler, eindeutiger Bezeichner für alles Mögliche

• Unterklassen: URL, URN
• Beispiele:
 •   http://de.wikipedia.org/wiki/Uniform_Resource_Identifier

 •   urn:isbn:4-7980-1224-6

 •   mailto:birgit.mustermann@example.org

 •   geo:48.33,14.122;u=22.5
RDF: Grundidee
•   Statement: „Der Wikipedia Artikel über Köln wurde
    zuletzt am 23.10.2011 bearbeitet.“
•   (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23)
                  resource                 property    value




•   Statement: „Köln hat 1.007.119 Einwohner“
•   (urn:example:city:cologne,inhabitants,1007119)
               resource         property      value
Beziehungen zwischen Ressourcen



•   Statement: „Der Wikipedia Artikel über Köln beschreibt die
    Stadt Köln.“
•   (http://de.wikipedia.org/wiki/Köln,isAbout,urn:example:city:cologne)
              resource                 property           value

              Subjekt                   Verb              Objekt
Graphstruktur
•   (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23)

•   (urn:example:city:cologne,inhabitants,1007119)

•   (http://de.wikipedia.org/wiki/Köln,isAbout,urn:example:city:cologne)




http://de.wikipedia.org/         isAbout
                                                     urn:example:city:cologne
        wiki/Köln
         lastModified




                                                              inhabitants
       2011-10-23                                            1007119
Problem
•   (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23)

    oder

•   (http://de.wikipedia.org/wiki/Köln,lastMod,2011-10-23)

    oder

•   (http://de.wikipedia.org/wiki/Köln,letzteÄnderung,2011-10-23)




• Lösung: Auch Properties erhalten URIs
    •      Beispiel: (http://de.wikipedia.org/wiki/Köln,
                       http://purl.org/dc/elements/1.1/date,2011-10-23)
Klassen
•   Auch Klassen sind Ressourcen und besitzen URIs.

•   Die Zugehörigkeit einer Ressource zu einer Klasse wird
    mit der Property http://www.w3.org/1999/02/22-rdf-syntax-ns#type
    ausgedrückt.

•   Beispiele:
    •   (urn:example:city:cologne,
            http://www.w3.org/1999/02/22-rdf-syntax-ns#type,
            http://dbpedia.org/ontology/City)

    •   (http://hki.uni-koeln.de/st_2011/persons/sebastian.cuy,
            http://www.w3.org/1999/02/22-rdf-syntax-ns#type,
            http://xmlns.com/foaf/0.1/Person)
Namespaces
• Klassen und Properties unterhalb des
  gleichen URI bilden einen Namespace.

• Beispiel: Dublin Core
 •   http://purl.org/dc/elements/1.1/title

 •   http://purl.org/dc/elements/1.1/creator

 •   http://purl.org/dc/elements/1.1/date

 •   ...
Serialisierungen von
           RDF
• RDF/XML - .rdf

• Notation 3 (N3) - .n3
 • Turtle - .ttl          Subset
   • N-Triples - .nt
N-Triples
<urn:example:city:cologne> <http://www.w3.org/1999/02/22-rdf-syntax-
ns#type> <http://dbpedia.org/ontology/PopulatedPlace>.

<urn:example:city:cologne> <http://dbpedia.org/property/name> "Köln".

<urn:example:city:cologne><http://purl.org/dc/elements/1.1/
description> <http://de.wikipedia.org/wiki/Köln>.

<http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/
date> "2011-10-23".

<http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/
creator> "Max Mustermann".

<http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/
title> "Köln".
FOAF
                     Friend of a Friend

•   Namespace: http://xmlns.com/foaf/0.1/

•   Klassen und Properties (FOAF Core):
    •   Agent            •   givenName

    •   Person           •   knows
                                                •   Organization

    •   name             •   based_near
                                                •   Group

    •   title            •   age
                                                •   member

    •   img              •   made (maker)
                                                •   Document

    •   depiction        •   primaryTopic
                                                •   Image
        (depicts)            (primaryTopicOf)

    •   familyName       •   Project
Aufgaben
Aufgabe 1
• Beschreiben Sie sich selbst und ihre
  Beziehungen untereinander mit den
  Begriffen aus FOAF in N-Triples.
  •   URIs:
      •   Personen:   http://hki.uni-koeln.de/st_2011/person/max.musterman


      •   Dieser Kurs:   http://hki.uni-koeln.de/st_2011/group/st_2011


      •   Ihre Gruppe:   http://hki.uni-koeln.de/st_2011/group/gruppenname


  •   Benutzen Sie auch Begriffe aus FOAF Social Web
Aufgabe 2

• Verkürzen Sie die Darstellungsweise der
  Tripel indem Sie die Turtle-Syntax benutzen.
• Tips:
 •   Nutzen Sie „@prefix“

 •   Vermeiden Sie die Wiederholung von Subjekten durch
     die Verwendung von „;“.

Weitere ähnliche Inhalte

Andere mochten auch

Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine Camblong
Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine CamblongDossier Mécénat_Projet Bénin_Rotaract Paris_Séverine Camblong
Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine CamblongSéverine CAMBLONG
 
Educación parvularia
Educación parvulariaEducación parvularia
Educación parvulariapooleth
 
Schulsachen
SchulsachenSchulsachen
Schulsachenanchenek
 
Présentation des produits d' Horizons Ie 2010
Présentation des produits d' Horizons Ie  2010Présentation des produits d' Horizons Ie  2010
Présentation des produits d' Horizons Ie 2010Mercy
 
Ad Effects 2012 - Werbewirkung von Online Werbeformaten
Ad Effects 2012 - Werbewirkung von Online WerbeformatenAd Effects 2012 - Werbewirkung von Online Werbeformaten
Ad Effects 2012 - Werbewirkung von Online WerbeformatenBurdaForward Advertising
 
9 9 session 8
9 9 session 89 9 session 8
9 9 session 8nblock
 
Mat recoleccion de datos cualitativo
Mat recoleccion de datos cualitativoMat recoleccion de datos cualitativo
Mat recoleccion de datos cualitativosusilux
 
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...Robin
 
Sesion 10 paternidad al maximo
Sesion 10 paternidad al maximoSesion 10 paternidad al maximo
Sesion 10 paternidad al maximoAsael Lopez
 
Dtsr cd handbuch
Dtsr cd handbuchDtsr cd handbuch
Dtsr cd handbuchELF MACHINE
 
Berufsunfähigkeit für studenten
Berufsunfähigkeit für studentenBerufsunfähigkeit für studenten
Berufsunfähigkeit für studentenUwe Thierschmann
 
La web 2.0
La web 2.0La web 2.0
La web 2.0olga
 

Andere mochten auch (20)

Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine Camblong
Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine CamblongDossier Mécénat_Projet Bénin_Rotaract Paris_Séverine Camblong
Dossier Mécénat_Projet Bénin_Rotaract Paris_Séverine Camblong
 
Educación parvularia
Educación parvulariaEducación parvularia
Educación parvularia
 
Schulsachen
SchulsachenSchulsachen
Schulsachen
 
Présentation des produits d' Horizons Ie 2010
Présentation des produits d' Horizons Ie  2010Présentation des produits d' Horizons Ie  2010
Présentation des produits d' Horizons Ie 2010
 
Ad Effects 2012 - Werbewirkung von Online Werbeformaten
Ad Effects 2012 - Werbewirkung von Online WerbeformatenAd Effects 2012 - Werbewirkung von Online Werbeformaten
Ad Effects 2012 - Werbewirkung von Online Werbeformaten
 
Esforse
EsforseEsforse
Esforse
 
FORAG - Social Trends - Karriere
FORAG - Social Trends - KarriereFORAG - Social Trends - Karriere
FORAG - Social Trends - Karriere
 
bewegung ist das gegenteil von stillstand
bewegung ist das gegenteil von stillstandbewegung ist das gegenteil von stillstand
bewegung ist das gegenteil von stillstand
 
9 9 session 8
9 9 session 89 9 session 8
9 9 session 8
 
Mat recoleccion de datos cualitativo
Mat recoleccion de datos cualitativoMat recoleccion de datos cualitativo
Mat recoleccion de datos cualitativo
 
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...
Kann ich gelöschte Bilder vom Samsung Galaxy S6 Edge/S6/S5/S4/S3/S2/S wiederh...
 
Sesion 10 paternidad al maximo
Sesion 10 paternidad al maximoSesion 10 paternidad al maximo
Sesion 10 paternidad al maximo
 
Mobile Effects 2012-1
Mobile Effects 2012-1 Mobile Effects 2012-1
Mobile Effects 2012-1
 
Dtsr cd handbuch
Dtsr cd handbuchDtsr cd handbuch
Dtsr cd handbuch
 
Berufsunfähigkeit für studenten
Berufsunfähigkeit für studentenBerufsunfähigkeit für studenten
Berufsunfähigkeit für studenten
 
Practicas2 TABLESPACE
Practicas2 TABLESPACEPracticas2 TABLESPACE
Practicas2 TABLESPACE
 
La web 2.0
La web 2.0La web 2.0
La web 2.0
 
FORAG - Social Trends 2012 - Sport
FORAG - Social Trends 2012 - SportFORAG - Social Trends 2012 - Sport
FORAG - Social Trends 2012 - Sport
 
Música y Diseño
Música y DiseñoMúsica y Diseño
Música y Diseño
 
Xavier Monteys
Xavier MonteysXavier Monteys
Xavier Monteys
 

Ähnlich wie Sitzung 3

Linked Open (Library) Data
Linked Open (Library) DataLinked Open (Library) Data
Linked Open (Library) DataFab Fuerste
 
Einführung in Linked Data
Einführung in Linked DataEinführung in Linked Data
Einführung in Linked DataFelix Ostrowski
 
Sitzung 7
Sitzung 7Sitzung 7
Sitzung 7scuy
 
Schau, Mutti, keine Programmierzeile
Schau, Mutti, keine ProgrammierzeileSchau, Mutti, keine Programmierzeile
Schau, Mutti, keine Programmierzeilerokr
 
Sitzung 2
Sitzung 2Sitzung 2
Sitzung 2scuy
 
Javascript done right
Javascript done rightJavascript done right
Javascript done rightDirk Ginader
 
Anforderungsanalsyse - Prototyping mit JavaScript
Anforderungsanalsyse - Prototyping mit JavaScriptAnforderungsanalsyse - Prototyping mit JavaScript
Anforderungsanalsyse - Prototyping mit JavaScriptChristian Baranowski
 
Semantic Web in Bibliotheken mal praktisch
Semantic Web in Bibliotheken mal praktischSemantic Web in Bibliotheken mal praktisch
Semantic Web in Bibliotheken mal praktischkostaedt
 
Domain Driven Design in Rails
Domain Driven Design in RailsDomain Driven Design in Rails
Domain Driven Design in RailsAngelo Maron
 
Docbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLDocbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLPeter Eisentraut
 
Sh optifind praesentation_20130311
Sh optifind praesentation_20130311Sh optifind praesentation_20130311
Sh optifind praesentation_20130311Stefan Moises
 
Fanstatic pycon.de 2012
Fanstatic pycon.de 2012Fanstatic pycon.de 2012
Fanstatic pycon.de 2012Daniel Havlik
 
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden.
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden. "SEO Texte": So schreibst du Texte für User, die auch gefunden werden.
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden. Daniel Marx
 
Sitzung 9
Sitzung 9Sitzung 9
Sitzung 9scuy
 
Einstieg in Xpath für SEO (Campixx2021)
Einstieg in Xpath für SEO (Campixx2021)Einstieg in Xpath für SEO (Campixx2021)
Einstieg in Xpath für SEO (Campixx2021)Sebastian Adler
 

Ähnlich wie Sitzung 3 (20)

Linked Open (Library) Data
Linked Open (Library) DataLinked Open (Library) Data
Linked Open (Library) Data
 
Einführung in Linked Data
Einführung in Linked DataEinführung in Linked Data
Einführung in Linked Data
 
TYPO3 Translations
TYPO3 Translations TYPO3 Translations
TYPO3 Translations
 
XHTML
XHTMLXHTML
XHTML
 
Sitzung 7
Sitzung 7Sitzung 7
Sitzung 7
 
Schau, Mutti, keine Programmierzeile
Schau, Mutti, keine ProgrammierzeileSchau, Mutti, keine Programmierzeile
Schau, Mutti, keine Programmierzeile
 
Sitzung 2
Sitzung 2Sitzung 2
Sitzung 2
 
Javascript done right
Javascript done rightJavascript done right
Javascript done right
 
Anforderungsanalsyse - Prototyping mit JavaScript
Anforderungsanalsyse - Prototyping mit JavaScriptAnforderungsanalsyse - Prototyping mit JavaScript
Anforderungsanalsyse - Prototyping mit JavaScript
 
DSpace und das Semantic Web
DSpace und das Semantic WebDSpace und das Semantic Web
DSpace und das Semantic Web
 
Semantic Web in Bibliotheken mal praktisch
Semantic Web in Bibliotheken mal praktischSemantic Web in Bibliotheken mal praktisch
Semantic Web in Bibliotheken mal praktisch
 
Domain Driven Design in Rails
Domain Driven Design in RailsDomain Driven Design in Rails
Domain Driven Design in Rails
 
Docbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLDocbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XML
 
Sh optifind praesentation_20130311
Sh optifind praesentation_20130311Sh optifind praesentation_20130311
Sh optifind praesentation_20130311
 
WiSe 2013 | IT-Zertifikat: AMM - Semantic Web II: RDF und FOAF
WiSe 2013 | IT-Zertifikat: AMM - Semantic Web II: RDF und FOAFWiSe 2013 | IT-Zertifikat: AMM - Semantic Web II: RDF und FOAF
WiSe 2013 | IT-Zertifikat: AMM - Semantic Web II: RDF und FOAF
 
Fanstatic pycon.de 2012
Fanstatic pycon.de 2012Fanstatic pycon.de 2012
Fanstatic pycon.de 2012
 
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden.
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden. "SEO Texte": So schreibst du Texte für User, die auch gefunden werden.
"SEO Texte": So schreibst du Texte für User, die auch gefunden werden.
 
Sitzung 9
Sitzung 9Sitzung 9
Sitzung 9
 
Einstieg in Xpath für SEO (Campixx2021)
Einstieg in Xpath für SEO (Campixx2021)Einstieg in Xpath für SEO (Campixx2021)
Einstieg in Xpath für SEO (Campixx2021)
 
Moderner Webentwicklungs-Workflow
Moderner Webentwicklungs-WorkflowModerner Webentwicklungs-Workflow
Moderner Webentwicklungs-Workflow
 

Mehr von scuy

SS13 Sitzung 1
SS13 Sitzung 1SS13 Sitzung 1
SS13 Sitzung 1scuy
 
Semesterarbeiten
SemesterarbeitenSemesterarbeiten
Semesterarbeitenscuy
 
Sitzung 11
Sitzung 11Sitzung 11
Sitzung 11scuy
 
Sitzung 10
Sitzung 10Sitzung 10
Sitzung 10scuy
 
Sitzung 8
Sitzung 8Sitzung 8
Sitzung 8scuy
 
Sitzung 6
Sitzung 6Sitzung 6
Sitzung 6scuy
 
Sitzung 5
Sitzung 5Sitzung 5
Sitzung 5scuy
 
Sitzung 4
Sitzung 4Sitzung 4
Sitzung 4scuy
 
Sitzung 1
Sitzung 1Sitzung 1
Sitzung 1scuy
 

Mehr von scuy (9)

SS13 Sitzung 1
SS13 Sitzung 1SS13 Sitzung 1
SS13 Sitzung 1
 
Semesterarbeiten
SemesterarbeitenSemesterarbeiten
Semesterarbeiten
 
Sitzung 11
Sitzung 11Sitzung 11
Sitzung 11
 
Sitzung 10
Sitzung 10Sitzung 10
Sitzung 10
 
Sitzung 8
Sitzung 8Sitzung 8
Sitzung 8
 
Sitzung 6
Sitzung 6Sitzung 6
Sitzung 6
 
Sitzung 5
Sitzung 5Sitzung 5
Sitzung 5
 
Sitzung 4
Sitzung 4Sitzung 4
Sitzung 4
 
Sitzung 1
Sitzung 1Sitzung 1
Sitzung 1
 

Sitzung 3

  • 1. Semantic Technologies Übung, Wintersemester 2011/12 26. Oktober 2011 - von XML zu RDF
  • 2. Aufgabe 1 • Entwickeln Sie ein XML Schema zur Erfassung von Veranstaltungen an einer Universität. • Das Schema soll unter anderem Elemente für Veranstaltung, Lehrperson, und Raum enthalten. • Definieren Sie dabei mindestens einen eigenen simpleType, der einen Basistyp einschränkt. • Schreiben Sie ein XML-Dokument, das diesem Schema entspricht und validieren Sie es.
  • 3. Aufgabe 2 • Entwickeln Sie ein weiteres XML Schema zur Erfassung von persönlichen Stundenplänen. • Das Schema soll die Elemente aus dem aus Aufgabe 1 entstandenen Schema mit Hilfe von Namespaces wiederverwenden. • Schreiben Sie ein XML-Dokument, das diesem Schema entspricht und validieren Sie es.
  • 5. Möglichkeit 1: xsd:keyref <order> <number>123ABBCC123</number> <items> <shirt number="557"> <quantity>1</quantity> <color value="blue"/> </shirt> <shirt number="557"> <quantity>1</quantity> • Referenzen innerhalb <color value="sage"/> </shirt> <hat number="563"> eines XML-Dokuments <quantity>1</quantity> </hat> </items> <products> <product> <number>557</number> <name>Short-Sleeved Linen Blouse</name> <price currency="USD">29.99</price> </product> <product> <number>563</number> <name>Ten-Gallon Hat</name> <price currency="USD">69.99</price> </product> </products> </order>
  • 6. Möglichkeit 2: XLink • Referenzen innerhalb eines XML-Dokuments und zu anderen XML-Dokumenten <order xmlns:xlink="http://www.w3.org/1999/xlink"> <number>123ABBCC123</number> <items> <shirt xlink:type="simple" xlink:href="#557"> <quantity>1</quantity> <color value="blue"/> </shirt> <hat xlink:type="simple" xlink:href="http://example.org/products/hats.xml#563"> <quantity>1</quantity> </hat> </items> <products> <product xml:id="557"> <name>Short-Sleeved Linen Blouse</name> <price currency="USD">29.99</price> </product> </products> </order>
  • 7. Semantik Ist XML eine semantische Technologie?
  • 8. Semantik in XML • Bsp.: Manfred Thaller ist der Dozent von Softwaretechnologie I. <veranstaltung name="Softwaretechnologie I"> <dozent>Manfred Thaller</dozent> </veranstaltung> <dozent name="Manfred Thaller"> <veranstaltung>Softwaretechnologie I</veranstaltung> </dozent> <unterrichtsAngebot> <dozent>Manfred Thaller</dozent> <veranstaltung>Softwaretechnologie I</veranstaltung> </unterrichtsAngebot>
  • 9. Semantik in XML • Die Bedeutung der Relationen zwischen Elementen ist in XML nie explizit.
  • 10. Semantik in XML <dozent>Jan Wieners</dozent> <professor>Manfred Thaller</professor> <veranstaltung name="Programmierpraktikum C++"> <wirdGehaltenVon>Daniel de Oliveira</wirdGehaltenVon> </veranstaltung> • Aufgabe: Finde alle Dozenten - XPath: //dozent • Antwort: „Jan Wieners“
  • 11. Semantik in XML • Die Bedeutung der Relationen zwischen Elementen ist in XML nie explizit. • Die Bedeutung einzelner Elemente ist in XML nie explizit. ➡RDF to the rescue!
  • 12. RDF Ein Datenmodell für das Semantic Web
  • 13. Verhältnis XML zu RDF • XML = Markupsprache XML RDF • XML Schema beschränkt die Struktur von XML XML RDF • RDF = Datenmodell Schema Schema • RDF Schema definiert das Vokabular von RDF • RDF/XML ist eine konkrete Syntax zum Austausch von RDF
  • 14. RDF: Grundidee • resources + properties = statements • resources • alles was mit einem URI referenziert werden kann • properties • Eigenschaften von Ressourcen
  • 15. Exkurs: URIs • Uniform Resource Identifier • Ein globaler, eindeutiger Bezeichner für alles Mögliche • Unterklassen: URL, URN • Beispiele: • http://de.wikipedia.org/wiki/Uniform_Resource_Identifier • urn:isbn:4-7980-1224-6 • mailto:birgit.mustermann@example.org • geo:48.33,14.122;u=22.5
  • 16. RDF: Grundidee • Statement: „Der Wikipedia Artikel über Köln wurde zuletzt am 23.10.2011 bearbeitet.“ • (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23) resource property value • Statement: „Köln hat 1.007.119 Einwohner“ • (urn:example:city:cologne,inhabitants,1007119) resource property value
  • 17. Beziehungen zwischen Ressourcen • Statement: „Der Wikipedia Artikel über Köln beschreibt die Stadt Köln.“ • (http://de.wikipedia.org/wiki/Köln,isAbout,urn:example:city:cologne) resource property value Subjekt Verb Objekt
  • 18. Graphstruktur • (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23) • (urn:example:city:cologne,inhabitants,1007119) • (http://de.wikipedia.org/wiki/Köln,isAbout,urn:example:city:cologne) http://de.wikipedia.org/ isAbout urn:example:city:cologne wiki/Köln lastModified inhabitants 2011-10-23 1007119
  • 19. Problem • (http://de.wikipedia.org/wiki/Köln,lastModified,2011-10-23) oder • (http://de.wikipedia.org/wiki/Köln,lastMod,2011-10-23) oder • (http://de.wikipedia.org/wiki/Köln,letzteÄnderung,2011-10-23) • Lösung: Auch Properties erhalten URIs • Beispiel: (http://de.wikipedia.org/wiki/Köln, http://purl.org/dc/elements/1.1/date,2011-10-23)
  • 20. Klassen • Auch Klassen sind Ressourcen und besitzen URIs. • Die Zugehörigkeit einer Ressource zu einer Klasse wird mit der Property http://www.w3.org/1999/02/22-rdf-syntax-ns#type ausgedrückt. • Beispiele: • (urn:example:city:cologne, http://www.w3.org/1999/02/22-rdf-syntax-ns#type, http://dbpedia.org/ontology/City) • (http://hki.uni-koeln.de/st_2011/persons/sebastian.cuy, http://www.w3.org/1999/02/22-rdf-syntax-ns#type, http://xmlns.com/foaf/0.1/Person)
  • 21. Namespaces • Klassen und Properties unterhalb des gleichen URI bilden einen Namespace. • Beispiel: Dublin Core • http://purl.org/dc/elements/1.1/title • http://purl.org/dc/elements/1.1/creator • http://purl.org/dc/elements/1.1/date • ...
  • 22. Serialisierungen von RDF • RDF/XML - .rdf • Notation 3 (N3) - .n3 • Turtle - .ttl Subset • N-Triples - .nt
  • 23. N-Triples <urn:example:city:cologne> <http://www.w3.org/1999/02/22-rdf-syntax- ns#type> <http://dbpedia.org/ontology/PopulatedPlace>. <urn:example:city:cologne> <http://dbpedia.org/property/name> "Köln". <urn:example:city:cologne><http://purl.org/dc/elements/1.1/ description> <http://de.wikipedia.org/wiki/Köln>. <http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/ date> "2011-10-23". <http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/ creator> "Max Mustermann". <http://de.wikipedia.org/wiki/Köln> <http://purl.org/dc/elements/1.1/ title> "Köln".
  • 24. FOAF Friend of a Friend • Namespace: http://xmlns.com/foaf/0.1/ • Klassen und Properties (FOAF Core): • Agent • givenName • Person • knows • Organization • name • based_near • Group • title • age • member • img • made (maker) • Document • depiction • primaryTopic • Image (depicts) (primaryTopicOf) • familyName • Project
  • 26. Aufgabe 1 • Beschreiben Sie sich selbst und ihre Beziehungen untereinander mit den Begriffen aus FOAF in N-Triples. • URIs: • Personen: http://hki.uni-koeln.de/st_2011/person/max.musterman • Dieser Kurs: http://hki.uni-koeln.de/st_2011/group/st_2011 • Ihre Gruppe: http://hki.uni-koeln.de/st_2011/group/gruppenname • Benutzen Sie auch Begriffe aus FOAF Social Web
  • 27. Aufgabe 2 • Verkürzen Sie die Darstellungsweise der Tripel indem Sie die Turtle-Syntax benutzen. • Tips: • Nutzen Sie „@prefix“ • Vermeiden Sie die Wiederholung von Subjekten durch die Verwendung von „;“.