Post on 11-Jan-2016
description
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
Markierung des Haupt-stichworts durch Position
und Fettschrift
Markierung der Unter-stichworte durch Fettdruck
Lexikonbild
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. Bilanzierung die; -, -en: Kontoausgleich, Bilanzaufstellung
Als E-Text
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.-vulg �rlal.-it.] die; -,-en: l. Gegen �berstellung 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. 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
XML DTD
Dokument-instanz
Dokument-instanz
Dokument-instanz
Dokument-instanz
Dtd und Dokumentinstanzen
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 Baumfaq
head body
title maintain
Eine kleine FAQ zu XML name
James Clark
section
title qna
q a
Was bedeutet "XML"?
A. Allgemeines
p
eXtensible Markup Language
id="1"
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
XML DTD
Dokument-instanz
Dokument-instanz
Dokument-instanz
Dokument-instanz
Dtd und Dokumentinstanzen
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) >
2.
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
XML Schema
Namespaces
XSL
Sax XSLT
XML XPointer
Canonical XML
XLink
XPath
Unicode
DOM
CSS
RDF
CDF
DocBook
MathML
Open eBook
SMIL
SVG
TEI
XHTML
XML/EDI
XMI
XML-RPC
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
CSS
Browser
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
XSLT-Stylesheet
XSL-FO-Dokument
TeX, PDF, ...Datei
Konverter
XSLT Prozessor
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>
XSL-FO Ausgabe als PDF
XPath
• Dient der Adressierung eines Teils eines XML-Dokuments
• Wird von XPointer und XSLT verwendet
XPath im Dokumentfaq
head body
title maintain
Eine kleine FAQ zu XML name
James Clark
section
title qna
q a
Was bedeutet "XML"?
A. Allgemeines
p
eXtensible Markup Language
id="1"
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
Text-Bearbeitung
z.B.Layout,
Korrektur
Dokumenten-Verwaltung in XML
Texterstellung
TextausgabePrint
InternetCD-ROM
Lektüre-feedback
Verlaghaus
Metadaten
• Informationen über Informationen
• Beschreibung des Autors, des Inhalts, der verantwortlichen Organisation, der Version usw.
• Dublin Core
• Ressource Description Framework
Programmieren mit XML
• XML-Remote Procedure Calls
• XML als externes Datenformat (Konfigurationsdateien usw.)
• XML als Beschreibungssprache für Objekte und ihre Relationen (XMI)
• XML als Beschreibungssprache für graphische Benutzeroberflächen
EDI/XML
• Electronic Date Interchange• Probleme von EDI
starre Implementierung von Geschäftsregeln
teuer in Einrichtung und Wartung• Vorteile von EDI/XML
Trennung von Geschäftsregeln und Transaktionen
Leichte Veränderbarkeit
DTDs
• XHTML
• XMI
• RDF
• DocBook
• TEI
• TIM
Überblick
• XML - die technischen Hintergründe
• Was leisten die XML bezogenen Standards
• Anwendungsfelder von XML
• XML Software
• XML und das Internet
XML-Programme
• XML-Editoren
• XML-Parser
• XML-fähige Objektdatenbanken
• XML-fähige Dokumentmanagementsysteme
• XML-Browser
• XSL-Editoren
XMLEditor: XMetal
XSL-Editor: Stylus
Überblick
• XML - die technischen Hintergründe
• Was leisten die XML bezogenen Standards
• Anwendungsfelder von XML
• XML Software
• XML und das Internet
Veränderungen im Netz
• HTML vs. XML• Branchenspezifische Suchmaschinen aufgrund
eigener DTDs• XML Suchmaschinen, die die Metadaten
auswerten• Verteiltes Programmieren wird deutlich zunehmen• Datenaustausch zwischen Firmen und zwischen
Firmen und Kunden wird zunehmen
Veränderungen für Textersteller
• Neues Konzept von Text:
Medienunabhängig
Strukturell definiert (und nicht typographisch)• Medienunabhängiges Produzieren der Information• Klarere Einsicht in die Abhängigkeit des
Textinhalts von seinem Medium • Umstellung der Produktions- und
Distributionsprozesse auf das neue Textmodell
<ende>Vielen Dank</ende>