XML und Datenbanken - Einf - PowerPoint PPT Presentation

About This Presentation
Title:

XML und Datenbanken - Einf

Description:

... sondern auf Bestandteile diese Bestandteile werden durch XPath-Ausdr cke angegeben XLink: ... Auf XPath basiert eine Reihe weiterer Empfehlungen wie XQuery ... – PowerPoint PPT presentation

Number of Views:102
Avg rating:3.0/5.0
Slides: 51
Provided by: meik5
Category:
Tags: xml | xquery | datenbanken | einf | und | xlink | xpath

less

Transcript and Presenter's Notes

Title: XML und Datenbanken - Einf


1
XML und Datenbanken- Einführung in XML -
  • Meike Klettke
  • Universität Rostock
  • Fakultät für Informatik und Elektrotechnik
  • meike_at_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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

3
Beispiele für XML-Dokumente
  • ltordergt
  • ltcustomergtMeyerlt/customergt
  • ltpositiongt
  • ltisbngt1-234-56789-0lt/isbngt
  • ltnumbergt2lt/numbergt
  • ltprice currencyEurogt30.00lt/pricegt
  • lt/positiongt
  • lt/ordergt
  • ltcontentgt
  • XML builds on the principles of two
  • existing languages, ltemphgtHTML
  • lt/emphgt and ltemphgtSGML
  • lt/emphgt to create a simple mechanism .. The
    generalized markup concept .. lt/contentgt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

Elemente und Attribute hierarchische
Schachtelung Sequenz
Markup in Volltexten Mixed Content Elemente
4
Syntax von Elementen /1
  • Grundbausteine eines XML-Dokumentes
  • Ein Element besteht aus
  • Start-Tag
  • Ende-Tag und
  • Elementinhalt
  • Beispiel
  • ltvortragendergt Ronald Bourret lt/vortragendergt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

Start-Tag
Ende-Tag
Elementinhalt
5
Syntax von Elementen /2
  • Leere Elemente sind möglich
  • Beispiel
  • ltkoordinaten/gt
  • Elemente können verschachtelt werden
  • ltvortragendergt
  • ltnamegtBourretlt/namegt
  • ltvornamegtRonaldlt/vornamegt
  • lt/vortragendergt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

Start-Tag
Elementinhalt
Ende-Tag
6
Graphische Darstellung von XML-Dokumenten
  • XML-Dokumente sind Bäume!
  • Beispiel
  • ltvortragendergt
  • ltnamegtBourretlt/namegt
  • ltvornamegtRonaldlt/vornamegt
  • lt/vortragendergt
  • korrekte Schachtelung der
  • Elemente notwendig
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

8
Definition von Elementen in einer DTD
  • XML-Dokument
  • ltvortragendergt Ronald Bourret lt/vortragendergt
  • Zugehörige DTD
  • lt!ELEMENT vortragender (PCDATA)gt
  • XML-Dokument
  • ltvortragendergt
  • ltnamegt Bourret lt/namegt
  • ltvornamegt Ronald lt/vornamegt
  • lt/vortragendergt
  • Zugehörige DTD
  • lt!ELEMENT vortragender (name, vorname)gt
  • lt!ELEMENT name (PCDATA)gt
  • lt!ELEMENT vorname (PCDATA)gt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

9
Definition von Elementen in einer DTD
(Inhaltsmodelle)
  • 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

lt!ELEMENT hotel (name,
adresse)gt lt!ELEMENT name
(PCDATA)gt lt!ELEMENT adresse (plz, ort,
((strasse, nummer?)
postfach))gt lt!ELEMENT beschreibung (PCDATA
ausstattung gastronomie)gt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

10
Beispiele zur Definition von Elementen in einer
DTD /1
  • lt!ELEMENT hotel (name, adresse)gt
  • lthotelgt
  • ltnamegtHotel am Leuchtturmlt/namegt
  • ltadressegt...lt/adressegt
  • lt/hotelgt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

11
Beispiele zur Definition von Elementen in einer
DTD /2
  • lt!ELEMENT adresse (plz, ort, ((strasse, nummer?)
    postfach))gt
  • ltadressegt
  • ltplzgt18119lt/plzgt
  • ltortgtWarnemuendelt/ortgt
  • ltstrassegtSeestrasselt/strassegt
  • ltnummergt12lt/nummergt
  • lt/adressegt
  • ltadressegt
  • ltplzgt18051lt/plzgt
  • ltortgtRostocklt/ortgt
  • ltpostfachgt12345lt/postfachgt
  • lt/adressegt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

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

13
Syntax von Attributen /1
  • Attribute werden einem Element des XML-Dokumentes
    zugeordnet
  • ltvortragender tutorialT1gt Ronald Bourret
    lt/vortragendergt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

Attributname
Attributwert
Start-Tag
Ende-Tag
Elementinhalt
  • Zugehörige DTD
  • lt!ELEMENT vortragender (PCDATA)gt
  • lt!ATTLIST vortragender tutorial CDATA REQUIREDgt

14
Syntax von Attributen / 2
  • XML-Dokument
  • ltkoordinaten x200 y300 z150 /gt
  • DTD
  • lt!ELEMENT koordinaten EMPTYgt
  • lt!ATTLIST koordinaten x CDATA REQUIRED
  • y CDATA
    REQUIRED
  • z CDATA
    IMPLIED gt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

15
Darstellung von XML-Dokumenten (mit Elementen und
Attributen)
  • XML-Dokumente sind Bäume!
  • Beispiel
  • ltvortragender tutorialT1gt
  • ltnamegtBourretlt/namegt
  • ltvornamegtRonaldlt/vornamegt
  • lt/vortragendergt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

vortragender
tutorial
name
vorname
T1
Bourret
Ronald
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 (wert1wert2...)
  • 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

lt!ATTLIST preis waehrung
CDATA REQUIREDgt lt!ATTLIST projekt id ID
REQUIREDgt lt!ATTLIST person projekt
IDREF REQUIREDgt lt!ATTLIST plz xml-sqltype
CDATA FIXED INTEGERgt
17
ID / IDREF
  • Attribute können als ID/ IDREF/ IDREFS definiert
    sein
  • Werte innerhalb eines Dokumentes eindeutig
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

lt!ELEMENT projekt (title)gt lt!ATTLIST projekt
bearbeiter IDREF
REQUIREDgt lt!ELEMENT person (name,
..)gt lt!ATTLIST person id ID
REQUIREDgt ... lt!ELEMENT abteilung
EMPTYgt lt!ATTLIST abteilung abt_id ID
REQUIREDgt
ltprojekt bearbeiterp0001gt lttitlegt...lt/titlegt lt
/projektgt ltprojekt bearbeitera0001gt lttitlegt...
lt/titlegt lt/projektgt ... ltperson idp0001gt
ltnamegtMeyerlt/namegt lt/persongt ... ltabteilung
abt_ida0001gt
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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

19
Verwendung von Elementen oder Attributen (in DTDs)
  • 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
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

20
Entities /1
  • Allgemeine Entity-Deklarationen
  • zur Definition von Dokumentbestandteilen
  • lt!ENTITY hansesailtermin 11.-14. August 2005gt
  • lt!ENTITY hansesailteilnehmer 200
    Traditionssegler und Museumsschiffegt
  • ltveranstaltunggt
  • Die Hansesail findet in diesem Jahr vom
  • hansesailtermin statt.
  • Es werden hansesailteilnehmer erwartet.
  • lt/veranstaltunggt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

21
Entities /2
  • Vordefinierte Entities
  • zur Verwendung spezieller Zeichen
  • lt für lt
  • gt für gt
  • 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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 lt dar
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

23
Entities /4
  • Nichtgeparste Entities zur Einbindung anderer
    Dateiformate
  • Bilder und ähnliches
  • Beispiel
  • lt!ELEMENT Hotel (PCDATA)gt
  • lt!ATTLIST Hotel ansicht ENTITY IMPLIEDgt
  • lt!ENTITY ansicht_Huebner
  • SYSTEM "ansicht_Huebner.gif" NDATA GIFgt
  • lt!NOTATION GIF SYSTEM 'gifviewer.exegt
  •  
  • ltHotel ansicht"ansicht_Huebner"gt
  • Strand Hotel Hübner
  • lt/Hotelgt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

24
Entities /5
  • Parameter Entities
  • zur Verwendung in DTDs
  • Beispiel
  • lt!ENTITY adressdef (ort,plz,strasse,nummer)gt
  • lt!ELEMENT adresse adressdefgt
  • Einsatz zur Deklaration von mehrfach auftretenden
    Teilen einer DTD
  • Ziel Wiederverwendung, Modularisierung
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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 lt? PI-Name PI-Anweisung ?gt
  • Beispiel 
  • lt?xml-stylesheet type"text/xsl"
  • href"C/Eigene Dateien/meike/xml/my
    -style.xsl"?gt
  • Anwendungen muss Processing Instruction auswerten
    können 
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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 lt!-- Dies ist ein Beispielkommentar --gt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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 auch
    Defaultwert, 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 nicht angegeben ist
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

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

Schema-
beschreibung
XML-Dokumente
32
Ein umfangreicheres Beispiel
  • lt!-- Hotel DTD--gt
  • lt!ELEMENT hotel (name, kategorie?, adresse,
  • hausbeschreibung, preisegt
  • lt!ATTLIST hotel id ID REQUIRED
  • url CDATA REQUIREDgt
  • lt!ELEMENT name (PCDATA)gt
  • lt!ELEMENT kategorie (PCDATA)gt
  • lt!ELEMENT adresse (plz, ort,
  • strasse, hausnummer, telefon,
  • fax?, e-mail?)gt
  • lt!ELEMENT plz (PCDATA)gt
  • ...
  • lt!ELEMENT hausbeschreibung (PCDATA)gt
  • lt!ELEMENT preise (PCDATA einzelzimmer
  • doppelzimmer appartment)gt
  • lt!ATTLIST preise waehrung CDATA REQUIREDgt
  • lt!ELEMENT einzelzimmer (PCDATA)gt
  • ...
  • lt?xml version'1.0' encoding'UTF-8'?gt
  • lt!DOCTYPE hotel SYSTEM "hotel_dt.dtd"gt
  • lthotel id"id001"
  • url"http//www.hotel-huebner.de"gt
  • ltnamegtStrand Hotel Huebnerlt/namegt
  • ltadressegt
  • ltplzgt18119lt/plzgt
  • ltortgtRostock-Warnemuendelt/ortgt
  • ...
  • lt/adressegt
  • lthausbeschreibunggt Direkt an der Promenade
    von Warnemuende befindet sich das Strand-Hotel
    Huebner mit Blick auf Leuchtturm, Hafeneinfahrt
    und Strand.
  • lt/hausbeschreibunggt
  • ltpreise waehrungEuro"gt
  • lteinzelzimmergtab 78,-lt/gtlt/gt
  • ...
  • lt/hotelgt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

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

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

35
Umfangreicheres Beispiel XML-Dokument /1
  • lt?xml version"1.0" encoding"UTF-8"?gt
  • lt!DOCTYPE publications SYSTEM "C\..\vorlesungen\x
    mldb\publications.dtd"gt
  • ltpublicationsgt
  • ltbook isbn354041956"gt
  • ltfrontgt
  • lttitlegtDatenbanken und XMLlt/titlegt
  • ltauthorgt ltfirstgtWasilioslt/firstgt
    ltsecondgtKazakoslt/secondgt lt/authorgt
  • ltauthorgt ltfirstgtAndreaslt/firstgt
    ltsecondgtSchmidtlt/secondgt lt/authorgt
  • ltauthorgt ltfirstgtPeterlt/firstgt
    ltsecondgtTomazcyklt/secondgt lt/authorgt
  • ltpublishergtSpringer
    Verlaglt/publishergt
  • lt/frontgt
  • ltbodygt
  • ltpart id"k1"gt
  • ltptitlegt..lt/ptitlegt
  • ...
  • lt/partgt
  • lt/bodygt
  • lt/bookgt
  • ...
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

36
Umfangreicheres Beispiel XML-Dokument /2
  • ltbook isbn3446220089"gt
  • ltfrontgt
  • lttitlegtXML und Datenbankenlt/titlegt
  • ltauthorgt ltfirstgtHaraldlt/firstgt
    ltsecondgtSchoeninglt/secondgt lt/authorgt
  • ltpublishergtHanser Verlaglt/publishergt
  • lt/frontgt
  • ltbodygt
  • ltpart id"s1"gt
  • ltptitle/gt
  • ltchaptergt
  • ltctitle/gt
  • ...
  • lt/chaptergt
  • lt/partgt
  • lt/bodygt
  • ltreferencesgt..lt/referencesgt
  • lt/bookgt
  • lt/publicationsgt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

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

38
Logische vs. physische Struktur
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

40
XLink einfache Verweise
  • Gehen von beliebigen Elementen aus, können die
    folgenden Attribute verwenden
  • xlinktype
  • Bei einfachen Verweisen auf simple gesetzt
  • xlinkhref
  • Enthält den eigentlichen Verweis
  • xlinkrole
  • xlinkarcrole
  • xlinktitle
  • xlinkshow
  • (newreplaceembedothernone) Anzeige des
    Verweises wird gesteuert
  • xlinkactuate
  • (onLoadonRequestothernone) Zeitpunkt der
    Auswertung des Verweises wird festgelegt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

41
XLink Beispiel
lt?xml version"1.0" encoding"UTF-8"?gt ltrechnung
kundennummer"k333063143" xmlnsxlink"http//www.
w3.org/1999/xlink"gt ltmonatspreisgt0,00lt/monatsprei
sgt lteinzelverbindungsnachweis xlinktitle"Monats
abrechnung" xlinkhref"april2003.xml"
xlinkshow"embed"/gt lt/rechnunggt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

43
XPointer Beispiel
  • ltlexikongt
  • lteintrag stichwort"Informationgt ...
  • lterklaerung num"3"gtltanwendunggtInformatiklt/anwe
    ndunggt die formulierte
  • Unterrichtung nicht nur von Menschen,
    sondern auch von Organisationen und
    techn. Einrichtungen über Sachverhalte,
  • Ereignisse, Abläufe. Die
    ltsiehe_eintrag xmllink"locator
  • xlinkhref"band3.xml//eintrag_at_stichwo
    rtInformationstheorie"
    xlink.show"replace" title"Informationstheorie"gtI
    nformationstheorie
  • lt/siehe_eintraggt versteht unter
    Informatik ein Maß, das den Zeichen
  • einer Nachricht zugeordnet ist.
  • lt/erklaerunggt ...
  • lt/eintraggt
  • lt/lexikongt
  • Der Verweis erfolgt in das Dokument band3.xml auf
    das Element eintrag, dem
  • das Stichwort Informationstheorie als Attribut
    zugeordnet ist.
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • ltxscomplexType name"Adresse"gt
  • ltxscomplexContentgt ltxsrestriction
    base"xsanyType"gt ltxssequencegt
    ltxselement name"Ort" minOccurs"1"
    maxOccurs"1" type"ort" /gt
    ltxselement name"PLZ" minOccurs"1"
    maxOccurs"1" type"xsinteger" /gt
    ltxselement name "Strasse" minOccurs"1"
    maxOccurs"1"
    type "xsstring"/gt ltxselement name"Nr"
    minOccurs"1" maxOccurs"1"
    type"hausnummer"/gt
    lt/xssequencegt lt/xsrestrictiongtlt/xscomplexCo
    ntentgt
  • lt/xscomplexTypegt
  • ltxselement nameadresse typeAdressegt

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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt 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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

48
Klassifikation von XML Dokumenten
  • 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

ltordergt ltcustomergtMeyerlt/customergt
ltpositiongt ltisbngt1-234-56789-0lt/isbngt
ltnumbergt2lt/numbergt ltprice currencyEurogt30.0
0lt/pricegt lt/positiongt lt/ordergt
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

ltcontentgt XML builds on the principles of two
existing languages, ltemphgtHTMLlt/emphgt and
ltemphgtSGMLlt/emphgt to create a simple mechanism
.. The generalized markup concept .. lt/contentgt
ltbookgt ltauthorgtNeil Bradleylt/authorgt
lttitlegtXML companionlt/titlegt ltisbngt1-234-56789-0
lt/isbngt ltcontentgt XML builds on the
principles of two existing languages,
ltemphgtHTMLlt/emphgt and .. lt/contentgt lt/bookgt
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
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur

50
Weiterführende Literatur
  • www.w3.org (Informationen des W3C)
  • ... unzählige Bücher
  • - Einleitung
  • - Syntax
  • gt Elemente
  • gt Attribute
  • gt ID, IDREF
  • gt Entities
  • gt PI
  • gt Kommentare
  • - Vorspann
  • - Eigenschaften
  • - Beispiele
  • - XLink
  • XPointer
  • - Literatur
Write a Comment
User Comments (0)
About PowerShow.com