XML – Eine EinführungSeminar „XML und Datenbanken“ Christian Fuhrmann
08.05.2008
Gliederung
Christian Fuhrmann 08.05.2008
XML - Eine Einführung
1. Einführung2. Entwicklung3. Ziele von XML4. Sprachfamilie XML
Gliederung
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
1. Einführung2. Entwicklung3. Ziele von XML4. Sprachfamilie XML
Rohdaten
•Unverarbeitete Daten•Einzelner Datensatz•Benötigt Hintergrundwissen•Daten nur über Lage der Zeichen auslesbar
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Komma-getrennt
• Ansatzweise Struktur durch Kommas• Alternativ: Felder mit fester Länge (z.B. 8 Byte)• Keine Kenntnis welche Felder zusammen gehören
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Gruppierte Felder
•Hierarchie von Feldern und Unterfeldern•Zusammengehörigkeit verdeutlichen durch „,“ am Anfang und „$“ am Ende
•Besserer Zugriff auf Daten
•Kein Wissen über Felder, kennen nur Position
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Gruppierte und benannte Felder
•„,“ und „$“ durch <starttag> und </endtag> ersetzt•Jedes Feld im Datensatz hat einen Namen•Auf Felder anhand von Namen und Position verweisbar
XML
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Was ist XML?
•XML – eXtensible Markup Language• Seit Februar 1998 offizielle Empfehlung vom W3C• Erweiterbar:
• Keine vorgegebenen Tags• Für beliebige Information können passende Tags und
Attribute sowie eine geeignete Dokumentstruktur festgelegt werden
• Auszeichnungssprache• Text wird mit Textauszeichnungen (Markup) angereichert
•Forderung der Wohlgeformtheit, u.a.:• Genau ein Wurzelelement• Jedes Start-Tag muss zugehöriges End-Tag besitzen• Elemente korrekt ineinander geschachtelt
•Prüfung auf Gültigkeit durch entsprechendes Datenmodell
• DTD – Dokumenttypdefinition• XML-Schema
1. Einführung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Gliederung
2. Entwicklung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
1. Einführung2. Entwicklung3. Ziele von XML4. Sprachfamilie XML
troff & TeX
Generic Coding – Erforschung durch Graphic Communications Association (GCA)
1960er – GenCode-Projekt
Generalized Markup Language (GML) von IBM1970er/1980er – SGML durch Team aus ANSI (+ Goldfarb) unterstützt durch GCA Gencode Komitee
1985 – SGML User Group traf sich erstmals in U.K.
1986 – Bestätigung eines Standard für SGML durch ISO
1990er – HTML
1990er – Versuch SGML und HTML zu kombinieren XML
02/1998 – XML 1.0 vom W3C als offizielle Empfehlung verabschiedet
10/2000 – XML 1.0 Second Edition02/2004 – XML 1.0 Third Edition
– XML 1.1 als Alternative zu XML 1.0 08/2006 – XML 1.0 Fourth Edition
– XML 1.1 Second Edition...
2. Entwicklung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Abgrenzung SGML-HTML-XML
2. Entwicklung Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Gliederung
1. Einführung2. Entwicklung3. Ziele von XML4. Sprachfamilie XML
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
„Form should follow function“
•Besser mehrere Sprachen, jede speziell an vorhandene Daten angepasst, als eine universell für alle
•Bessere Beschriftung der Daten, mehr Formatierungs- und Durchsuchungsmöglichkeiten
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Unmissverständlichkeit von Dokumenten•Soll nur eine Möglichkeit geben Namen,
Reihenfolge und Hierarchie der Elemente zu interpretieren
•Strenge XML Regeln reduzieren Fehler und Komplexität von Software
•Nur kleiner Preis für gute Performance
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Textauszeichnung von Präsentation trennen•Für maximale Flexibilität für
Ausgabeformat, Gestaltungsinformationen extern speichern (Stylesheets)
•Erhöht Präsentationsmöglichkeiten Ändern der Stylesheets ohne Grunddaten zu ändern
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
„Keep it simple“
•Einfachheit Hauptgründe für ansteckende Wirkung
•XML 1.0 ist intuitiv, einfach zu lesen und elegant
•Erlaubt eigene Auszeichnungssprache zu entwerfen, die logischen Regeln genügt
•Teilmenge von SGML, ohne Dinge die man nicht braucht
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Erzwingt maximale Fehlerkontrolle•XML-Dokument so lange nicht
wohlgeformt, so lange es nicht gewissen Syntax-Anforderungen genügt
•Schwer bei Entwicklung, aber sichert Anwendbarkeit und Dauerhaftigkeit von Dokumenten
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Kulturunabhängig
•Keine Grenzen durch z.B. lateinisches Alphabet oder deutsche bzw. englische Sprache
•Verwendung von Unicode
3. Ziele von XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
Gliederung
4. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
1. Einführung2. Entwicklung3. Ziele von XML4. Sprachfamilie XML
3. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
4. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
•Kern von XML bildet die XML 1.0 Spezifikation (seit Februar 1998 Empfehlung von W3C) im Zusammenhang mit XML-Namespaces (seit Januar 1999) und XML-Schema (seit Mai 2001)
•Theoretische Basis mit XML-Information Set (seit Oktober 2001)
Ausführlich in [Vonhoeg] oder [Müller]
4. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
• XSL/XSLT• XSL (seit Oktober 2001 )zur Aufbereitung und
Formatierung von XML-Dokumenten und Präsentation in gewünschten Medium
• XSLT (seit November 1999; Januar 2007: XSLT 2.0) für Umwandlungen gegenüber dem XML-Quelldokument
• XPath (seit November 1999; Januar 2007: XPath 2.0)• Anfragesprache für XML-Dokumente• Erweiterung von XPath durch XQuery
• XPointer (seit März 2003)• Erweitert Adressierungsmöglichkeiten von Xpath
durch Zeiger über die Grenzen des einzelnen Dokuments hinaus
• XLink (seit Juni 2001)• Verknüpfungen zwischen Dokumenten
Ausführlich in [Vonhoeg]
4. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
• DOM (Document Object Model)• Von W3C entwickelt worden, um den Zugriff
auf Webdokumente, HTML oder XML zu vereinheitlichen
• baumbasierter Ansatz• SAX (Simple API für XML)
• De-facto Standard (keine offizielle W3c Empfehlung) von der Entwicklergemeinde schon seit längerem akzeptiert
• ereignisbasierter Ansatz
Ausführlich in [Vonhoeg]
4. Sprachfamilie XML Christian Fuhrmann 08.05.2008
XML - Eine Einführung
• XHTML (eXtensible Hypertext Markup Language)
• XML-kompatible Reformierung von HTML 4.0• WML (Wireless Markup Language)
• Sprache in der die Inhalte für WAP-Angebote für das Handy kodiert werden
• SMIL (Synchronized Multimedia Integration Language)
• Sprache für interaktive Multimedia-Lösungen im Web
• SOAP (Simple Object Access Protocol)• Vokabular für den Nachrichtenaustausch
zwischen AnwendungenAusführlich in [Vonhoeg] oder [W3CH]
Quellen
Christian Fuhrmann 08.05.2008
XML - Eine Einführung
[Vonhoeg] H. Vonhoegen. Einstieg in XML. Galileo Computing, Bonn, 4. Auflage, Bonn, 2007.
[Müller] T. Müller. Verfahren zur Verarbeitung von XML-Werten in SQL-Anfrageergebnissen. Dissertation, Institut für Informatik, Friedrich-Schiller-Universität Jena, 2008.
[Melton] J. Melton und S. Buxton. Querying XML: XQuery, XPath, and SQL/XML in Context. Morgan Kaufmann Verlag, San Francisco, 2006.
[Thor] S. Thorhold und M. Nist. XML und Datenbanken - ein erster Eindruck. Anfangsvortrag zur Studienarbeit, Institut für Informatik, Friedrich-Schiller-Universität Jena, 2003.
[Kazakos] W. Kazakos, A.Schmidt und P. Tomcyk. Datenbanken und XML. Springer-Verlag, Berlin Heidelberg, 2002.
[Ray ] E. T. Ray. Learning XML. O‘Reilly Verlag, Köln, 2. Auflage, 2003.
[Umst] W. Umstätter, Elektronisches Publizieren - HTML / SGML / XML. Vorlesungsunterlagen, Institut für Bibliotheks- und Informationswissenschaft, Humboldt-Universität zu Berlin, 2000
[W3CX] World Wide Web Consortium (W3C). Extendible Markup Language (XML) 1.1 (Second Edition), August 2006, W3C Recommendation
[W3CH] World Wide Web Consortium (W3C). XHTML 1.0: The Extensible HyperText Markup Language, Januar 2000, W3C Recommendation
Vielen Dank für die Aufmerksamkeit!
Christian Fuhrmann 08.05.2008
XML - Eine Einführung