XML – Eine Einführung - Friedrich-Schiller

Werbung
XML – Eine Einführung
Seminar „XML und Datenbanken“
Christian Fuhrmann
08.05.2008
XML - Eine Einführung
Gliederung
1.
2.
3.
4.
Einführung
Entwicklung
Ziele von XML
Sprachfamilie XML
Christian Fuhrmann
08.05.2008
1. Einführung
Gliederung
1.
2.
3.
4.
Einführung
Entwicklung
Ziele von XML
Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
1. Einführung
Rohdaten
•Unverarbeitete Daten
•Einzelner Datensatz
•Benötigt Hintergrundwissen
•Daten nur über Lage der Zeichen auslesbar
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
1. 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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
1. Einführung
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
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
XML - Eine Einführung
1. Einführung
Christian Fuhrmann
08.05.2008
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
XML - Eine Einführung
1. Einführung
Christian Fuhrmann
08.05.2008
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
2. Entwicklung
Gliederung
1.
2.
3.
4.
Einführung
Entwicklung
Ziele von XML
Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
2. Entwicklung
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
 troff & TeX
 Generic Coding – Erforschung durch Graphic Communications Association (GCA)
1960er – GenCode-Projekt
 Generalized Markup Language (GML) von IBM
1970er/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 Edition
02/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
XML - Eine Einführung
Abgrenzung SGML-HTML-XML
Christian Fuhrmann
08.05.2008
3. Ziele von XML
Gliederung
1.
2.
3.
4.
Einführung
Entwicklung
Ziele von XML
Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
3. Ziele von XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
„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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
Unmissverständlichkeit von Dokumenten
• Soll nur eine Möglichkeit geben Namen,
Reihenfolge und Hierarchie der Elemente zu
interpretieren
<html>
<body>
<p>Here is a paragraph.
<p>And here is another.
</body>
</html>
<flooby>an element
<flooby>another element
• Strenge XML Regeln reduzieren Fehler und
Komplexität von Software
• Nur kleiner Preis für gute Performance
3. Ziele von XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
Textauszeichnung von Präsentation
trennen
• Für maximale Flexibilität für Ausgabeformat,
Gestaltungsinformationen extern speichern
(Stylesheets)
<example>Goethe once said, <i>Lieben ist wie
Sauerkraut</i>. I <i>really</i> agree with that
statement.</example>
<example>Goethe once said, <foreignphrase>Lieben
ist wie Sauerkraut</foreignphrase>. I <emphasis>really</emphasis>
agree with that statement.</example>
• Erhöht Präsentationsmöglichkeiten  Ändern
der Stylesheets ohne Grunddaten zu ändern
3. Ziele von XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
„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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
Kulturunabhängig
• Keine Grenzen durch z.B. lateinisches Alphabet
oder deutsche bzw. englische Sprache
• Verwendung von Unicode
4. Sprachfamilie XML
Gliederung
1.
2.
3.
4.
Einführung
Entwicklung
Ziele von XML
Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
3. Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
4. Sprachfamilie XML
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
• 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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
• 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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
• 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
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
• 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
Anwendungen
Ausführlich in [Vonhoeg] oder [W3CH]
XML - Eine Einführung
Christian Fuhrmann
08.05.2008
Quellen
[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 Vorlesungsunterlagen, Institut für BibliotheksHumboldt-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
HTML / SGML / XML.
und Informationswissenschaft,
XML - Eine Einführung
Vielen Dank für die
Aufmerksamkeit!
Christian Fuhrmann
08.05.2008
Herunterladen