1 / 50

XML und Datenbanken - Einführung in XML -

XML und Datenbanken - Einführung in XML -. Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de www.xml-und-datenbanken.de. Inhalt. XML Elemente, Attribute Vergleich Elemente und Attribute ID/IDREF DTDs

aurora
Télécharger la présentation

XML und Datenbanken - Einführung in XML -

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML und Datenbanken- Einführung in XML - Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik meike@informatik.uni-rostock.de www.xml-und-datenbanken.de

  2. Inhalt • XML • Elemente, Attribute • Vergleich Elemente und Attribute • ID/IDREF • DTDs • Elemente, Attribute, Entities • XLink, XPointer • Eigenschaften von XML-Dokumenten • Weiterführende Literatur - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  3. <content> XML builds on the principles of two existing languages, <emph>HTML </emph> and <emph>SGML </emph> to create a simple mechanism .. The generalized markup concept .. </content> <order> <customer>Meyer</customer> <position> <isbn>1-234-56789-0</isbn> <number>2</number> <price currency=´Euro´>30.00</price> </position> </order> Beispiele für XML-Dokumente - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Elemente und Attribute hierarchische Schachtelung Sequenz Markup in Volltexten Mixed Content Elemente

  4. „Grundbausteine“ eines XML-Dokumentes Ein Element besteht aus: Start-Tag Ende-Tag und Elementinhalt Beispiel: <vortragender> Ronald Bourret </vortragender> Syntax von Elementen /1 - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Start-Tag Elementinhalt Ende-Tag

  5. Syntax von Elementen /2 Leere Elemente sind möglich: Beispiel: <koordinaten/> Elemente können verschachtelt werden: <vortragender> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Start-Tag Elementinhalt Ende-Tag

  6. Graphische Darstellung von XML-Dokumenten • XML-Dokumente sind Bäume! • Beispiel: <vortragender> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> • korrekte Schachtelung der Elemente notwendig - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Elementknoten Textknoten

  7. Verwendung einer Schemabeschreibung: DTD • Darstellung, welche Elemente auftreten können und wie sie geschachtelt werden • Also: Deklaration von Strukturinformationen • Vorteile einer DTD: • Entspricht einer Dokumentation für die XML-Dokumente • Anwendungen können darauf reagieren • Fehler in XML-Dokumenten können erkannt werden • Oft: bessere Qualität der XML-Dokumente, weil durchdachteres Vorgehen - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  8. Definition von Elementen in einer DTD XML-Dokument: <vortragender> Ronald Bourret </vortragender> Zugehörige DTD: <!ELEMENT vortragender (#PCDATA)> XML-Dokument: <vortragender> <name> Bourret </name> <vorname> Ronald </vorname> </vortragender> Zugehörige DTD: <!ELEMENT vortragender (name, vorname)> <!ELEMENT name (#PCDATA)> <!ELEMENT vorname (#PCDATA)> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  9. Definition von Elementen in einer DTD (Inhaltsmodelle) <!ELEMENT hotel (name, adresse)> <!ELEMENT name (#PCDATA)> <!ELEMENT adresse (plz, ort, ((strasse, nummer?) | postfach))> <!ELEMENT beschreibung (#PCDATA | ausstattung | gastronomie)*> • Sequenz (A , B) A und B müssen in der angegebenen Reihenfolge im Dokument auftreten • Alternative (A | B) entweder A oder B treten im Dokumente auf • Wiederholung A? - 0..1 Mal A+ - 1..n Mal A* - 0..n Mal • Mixed Content (#PCDATA | A | B)* A, B oder beliebiger Text treten im Dokument auf - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  10. Beispiele zur Definition von Elementen in einer DTD /1 <!ELEMENT hotel (name, adresse)> <hotel> <name>Hotel am Leuchtturm</name> <adresse>...</adresse> </hotel> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  11. Beispiele zur Definition von Elementen in einer DTD /2 <!ELEMENT adresse (plz, ort, ((strasse, nummer?) | postfach))> <adresse> <plz>18119</plz> <ort>Warnemuende</ort> <strasse>Seestrasse</strasse> <nummer>12</nummer> </adresse> <adresse> <plz>18051</plz> <ort>Rostock</ort> <postfach>12345</postfach> </adresse> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  12. Beispiele zur Definition von Elementen in einer DTD /3 <!ELEMENT beschreibung (# PCDATA | ausstattung | gastronomie)*> <beschreibung>Das Hotel am Leuchtturm befindet sich direkt am Alten Strom, mit Blick auf die Hafeneinfahrt, die Mole und den Strand.</beschreibung> <beschreibung>Unser Hotel verfügt über eine <ausstattung> Sauna </ausstattung> und eine <ausstattung> Meerwasserschwimmhalle </ausstattung>. Das <gastronomie> Hotelrestaurant</gastronomie> bietet regionale Küche und Fischspezialitäten. </beschreibung> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  13. Attribute werden einem Element des XML-Dokumentes zugeordnet: <vortragender tutorial=´T1´> Ronald Bourret </vortragender> Zugehörige DTD: <!ELEMENT vortragender (#PCDATA)> <!ATTLIST vortragender tutorial CDATA #REQUIRED> Syntax von Attributen /1 - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Attributname Attributwert Start-Tag Elementinhalt Ende-Tag

  14. XML-Dokument <koordinaten x=´200´ y=´300´ z=´150´ /> DTD <!ELEMENT koordinaten EMPTY> <!ATTLIST koordinaten x CDATA #REQUIRED y CDATA #REQUIRED z CDATA #IMPLIED > Syntax von Attributen / 2 - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  15. Darstellung von XML-Dokumenten (mit Elementen und Attributen) • XML-Dokumente sind Bäume! Beispiel: <vortragender tutorial=´T1´> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur vortragender tutorial name vorname T1 Ronald Bourret Elementknoten Textknoten Attributknoten

  16. Deklaration von Attributen in einer DTD Attribute haben • einen Namen • einen Typ (CDATA, ID, IDREF/IDREFs, ENTITY/ENTITYS, NMTOKEN/NMTOKENS oder (wert1|wert2|...) Aufzählung möglicher Werte • eine Angabe, ob das Attribut auftreten muss (#REQUIRED, #IMPLIED oder #FIXED) oder • einen optionalen Defaultwert (bei #FIXED ist dieser auch erforderlich) - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur <!ATTLIST preis waehrung CDATA #REQUIRED> <!ATTLIST projekt id ID #REQUIRED> <!ATTLIST person projekt IDREF #REQUIRED> <!ATTLIST plz xml-sqltype CDATA #FIXED ´INTEGER´>

  17. ID / IDREF Attribute können als ID/ IDREF/ IDREFS definiert sein Werte innerhalb eines Dokumentes eindeutig - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur <projekt bearbeiter=´p0001´> <title>...</title> </projekt> <projekt bearbeiter=´a0001´> <title>...</title> </projekt> ... <person id=´p0001´> <name>Meyer</name> </person> ... <abteilung abt_id=´a0001´> <!ELEMENT projekt (title)> <!ATTLIST projekt bearbeiter IDREF #REQUIRED> <!ELEMENT person (name, ..)> <!ATTLIST person id ID #REQUIRED> ... <!ELEMENT abteilung EMPTY> <!ATTLIST abteilung abt_id ID #REQUIRED>

  18. ID/IDREF-Veranschaulichung Durch die Werte der IDREF-Attribute ergibt sich, welche IDs referenziert werden. Diese können verschiedenen Elementtypen zugeordnet sein. Globale Eindeutigkeit der IDs ist erforderlich. ganz anderes Konzept als Schl./Fremdschlüssel in DB - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  19. Elemente Quantifizierer 1/?/+/* Alternativen keine Defaultwerte keine Aufzählungstypen geeignet für komplexere Informationen Einsatz für Darstellung von Daten Attribute #REQUIRED/#IMPLIED keine Alternativen Defaultwerte Aufzählungstypen geeignet für strukturierte und wenig detaillierte Informationen Einsatz für Darstellung von Metadaten Verwendung von Elementen oder Attributen (in DTDs) - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  20. Entities /1 Allgemeine Entity-Deklarationen: • zur Definition von Dokumentbestandteilen <!ENTITY hansesailtermin ´11.-14. August 2005´> <!ENTITY hansesailteilnehmer ´200 Traditionssegler und Museumsschiffe´> <veranstaltung> Die Hansesail findet in diesem Jahr vom &hansesailtermin; statt. Es werden &hansesailteilnehmer; erwartet. </veranstaltung> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  21. Entities /2 Vordefinierte Entities • zur Verwendung spezieller Zeichen • &lt; für < • &gt; für > • &amp; für & • &apos; für ´ • &quot; für “ • Zeichen können nicht direkt im Text dargestellt werden, da sie eine besondere Bedeutung haben. • Diese Entities kann jeder XML-Prozessor auswerten. - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  22. Entities /3 Character Entities • zur Definition von Sonderzeichen • Dezimalzahlen im Bereich 0..255 • Verwendung der Zeichen der erweiterten ASCII-Menge (ISO 8859/1), auch Latin-1 genannt • Dezimalzahlen im Bereich 256..65535 • Verwendung der Zeichen des Unicode-Zeichensatzes (ISO 10646) • Anstelle von Dezimalzahlen lassen sich Hexadezimalzahlen verwenden, diesen wird ein x vorangestellt • Beispiel: • &#60 stellt das Zeichen < dar - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  23. Entities /4 • Nichtgeparste Entities zur Einbindung anderer Dateiformate • Bilder und ähnliches • Beispiel: <!ELEMENT Hotel (#PCDATA)> <!ATTLIST Hotel ansicht ENTITY #IMPLIED> <!ENTITY ansicht_Huebner SYSTEM "ansicht_Huebner.gif" NDATA GIF> <!NOTATION GIF SYSTEM 'gifviewer.exe‘> <Hotel ansicht="ansicht_Huebner"> Strand Hotel Hübner </Hotel> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  24. Entities /5 • Parameter Entities • zur Verwendung in DTDs • Beispiel: • <!ENTITY % adressdef ´(ort,plz,strasse,nummer)´> • <!ELEMENT adresse %adressdef;> • Einsatz zur Deklaration von mehrfach auftretenden Teilen einer DTD • Ziel: Wiederverwendung, „Modularisierung“ - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  25. Processing Instructions Anweisungen für die Verarbeitung des Dokuments • Einschränkung: im Namen der Processing Instruction darf der Teilstring xml nicht auftreten   • gebräuchlichster Einsatz: Zuweisung von Stylesheets zu XML-Dokumenten. Syntax: <? PI-Name PI-Anweisung ?> Beispiel:  <?xml-stylesheet type="text/xsl" href="C:/Eigene Dateien/meike/xml/my-style.xsl"?> • Anwendungen muss Processing Instruction auswerten können  - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  26. Kommentare • können in DTDs und in XML-Dokumenten auftreten • Verwendung: • Strukturierung von Dokumenten, • Gliederung • Lesbarkeit für den Anwender erhöhen • Kommentare lassen sich durch Applikationen auswerten (z.B. mit XML-Prozessoren, XSLT) • Dennoch nicht geeignet • um Informationen darzustellen, die ins XML-Dokument oder die Processing Instruction gehören • Syntax: <!-- Dies ist ein Beispielkommentar --> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  27. Aufbau eines XML-Dokumentes Bestandteile eines XML-Dokumentes Vorspann DTD XML DTD und XML schon kurz vorgestellt, wie sieht der Vorspann aus? - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  28. Vorspann eines XML-Dokumentes enthält die folgenden Bestandteile:  • version • gegenwärtig nur 1.0, 1.1 • falls zukünftig weitere Versionen als Empfehlung vom W3C verabschiedet werden, dann ermöglicht der Parameter die Verarbeitung verschiedener Versionen. • encoding (optional) • Kodierung des Dokuments,Beispiele (UTF-8 – auchDefaultwert, UTF-16 - müssen ebenfalls alle XML-Prozessoren unterstützen). • standalone (optional) • 'yes' - spezifiziert, dass dem Dokument keine externe Markup-Deklaration (DTD oder XML-Schema) zugeordnet wird, sonst 'no' • Defaultwert 'no'‚ wenn externe Deklaration definiert ist und standalone nichtangegeben ist - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  29. Beispiele für den Vorspann <?XML version="1.0" encoding="UTF-8" standalone="yes"> <?XML version="1.0" encoding="UTF-16" standalone="no"> <!DOCTYPE tourismus-infos SYSTEM "tourismus.dtd"> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  30. Eigenschaften von XML-Dokumenten Wohlgeformtheit • Dokument syntaktisch korrekt? Überprüft wird: • Alle Elemente müssen ein Start-Tag und ein Ende-Tag haben, außer leere Elemente • Korrekte Schachtelung von Tags • Alle Attributwerte stehen in Hochkommas oder Anführungsstrichen • Ohne zugeordnete DTD sind alle Attribute nach Definition vom Typ CDATA • Keine mehrfach auftretenden Attributnamen an einem Element • Alle Zeichen, die Markup sein könnten (Bsp <, &), dürfen nicht im Text auftreten, sondern müssen durch Entityreferenzen (&lt; &amp;) ersetzt werden • ... • Verlernen schlechter Eigenschaften, die man sich bei der HTML-Erstellung leicht angewöhnt  - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  31. Eigenschaften von XML-Dokumenten • Gültigkeit • Wohlgeformtheit und entspricht das XML-Dokument der zugeordneten DTD? • Getestet wird z.B.: • Inhaltsmodelle der Elemente, so im Schema definiert? • Attribute definiert? - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur Schema- beschreibung XML-Dokumente

  32. <!-- Hotel DTD--> <!ELEMENT hotel (name, kategorie?, adresse, hausbeschreibung, preise*> <!ATTLIST hotel id ID #REQUIRED url CDATA #REQUIRED> <!ELEMENT name (#PCDATA)> <!ELEMENT kategorie (#PCDATA)> <!ELEMENT adresse (plz, ort, strasse, hausnummer, telefon, fax?, e-mail?)> <!ELEMENT plz (#PCDATA)> ... <!ELEMENT hausbeschreibung (#PCDATA)> <!ELEMENT preise (#PCDATA | einzelzimmer | doppelzimmer | appartment)*> <!ATTLIST preise waehrung CDATA #REQUIRED> <!ELEMENT einzelzimmer (#PCDATA)> ... <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hotel SYSTEM "hotel_dt.dtd"> <hotel id="id001" url="http://www.hotel-huebner.de"> <name>Strand Hotel Huebner</name> <adresse> <plz>18119</plz> <ort>Rostock-Warnemuende</ort> ... </adresse> <hausbeschreibung> Direkt an der Promenade von Warnemuende befindet sich das Strand-Hotel Huebner mit Blick auf Leuchtturm, Hafeneinfahrt und Strand. </hausbeschreibung> <preise waehrung=„Euro"> <einzelzimmer>ab 78,-</></> ... </hotel> Ein umfangreicheres Beispiel - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  33. Umfangreicheres Beispiel: DTD <!ELEMENT publications (book | article | conference)*> <!ELEMENT book (front, body, references)> <!ATTLIST book isbn CDATA #REQUIRED> <!ELEMENT front (title, author+, edition?, publisher)> <!ELEMENT title (#PCDATA)> <!ELEMENT author (first, second, e-mail?)> <!ELEMENT first (#PCDATA)> ... <!ELEMENT edition (#PCDATA)> <!ELEMENT publisher (#PCDATA)> <!ELEMENT body (part+ | chapter+)> <!ELEMENT part (ptitle, chapter+)> <!ATTLIST part id ID #REQUIRED> <!ELEMENT ptitle (#PCDATA)> <!ELEMENT chapter (ctitle, section+)> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  34. Graphische Darstellung: DTD - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  35. Umfangreicheres Beispiel: XML-Dokument /1 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE publications SYSTEM "C:\..\vorlesungen\xmldb\publications.dtd"> <publications> <book isbn=„354041956"> <front> <title>Datenbanken und XML</title> <author><first>Wasilios</first><second>Kazakos</second></author> <author><first>Andreas</first><second>Schmidt</second></author> <author><first>Peter</first><second>Tomazcyk</second></author> <publisher>Springer Verlag</publisher> </front> <body> <part id="k1"> <ptitle>..</ptitle> ... </part> </body> </book> ... weiter auf der nächsten Seite - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  36. Umfangreicheres Beispiel: XML-Dokument /2 <book isbn=„3446220089"> <front> <title>XML und Datenbanken</title> <author> <first>Harald</first> <second>Schoening</second></author> <publisher>Hanser Verlag</publisher> </front> <body> <part id="s1"> <ptitle/> <chapter> <ctitle/> ... </chapter> </part> </body> <references>..</references> </book> </publications> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  37. Graphische Darstellung: XML-Dokument - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  38. Logische vs. physische Struktur - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  39. XLink / XPointer • Realisierung von Hyperlinks XLink: • Einfache und erweiterte Verweise sind möglich • Einfache Verweise (ähnlich wie in HTML) • Erweiterte Verweise können mit Metadaten annotiert werden XPointer: • Realisierung von Hyperlinks, die nicht nur auf ganze XML-Dokumente zeigen, sondern auf Bestandteile • diese Bestandteile werden durch XPath-Ausdrücke angegeben - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  40. XLink: einfache Verweise • Gehen von beliebigen Elementen aus, können die folgenden Attribute verwenden • xlink:type • Bei einfachen Verweisen auf simple gesetzt • xlink:href • Enthält den eigentlichen Verweis • xlink:role • xlink:arcrole • xlink:title • xlink:show • (new|replace|embed|other|none) – Anzeige des Verweises wird gesteuert • xlink:actuate • (onLoad|onRequest|other|none) – Zeitpunkt der Auswertung des Verweises wird festgelegt - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  41. XLink: Beispiel <?xml version="1.0" encoding="UTF-8"?> <rechnung kundennummer="k333063143" xmlns:xlink="http://www.w3.org/1999/xlink"> <monatspreis>0,00</monatspreis> <einzelverbindungsnachweis xlink:title="Monatsabrechnung" xlink:href="april2003.xml" xlink:show="embed"/> </rechnung> - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  42. XPointer • Realisierung von Hyperlinks, die direkt auf einzelne Bestandteile von XML-Dokumenten verweisen • XPath wird eingesetzt, um diese zu beschreiben • XPath ist eine Sprache, die der Adressierung von Dokumentbestandteilen dient • Auf XPath basiert eine Reihe weiterer Empfehlungen wie XQuery (Anfragesprache für XML-Dokumente), XSLT Transformationssprache für XML-Dokumente) und XPointer. • XPath ist Bestandteil einer eigenen Vorlesung, hier erfolgt nur ein Vorgriff • Informal: Adressierung von Dokumentteilen durch Beschreibung von Pfaden und Bedingungen - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  43. XPointer: Beispiel <lexikon> <eintrag stichwort="Information„> ... <erklaerung num="3"><anwendung>Informatik:</anwendung> die formulierte Unterrichtung nicht nur von Menschen, sondern auch von Organisationen und techn. Einrichtungen über Sachverhalte, Ereignisse, Abläufe. Die <siehe_eintrag xml:link="locator„ xlink:href="band3.xml#//eintrag@stichwort=´Informationstheorie´" xlink.show="replace" title="Informationstheorie">Informationstheorie </siehe_eintrag> versteht unter Informatik ein Maß, das den Zeichen einer Nachricht zugeordnet ist. </erklaerung> ... </eintrag> </lexikon> Der Verweis erfolgt in das Dokument band3.xml auf das Element eintrag, dem das Stichwort Informationstheorie als Attribut zugeordnet ist. - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  44. Vorausschau: andere Methoden zur Schemabeschreibung • XML-Schema (kommt in einer sp,teren Vorlesung) • Genauere Darstellung von Strukturinformation ist möglich, Bsp: minOccurs, maxOccurs, pattern, … • XML-Syntax • Datentypen (41 Standard-Datentypen, benutzerdefinierte DT)

  45. Beispiel: XML-Schema <xs:complexType name="Adresse"> <xs:complexContent> <xs:restriction base="xs:anyType"> <xs:sequence> <xs:element name="Ort" minOccurs="1" maxOccurs="1" type="ort" /> <xs:element name="PLZ" minOccurs="1" maxOccurs="1" type="xs:integer" /> <xs:element name= "Strasse" minOccurs="1" maxOccurs="1" type= "xs:string"/> <xs:element name="Nr" minOccurs="1" maxOccurs="1" type="hausnummer"/> </xs:sequence> </xs:restriction></xs:complexContent> </xs:complexType> <xs:element name=“adresse” type=“Adresse”>

  46. Zusammenfassung XML-Dokumente bestehen aus • Elementen • Attributen • Processing Instructions • Kommentaren Ihnen können externe und interne DTDs zugeordnet sein. Zuordnung eines XML-Schemas ist ebenfalls möglich. DTDs bzw. XML Schema beschreiben die Struktur von XML- Dokumenten. Gültigkeit der XML-Dokumente wird an diesen getestet. - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  47. Zusammenfassung / 2 • Durch diese einfache Syntax können verschiedene Arten von Informationen dargestellt werden • Palette reicht von Daten bis hin zu Dokumenten • Siehe dazu auch nächste Folie - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  48. Klassifikation von XML Dokumenten <order> <customer>Meyer</customer> <position> <isbn>1-234-56789-0</isbn> <number>2</number> <price currency=„Euro“>30.00</price> </position> </order> • Datenzentrierte Dokumente strukturiert, regulär Beispiele: Produktkataloge, Bestellungen, Rechnungen • Dokumentzentrierte Dokumente unstrukturiert, irregulär Beispiele: wissenschaftliche Artikel, Bücher, E-Mails, Webseiten • Semistrukturierte Dokumente datenzentrierte und dokumentzentrierte Anteile Beispiele: Veröffentlichungen, Amazon - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur <content> XML builds on the principles of two existing languages, <emph>HTML</emph> and <emph>SGML</emph> to create a simple mechanism .. The generalized markup concept .. </content> <book> <author>Neil Bradley</author> <title>XML companion</title> <isbn>1-234-56789-0</isbn> <content> XML builds on the principles of two existing languages, <emph>HTML</emph> and .. </content> </book>

  49. Empfehlung • Vor den nächsten Vorlesungen ist es sinnvoll, praktisch mit XML-Dokumenten und DTDs gearbeitet zu haben. • Dazu eine Übung oder individuelles Ausprobieren von • Erstellung eines XML-Dokumentes (mit Elementen und Attributen) • Test der Wohlgeformtheit • Erstellung einer DTD • Test der Gültigkeit. • Verwendbar dazu XML Spy, für 30 Tage kostenlose Probelizenz, kann unter www.xmlspy.com angefordert werden. - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

  50. Weiterführende Literatur • www.w3.org (Informationen des W3C) • ... unzählige Bücher - Einleitung • - Syntax • > Elemente • > Attribute • > ID, IDREF • > Entities • > PI • > Kommentare • - Vorspann • - Eigenschaften • - Beispiele • - XLink • XPointer • - Literatur

More Related