Januar 2012 Wiederholung

Daten- und Metadatenstandards Wintersemester 2011 / 2012 10. Januar 2012 – Wiederholung Universität zu Köln Historisch-Kulturwissenschaftliche Inform...
7 downloads 0 Views 5MB Size
Daten- und Metadatenstandards Wintersemester 2011 / 2012 10. Januar 2012 – Wiederholung

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Seminarverlauf    

Vorlesungsbeginn: 10.10.2011 | Vorlesungsende: 03.02.2012 Ferien-/Feiertage: 01.11.2011 (Allerheiligen) 23.12.2011 - 06.01.2012 (Weihnachtsferien)

Seminartermine:  18. Oktober ◦ ◦

           

Organisatorisches Daten, Information, Metadaten – was ist das?

25. Oktober: XML 01. November: fällt aus 08. November: XML II 15. November: XML + Schema (DTD, XML Schema, RelaxNG) 22. November: DTD 29. November: XML + CSS 06. Dezember: XPath und XSLT 13. Dezember: XPath und XSLT II: Von XHTML nach X / TEI 20. Dezember: fällt aus 10. Januar: Wiederholung / Klausurvorbereitung 17. Januar / 24. Januar: Dublin Core, Semantic Web, MAB, METS/MODS 31. Januar: Klausur Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

I. Grundbegriffe

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Wissenspyramide

Quelle: http://www.wzl.rwth-aachen.de/de/ebecb2e7d199a686c125736f00454c10/11_v_deu.pdf Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Arbeitsdefinitionen 

Daten (Plural: Daten, Singular: Datum): digitale Repräsentation von Information. Konkret: eine Folge digitaler Zeichen: 1001 0010 1010 0110



Information: Datum bzw. sind Daten mit inhaltlicher Bedeutung.  Semantisierte Daten

Beispiele: „Der QR-Code repräsentiert die Aussage “ „Die Binärfolge 1001 0010 1010 0110 bedeutet “. Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Repräsentation Information Repräsentation Abstraktion Daten

Zwei Prozesse: Repräsentation und Abstraktion:  Repräsentation: Die Bedeutung, d.h. der Informationsgehalt von Daten ergibt sich erst aus der Kenntnis der benutzten Repräsentation.  Repräsentation: äußere Form der Darstellung (von Information)  Abstraktion: Prozess der Interpretation von Daten  Informationsgewinnung Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Information / Daten: Aphex Twin

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Metadaten /-informationen  Informationen (bzw. Daten), die andere Informationen (bzw. Daten) beschreiben.

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

II. Text / XML Wohlgeformtheit und Gültigkeit

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Text?

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XML & Co. 

Grundidee (wichtig!): Strikte Trennung von ◦ Inhalt (XML) ◦ Struktur (DTD / Schema) ◦ Darstellung (CSS / XSLT)

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XML: Aufbau Jan Wieners Kursteilnehmerinnen und –teilnehmer „Daten- und Metadatenstandards“ Wintersemester 2011/12 Hallo!



Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XML: Visualisierung Jan Wieners Kursteilnehmerinnen und – teilnehmer „Daten- und Metadatenstandards“ Wintersemester 2011/12 Hallo!

nachrichtensammlung

nachricht



sender

empfaenger

inhalt

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XML: Anforderungen Wohlgeformtheit 

XML-Dokumente müssen wohlgeformt (well-formed) sein, d.h. sie müssen den Regeln der XML-Syntax genügen (Auszug aus den Syntax-Regeln): ◦ Jedes XML-Dokument verfügt über EIN Wurzelelement. ◦ Jedes Element muss ein Start- und ein Endtag besitzen ◦ Elemente dürfen geschachtelt sein, dürfen sich aber nicht überlappen („Zwiebelschema“ beachten!). ◦ Ein Element darf nicht zwei Attribute mit dem gleichen Namen besitzen. ◦ Groß- und Kleinschreibung beachten! ◦ […]  Ein XML-Dokument ist „wohlgeformt“ („well formed“), wenn es die Regeln von XML einhält. Ein wohlgeformtes Dokument kann geparsed, (z.B. mit XPath) navigiert und mit anderen XML-Standards verarbeitet werden

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Wohlgeformt vs. gültig Gültigkeit Ein XML-Dokument ist „gültig“ („valid“), wenn es den Regeln eines Schemas entspricht. Strukturen und Inhalte eines gültigen XMLDokuments können leichter kontrolliert, konsistent gehalten und verarbeitet werden. Ein Schema beschreibt ein Modell explizit.





Strukturdefinition per Schemata / Gültigkeit von XML-Dokumenten ◦ DTD ◦ XML Schema ◦ RELAX NG ◦ Schematron

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Dokumenttypdefinitionen (DTD) Elemente bzw. Tags definieren 

Einzelnes Element:



Verschachtelung von Elementen repräsentieren:

Bitte beachten / merken: + (Pluszeichen): Das Tag muss mindestens einmal vorkommen, darf aber auch öfter im XML-Dokument angegeben werden. ? (Fragezeichen): Das Element darf einmal vorkommen, muss jedoch nicht im XML-Dokument angegeben sein. * (Sternchen): Das Tag darf mehrmals im XML-Dokument vorkommen, darf jedoch fehlen. #PCDATA (PCDATA = "Parseable Character Data"): Beliebige Daten / Zeichen als Inhalt des XML-Elementes Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Dokumenttypdefinitionen (DTD) Attribute definieren 



Beachten / Merken: #REQUIRED  Jedes Element mit dem Namen „tagname“ muss das Attribut „attributname“ enthalten. #IMPLIED  Das Attribut kann angegeben werden, muss jedoch nicht angegeben werden.

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Übung I 

Schreiben Sie ein XML-Dokument (ohne XML-Deklaration und DOCTYPE-Angabe) für die im Folgenden wiedergegebene Dokumenttypdefinition (DTD): Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Übung II 

Schreiben Sie eine Dokumenttypdefinition für das im Folgenden angegebene XML-Markup: 2009 Herta Müller(* 1953) Deutschland die mittels Verdichtung der Poesie und Sachlichkeit der Prosa Landschaften der Heimatlosigkeit zeichnet 2010 Mario Vargas Llosa(* 1936) Peru Peru / Spanien Spanien für seine Kartographie der Machtstrukturen und scharfkantigen Bilder individuellen Widerstands, des Aufruhrs und der Niederlage Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

…und die Klausur?  

      

Wie verhalten sich die Konzepte „Daten“ und „Information“ zueinander? Was sind Metadaten? Wozu werden Metadaten benötigt?  Worin besteht das Problem, das mit Hilfe von Metadaten gelöst werden soll? Was bezeichnet die „Wohlgeformtheit“, was die „Gültigkeit“ von XML-Dokumenten? Welche Anforderungen werden an ein wohlgeformtes XMLDokument gestellt? Was verbirgt sich hinter der Abkürzung „DTD“? Was beschreibt eine DTD / welchen Sinn haben Schemata? Grob: Von XML nach DTD Grob: Von DTD nach XML […] Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

III. XSLT

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XSLT: Intro 

XSL Transformation (XSLT)  Programmiersprache zur Umwandlung von XML-Dokumenten: ◦ XML  XHTML-Website, XML, SVG, etc.



Verwendet die Abfragesprache Xpath, um Teile eines XML-Dokumentes zu adressieren



Schablonenkonzept (Templates): ◦ Eine Transformation besteht aus einer Reihe von einzelnen Transformationsregeln, die als „Templates“ („Schablonen“) bezeichnet werden. ◦ Ein Template besitzt ein auf XPath basierendes Muster, das beschreibt, für welche Knoten es gilt, und einen Inhalt, der bestimmt, wie das Template seinen Teil des Zielbaums erzeugt.

 Vgl. Handout! Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XSLT und die Praxis: CD-Katalog

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XSLT und XPath: Praxis II  Variablen cdkatalog-foreach.xslt CD-Kollektion Meine CD-Kollektion Titel ( Tags) in XML-Datenbasis: […] Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XSLT und XPath: Praxis III  for-each cdkatalog-foreach.xslt […] CD Titel:
Künstler:
Label:
Jahr:
Bildurl:


Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

IV. XSLT und Xpath: Achsen & Co.

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath  

XPath arbeitet mit dem vom Prozessor verarbeiteten (geparsten) XML-Dokument Ein Beispiel: Murakami Haruki Hard-boiled Wonderland Roman Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath 1 2 3 Murakami 4 Haruki 5 Hard-boiled Wonderland 6 Roman

1

6

5

2

3

4

Zahlenwerte 1 bis 6 geben die Reihenfolge an, in der ein XMLProzessor die Knoten ablaufen wird.  Dokumentreihenfolge („Document Ordner“) / Tiefensuche Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath Begrifflichkeiten XPath  Wurzelknoten (Root Node)  Wurzel des XML-Dokuments  Elementknoten  Attributknoten  Kommentarknoten  Namensraumknoten  Processing-Instruction-Knoten  Textknoten

1

6

5

2

3

4

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Exkurs: Bäume

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Bäume 

Baum: Begrifflichkeiten Wurzel Kante

Innerer Knoten / Kindknoten

Blatt

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Bäume 

„Höhe“ des Baumes:

Niveau 0

Niveau 1

Niveau 2



Baumhöhe = 3 Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Traversierung 



Traversieren  Jeden Knoten des Baumes besuchen Reihenfolge, in der die Knoten besucht werden: ◦ ◦ ◦ ◦

Preorder, auch: „Hauptreihenfolge“ / Tiefensuche Inorder, auch: „symmetrische Reihenfolge“ Postorder, auch: „Nebenreihenfolge“ Levelorder, auch: „Breitensuche“

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung 

Rekursive Regel: ◦ besuche die Wurzel ◦ Besuche den linken Unterbaum ◦ Besuche den rechten Unterbaum  WLR

Quelle: http://de.wikipedia.org/w/index.php?title=Datei:Depth-First-Search.gif&filetimestamp=20090326120256 (MRE) Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 0 P M

S

A

L

E

A

R

T

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 1 P M

S

A

L

E

A

R

T

Ausgabe: P

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 2 P M

S

A

L

E

A

R

T

Ausgabe: P M

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 3 P M

S

A

L

E

A

R

T

Ausgabe: P M S

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 4 P M

S

A

L

E

A

R

T

Ausgabe: P M S A

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 5 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 6 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 7 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L E

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 8 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L E R

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 9 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L E R T

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 10 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L E R T E

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Preorder Traversierung – Schritt 11 P M

S

A

L

E

A

R

T

Ausgabe: P M S A A L E R T E E

E

E Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Zurück zu XPath: Navigation im Baum

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Navigation Knotenbeziehungen  Achsen:  Elternknoten (parent) – Jedes Element verfügt über einen Elternknoten. Ausnahme: ???  Vorfahre (ancestor) – Elternknoten von Knoten Beispiel: Der Knoten „2“ ist Vorfahre des Knotens „3“.  Kind (child) – Untergeordnete Knoten Beispiel: „3“ ist Kindknoten von „2“.  Geschwister (siblings): Knoten mit gleichen Elternknoten sind Geschwisterknoten. Beispiel: Der Knoten „3“ ist Geschwisterknoten des Knotens „4“.

1

6

5

2

3

4

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Navigation  Holt den Inhalt des Elementes bzw. Knotens „vorname“ aus dem Baum 1 2 3 Murakami 4 Haruki 5 Hard-boiled Wonderland 6 Roman

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Achsen

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Achsen 

Über die Achsen wird festgelegt, in welche Richtung im Knotenbaum navigiert wird: ◦ „Navigiere vom Wurzelement „buecher“ zum Kindelement „autor“ und gebe mir den Inhalt des Kindelementes „name“ aus:

◦ Ich befinde mich im Element „name“. Gehe von hier aus zurück zum Geschwisterknoten „vorname“ und gebe mir den Inhalt aus:

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Achsen 

„Irgendwo im Baum befindet sich das Element „Gattung“. Suche das Element und gebe mir den Inhalt aus“:

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Achsen II (ausführliche Schreibweise) 

Durch den Ausdruck werden alle Kindknoten (Achse „child“) ermittelt, die das Elternelement „vorname“ besitzen.



Soll der Elternknoten von „vorname“ ermittelt werden, würde die „parent“-Achse verwendet werden:

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

XPath: Achsen 

Verfügbare Achsen: ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

child (Kind) parent (Elternknoten  ../) descendant (Nachkommen) ancestor (Vorfahre) following (Nachfolgende Knoten) preceding-sibling (Vorherige Geschwisterknoten) following-sibling (Nachfolgende Geschwisterknoten) self (aktueller Knoten  .) descendant-or-self (Nachkomme oder aktueller Knoten) ancestor-or-self (Vorfahre oder aktueller Knoten)

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Adressierung von Knoten

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Adressierung 

Um auf die Knoten eines XML-Dokumentes zugreifen zu können, müssen sie adressiert werden. In XPath wird hierzu – vom aktuellen Knoten ausgehend – ein Pfad definiert.



Unterscheidung ausführliche vs. verkürzte Achsenbezeichnung: ◦ ausführlich: /child::autor/child::buch/attribute::titel ◦ verkürzt: /autor/buch/@titel

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

Pfadangaben 

Absolute vs. relative Pfade: ◦ Bei relativen Pfaden wird von dem Knoten ausgegangen, an dem sich der Interpreter befindet. ../../vorname ◦ Bei absoluten Pfadangaben wird der Pfad vollständig bzw. absolut angegeben /buch/autor/vorname

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

…und die Klausur 

Was verbirgt sich hinter der Abkürzung „XSLT“? ◦ Was ist XSLT? ◦ Wozu dient XSLT?



 



In welchem Verhältnis stehen XSLT und XPath zueinander? Wozu dient XPath? Wozu wird die Angabe verwendet - was geschieht hier? Nennen und beschreiben Sie zwei XPath-Achsen.

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

…und die Klausur II 

Gegeben sei die folgende XML-Datei: Murakami Haruki Hard-boiled Wonderland Roman

Was liefern die folgenden XPath-Ausdrücke zurück / Was selektieren die folgenden XPath-Ausdrücke?    



Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA

/

Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners, MA