610 likes | 753 Views
XML. und verwandte Standards. Überblick. XML - die technischen Hintergründe Was leisten die XML bezogenen Standards Anwendungsfelder von XML XML Software XML und das Internet. XML - Die technischen Hintergründe. Probleme elektronischer Texte Lösungsmöglichkeiten XML als Lösung
E N D
XML und verwandte Standards
Überblick • XML - die technischen Hintergründe • Was leisten die XML bezogenen Standards • Anwendungsfelder von XML • XML Software • XML und das Internet
XML - Die technischen Hintergründe • Probleme elektronischer Texte • Lösungsmöglichkeiten • XML als Lösung • Grundprinzipien von XML
Lexikonbild Markierung des Haupt-stichworts durch Position und Fettschrift Markierung der Unter-stichworte durch Fettdruck
Als E-Text Bilanz [lat.-vulgärlal.-it.] die; -,-en: l. Gegenüber-stellung von Vermögen (→Aktiva) u. Kapital u. Schulden (→Passiva II) für ein Geschäftsjahr. 2. Ergebnis, → Fazit, abschließender Überblick (über Ereignisse). bilanzieren: l. sich ausgleichen, sich aufheben. 2. eine Bilanz (l) abschließen. Bilanzierungdie; -, -en: Kontoausgleich, Bilanzaufstellung
Probleme • E-Text ist an das Darstellungsprogramm gekoppelt • Programm ist an das Betriebssystem gekoppelt • Betriebssystem ist an die Hardware gekoppelt • E-Text wird auf Hardware gespeichert, die veraltet (Bsp. 5.25“ Disketten) • E-Text ist durch den Zeichensatz an das Betriebssystem gekoppelt
Lösung I: ASCII Bilanz [lat.-vulgrlal.-it.] die; -,-en: l. Gegenberstellung von Vermgen (Aktiva) u. Kapital u. Schulden (Passiva II) fr ein Geschftsjahr. 2. Ergebnis, Fazit, abschlieender berblick (ber Ereignisse). bilanzieren: l. sich ausgleichen, sich aufheben. 2. eine Bilanz (l) abschlieen. Bilanzierung die; -, -en: Kontoausgleich, Bilanzaufstellung
Lösung II: Rich Text Format {\rtf1\ansi\ansicpg1252\deff0\deflang1031 {\fonttbl {\f0\froman\fcharset0 Times New Roman;} {\f1\fnil\fcharset0 Times New Roman;} } {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\cf1\b\f0\fs48 Bilanz\cf0\b0\f1\fs20\par }
Lösung III: HTML <html> <head><title>Bilanz</title></head> <body> <p><b>Bilanz</b> [<i>lat.-vulgärlal.-it.</i>]<i> die</i>;<i> -,</i>-en: l. Gegenüber-stellung von Vermögen (?Aktiva) u. Kapital u. Schulden (?Passiva II) für ein Geschäftsjahr. </p> </body> </html>
eXtensible Markup Language • ‚Offener‘ Standard (W3C) • Eine Sprache um Sprachen zu definieren • Trennung von Semantik und Typographie • Basiert auf dem gut verstandenen Standard SGML (bildet eine Teilmenge) • Breite Unterstützung durch die Software-Industrie
Was definiert XML? • Den verwendeten Zeichensatz: Unicode • Was ein wohlgeformtes XML-Dokument ist: Logische Konsistenz des Markup • Was ein gültiges XML-Dokument ist: Übereinstimmung mit der Document Type Definition
Ein XML – Dokument <?xml version="1.0?> <!DOCTYPE text SYSTEM "qaml.dtd"> <faq> <head> <title>Eine kleine FAQ zu XML</title> <maintain> <name>James Clark</name> </maintain> </head> <body> <section> <title>A. Allgemeines</title> <qna id="1"> <q>1. Was bedeutet "XML"?</q> <a><p>eXtensible Markup Language</p></a> </qna> </section> </body> </faq>
XML Dokument als Baum faq head body section title maintain name title qna Eine kleine FAQ zu XML q a James Clark A. Allgemeines id="1" p Was bedeutet "XML"? eXtensible Markup Language
Bausteine eines XML-konformen Auszeichnungssystem • Element • Attribut • Attributwert • Entity
Element - Grundlagen • Ein Element dient zur strukturellen Auszeichung des Textes. • Elemente stehen in spitzen Klammer: <p>eXtensible Markup Language.</p>. • Elemente haben einen Textinhalt. Am Anfang und am Ende steht dieAuszeichnung:Dieses <b>fette</b> Wort • Das Ende der Auszeichnung wird mit einem /-Strich im Element markiert
Elemente schachteln • Elemente können geschachtelt werden:<p>Dieses <b>fette</b> Wort</p> • Elementgrenzen dürfen sich nicht überschneiden. • FALSCH: <p>Dies ist <b>fett</p></b>
leere/nichtleere Elemente • Nicht-leere Elemente haben ein Anfangs- und ein Endetag. Z.B.:<p>Ein Absatz ... und Schluß</p> • Leere Elemente haben kein End-Tag: <p>Dieses <anchor/> fette Wort</p>
Attribut und Attributwert • Attribute spezifizieren Elemente. • Das Element <l> kodiert eine Verszeile. • Mit dem Attribut ‘n’ kann eine Zeilenzählung kodiert werden:<l n="1">Ohne Wein kann’s uns auf Erden</l><l n="2">Nimmer wie dreihundert werden</l> • Das Attribut n des Elements l in der ersten Zeile hat den Wert 1
Weitere XML-Komponenten • General Entities, um Nicht-XML Daten zu notieren (z.B. Bilder usw.) • Processing instructions für programmspezifische Anweisungen • Kommentare
Document Type Definition • Bestimmt die Anzahl und Namen der Tags und deren Attribute • Legt fest, in welcher Ordnung die Tags vorkommen dürfen • Legt fest, welche Werte Attribute haben dürfen
DTD Visualisierung <!ELEMENT faq (head, body) >
Zusammenfassung • XML ermöglicht die Auszeichnung eines Dokuments im Unicode-Zeichensatz • Mit Tags werden im Dokument die semantisch bedeutsamen Einheiten markiert • Die DTD regelt, welche Tags an welcher Stelle eines Dokuments stehen können
Überblick • XML - die technischen Hintergründe • Was leisten die XML bezogenen Standards • Anwendungsfelder von XML • XML Software • XML und das Internet
Die XML-Welt RDF Open eBook CSS XPath XSL CDF XML XPointer XMI Unicode XLink XML-RPC Sax DOM XSLT TEI Canonical XML Namespaces DocBook XML Schema XML/EDI MathML SVG XHTML SMIL
Ein XML – Dokument <?xml version="1.0?> <!DOCTYPE text SYSTEM "qaml.dtd"> <faq> <head> <title>Eine kleine FAQ zu XML</title> <maintain> <name>James Clark</name> </maintain> </head> <body> <section> <title>A. Allgemeines</title> <qna id="1"> <q>1. Was bedeutet "XML"?</q> <a><p>eXtensible Markup Language</p></a> </qna> </section> </body> </faq>
Stylesheet - Sprachen • XML kennt zwei Stylesheetsprachen: • CSS (Version 3 in Vorbereitung) Soll die meisten Anwendungsfelder abdecken • XSL-FO (Noch im Draft-Stadium) Fraglich, ob je von den Browsern unterstützt
CSS XML- Dokument Browser CSS
Ausschnitt aus dem CSS Stylesheet / { background-color:#FFFF99; margin-left:20%; margin-right:20%; font-family: Arial,sans-serif; font-size: 12pt; } head title { font-size: 16pt; display: block; } maintain { font-size: 10pt; display: block; text-align: right; } [...]
XSLT und XSL-FO • XSLT ist eine Transformationssprache für XML-Dokumente • XSL-FO ist eine medienunabhängige Seitenbeschreibungssprache • Beide sind selbst XML-Anwendungen • Zukunft: XSL-FO wird direkt im Browser angezeigt oder auf dem Drucker ausgegeben
XSL-FO in der Praxis XML- Dokument XSL-FO- Dokument XSLT Prozessor XSLT- Stylesheet Konverter TeX, PDF, ... Datei
XSLT Beispiel <xsl:stylesheet> [...] <xsl:template match ="head/title"> <fo:block font-size="24pt" font-family="serif" line-height="24pt" space-after.optimum="20pt"> <xsl:value-of select="."/> </fo:block> </xsl:template> [...] </xsl:stylesheet>
XSL-FO Beispiel <fo:block font-size="24pt" font-family="serif" line-height="24pt" space-after.optimum="20pt"> Eine kleine FAQ zu XML </fo:block>
XPath • Dient der Adressierung eines Teils eines XML-Dokuments • Wird von XPointer und XSLT verwendet
XPath im Dokument faq head body section title maintain name title qna Eine kleine FAQ zu XML q a James Clark A. Allgemeines id="1" p Was bedeutet "XML"? eXtensible Markup Language
XLL: eXtensible Linking Language • Xpointer (Obermenge von XPath) • XLink • Link-Mechanismus unterstützt: einfache Links wie in HTML bidirektionale Links multidirektionale Links dokumentexterne Links Zielangabe aufgrund Dokumentstruktur
XML Schema • Probleme der DTD Notation Nicht selbst XML konform Keine Einschränkung auf Datentypen Keine Vererbungsmechanismen
XQL • XML Query Language • Abfragesprache basierend auf XPath • Frühes Entwurfsstadium
Überblick • XML - die technischen Hintergründe • Was leisten die XML bezogenen Standards • Anwendungsfelder von XML • XML Software • XML und das Internet
Anwendungsbereiche • Dokumentenerstellung, -archivierung und -publikation • Metadaten • Datenaustausch • Programmieren in verteilten Systemen
Verlaghaus Texterstellung Text- Bearbeitung z.B. Layout, Korrektur Dokumenten- Verwaltung in XML Textausgabe Print Internet CD-ROM Lektüre -feedback
Metadaten • Informationen über Informationen • Beschreibung des Autors, des Inhalts, der verantwortlichen Organisation, der Version usw. • Dublin Core • Ressource Description Framework