| XML ist ein Offener Standard zur Beschreibung von Daten. In der Informatik hat XML fundamentale Bedeutung und entwickelt sich zu einer zentralen Drehscheibe. | XML ist eine rasch wachsende Familie mit vielen spezialisierten Mitgliedern, die alle miteinander kompatibel sind - unabhängig von Betriebssystem, Software und Version. |
| XML - Kompress | XML in Stichworten |
| XML - Demo | Beispiele für XML-Daten und XML-Programme |
| XML-Familie | Einige Mitglieder der rasch wachsenden XML-Familie |
Webseiten mit Einbettung aller anderen XML-Mitglieder |
|
OpenDocument |
Standard Büro-Software auf XML-Basis |
Objektgrafik - Scalable Vector Graphics |
|
Geografische Daten (GoogleEarth) - Keyhole Markup Language
(*)
|
|
Mathematische & technische Formeln |
|
News und Redaktionelle Daten |
|
| XML-Daten | Verwendung <eigener /> XML-Elemente für Daten |
| XSL | Erzeugung unterschiedlicher (!) Produkte aus XML-Daten |
| SGML & XML | Geschichte von XML |
|
Weitere XML Familien - Mitglieder |
OpenDocument . Büro-Daten XLink . . . Links für alle XML-Familien-Mitglieder XForms . . Formulare XQuery . . Zugriff auf Datenbanken SMIL . . . Animation (Synchronized Multimedia Integration Language) CML & ChemML . Chemical Marlkup Language: Molekül-Strukturen XCBF . . . Common Biometric Format FpML . . . Financial Products Markup Language RDF . . . Resource Description Framework: Metadaten InkML . . Digital Ink: Elektronische Schreibstifte OWL . . . Web-Ontologie: Daten für Programme statt für Menschen |
| DOM | Das Document Object Model als Grundlage strukturierter Daten |
| CSS | Formatierung für alle (!) XML-Familien-Mitglieder |
| Javascript | Programmierung für alle (!) XML-Familien-Mitglieder |
| Kommentare | Einbettung vón Fremd-Code |
| Links |
|
XML-Kompress |
|
|
XML in Stichworten:
Offener Standard -
Überall verwendbar -
Klartext -
XML-Familie -
Zukunft -
Programme
|
Auf eine Live-Demo spektakulärer XML-Möglichkeiten wird hier ausnahmsweise verzichtet, da sie evtl. einen älteren Browser verwenden. Immerhin ist diese gesamte Webseite ein XML-Dokument (lediglich für den veralteten M$IE-Browser getarnt). |
Offener StandardXML kann lizenz- und kostenfrei verwendet werden. Das gilt sowohl für etablierte XML-Familien als auch für eigene Entwicklungen. |
XML ist ein wichtiger Schritt, um die Informatik aus der Umklammerung einzelner Monopole zu lösen. Das bietet auch anderen Unternehmen eine gute Chance und ermöglicht endlich wieder Fortschritt für IT-AnwenderInnen. |
Überall verwendbarXML kann auf jedem Betriebssystem verwendet werden und ist nicht an Programme oder Versionen gebunden. |
XML ist nicht an einzelne Unternehmen oder ihre Produkte gebunden. XML-Daten können weltweit unabhängig von der verwendeten Software ausgetauscht werden. |
Einfacher TextXML beschreibt beliebige Daten mit 'Einfachem Text ' (text/plain). Daher können XML-Dokumente sowohl von Menschen als auch von Programmen gelesen und bearbeitet werden.XML-Dokumente sind voll transparent - es gibt dort keine Geheimnisse. Das ist ein wichtiger Fortschritt gegenüber binär codierten Daten, die spezielle Software zur Verarbeitung benötigen und für Menschen unlesbar sind. |
Zur Bearbeitung von einfachem Text steht eine sehr große Auswahl an Programmen und Programmiersprachen zur Verfügung. Klartext hat auch einen Nachteil: Das 'Lesen' und 'Verstehen' durch Programme benötigt etwas mehr Zeit als für binär codierte Daten. Dieser Nachteil wird allerdings durch die hohe (und weiterhin zunehmende) Leistung moderner PC kompensiert. |
FamilieXML gibt selbst nur wenige Regeln vor. Alle Details sind den einzelnen XML-Mitgliedern überlassen, z.B. wieviele und welche Spalten (Felder) zur Beschreibung von Daten verwendet werden, oder welche 'Befehle' in den XML-'Programmiersprachen' enthalten sind.Daher entstehen in einer großen XML-Familie viele verschiedene Mitglieder. |
Jedes XML-Familien-Mitglied ist auf bestimmte Daten spezialisiert. XML sorgt für die problemlose Zusammenarbeit aller Mitglieder. Das ermöglicht die standardisierte Integration unterschiedlicher Daten (z.B. Text, Grafik, Layout, ...) - unabhängig von System, Software und Hersteller. |
ZukunftXML ist sehr allgemein formuliert und hat daher ein außerordentliches Entwicklungs-Potential. Neben den derzeit schon erfolgreichen Mitgliedern der XML-Familie entstehen laufend weitere für unterschiedliche Fachgebiete. |
Aus der Erfahrung älterer Standards wurde XML besonders änderungs-freundlich entwickelt. XML-Standards können sich in geordneten Bahnen weiter entwickeln. Der XML-Standard sorgt dafür, dass alle derzeitigen und zukünftigen Mitglieder der XML-Familie miteinander voll kompatibel bleiben. |
XML-ProgrammeXML beschreibt beliebige Daten. Wenn es sich bei den Daten um Anweisungen handelt, dann nennt man das eine Programmiersprache. Auch diese Webseite ist ein Programm in der Programmiersprache XHTML. Alle XML-Programmiersprachen sind miteinander voll kompatibel. |
In eine XHTML-Webseite können z.B. → SVG-Grafiken oder MathML-Formeln eingebettet werden - alles Mitglieder der XML-Familie. Die hervorragenden Programm-Pakete OpenOffice und LibreOffice verwenden OpenDocument, einen XML-Standard für die Codierung von Büro-Dokumenten wie Textvearbeitung, Kalkulation usw. |
XML-Beispiele |
|
| XML-Daten und -Programme sind in Klartext formuliert. | Links ein Beispiel für 'selbstgemachte' → XML-Daten, rechts ein → SVG-Programm zur Erstellung einer Grafik. |
|
<!-- XML Personen-Daten -->
<person>
<vorname>Anna</vorname>
</person><zuname>Albers</zuname> <person>
<vorname>Zacharias</vorname>
</person>
<zuname>Zulehner</zuname> |
<!-- Grafik aus Kreis, Text und Linie -->
<svg>
<circle cx=";20"; cy=";20"; r=";15";
fill=";red"; />
</svg>
<text x=";40"; y=";30";>SVG</text> <line x1=";0"; y1=";0"; x2=";20 y2=";20"; /> |
AuszeichnungEine wichtige Rolle in XML spielen Auszeichnungs-Elemente (tags), das sind in < > eingeschlossene Schlüssel-Worte, z.B. <person> oder <circle> Sie dienen zur Beschreibung der Daten.NamespaceJedes Mitglied der XML-Familie verfügt zur Beschreibung 'seiner' Daten über einen Satz von Auszeichnungs-Elementen. Es gibt internationale Standards mit einem genau fixierten Namespace, z.B. XHTML für Webseiten, RSS für redaktionelle Daten, CML für chemische Formeln, usw. Man kann jedoch auch eigene Elemente erfinden und verwenden.SymmetrieAlle Elemente werden symmetrisch abgeschlossen, d.h. jedes Element reicht von seinem Anfang bis zu seinem mit / bezeichneten Ende, z.B. <zuname> . . </zuname>
Innerhalb jedes Elements können sich weitere Elemente oder Daten befinden.
|
Hierarchie & DOMAuszeichnungs-Elemente und Daten können beliebig tief ineinander gestaffelt werden, z.B. in der Form
<person><vorname>Hans</vorname></person>
Jedes XML-Dokument enthält einen solchen 'Hierarchischen Baum (tree),
der nach den Regeln des Document Object Model (DOM) geordnet ist.
Das DOM verlangt eine strenge Hierarchie und verbietet Überschneidungen oder
unsymmetrische tags wie z.B.
<person><falsch>Susi</person></falsch>
Die einfachen aber strengen Regeln ermöglichen die einfache Erstellung von
Programmen zur XML-Verarbeitung.
AttributeJedes Auszeichnungs-Element (tag) kann Attribute zu seiner Beschreibung enthalten. Auch sie sind Teil der Regeln im Namespace eines XML-Mitglieds. Die Attribute x und y bezeichnen z.B. die Position von Text in einer SVG-Grafik (Beispiel oben). |
|
|
So kann man z.B. die gleichen XML-Wirtschafts-Daten wahlweise in eine Datenbank, Tabelle, Grafik, Kalkulation, Webseite oder Mobiltelefon-Seite einfügen, am besten gleich mit XSL - ebenfalls einer Programmiersprache der XML-Familie. |
GML, SGML und XMLDie kurze Geschichte von XML |
|
|
1973 wurde Generalized Markup Language (GML) von IBM als
Standard definiert. Das Ziel war u.a., die damals von jedem Gerät zur Ausgabe
benötigten verschiedenen Steuerzeichen zu vereinheitlichen. GML war der
erste gelungene Versuch, Steuerung und Inhalt in allgemeiner Form voneinander
zu trennen. 1986 wurde von der International Organization for Standardization (ISO) die Standard Generalized Markup Language (SGML) als ISO-Norm 8879 definiert. Dieser Standard sollte die absehbare rasante Entwicklung von "Auszeichnungs-Sprachen" in geregelte Bahnen leiten. Auszeichnungs-Sprachen verwenden Klartext (plain text), um mit Hilfe von Textmarken (tags) Zusatz-Informationen in einem Text zu verankern. |
Beispiel: Die Eigenschaft "fettgedruckt" in dem Satz
Das ist ein fettgedrucktes Wort
Ursprünglich benötigten Medien wie Bildschirme oder Drucker spezielle
Steuerzeichen vor und nach dem Wort, z.B. zur Darstellung von "fett".
Fast jedes Modell verlangte dabei andere Steuerzeichen.Moderne Programme verwenden dazu standardisierte "Auszeichnungen", z.B.
Das ist ein
<b>fettgedrucktes</b>
Wort
Dieser Text ist sowohl für jedes (!) einschlägige Programm als auch für
Menschen lesbar. Die ständige Übersetzung in die Codes verschiedener
Hersteller ist überflüssig, da alle Programme den Standard kennen.
|
|
In der Praxis fand der SGML-Standard ISO-8879 wenig Anwendung, da er viel zu
komplex und daher praxisfremd definiert ist. Die Ausstattung von Programmen mit
SGML-Fähigkeit wäre unverantwortbar teuer. Daher wurde vom World Wide Web Consortium (W3C) XML als praxis-taugliches Derivat von SGML entwickelt: ► XML sollte im gesamten Internet problemlos verwendbar sein ► XML sollte die Grundlage für eine breite Palette von Anwendungen bilden ► XML sollte kompatibel mit SGML sein ► Die Herstellung und Verarbeitung von XML Dokumenten muss einfach sein ► XML soll möglichst wenige Optionen enthalten ► XML Dokumente müssen für Menschen lesbar und einigermaßen verständlich sein. ► XML soll weltweit international anwendbar sein. |
1969 Entwicklung von GML (generalized markup language)
von Ch. Goldfarb, Ed. Mosher und Ray Lorie. 1973 Publikation von GML als Standard durech IBM 1980 Diskussion über einen SGML-Standard 1986 wurde der ISO-Standard 8879 für SGML definiert. 1989 ";Erfindung"; des WWW durch Tim Berners-Lee 1994 Gründung des W3C 1996 Ideen für ein praxis-taugliches Derivat XML 1997-12: XML 1.0 als Vorschlag des W3C 1998-03: Demo von XML mit dem Mozilla-Browser 1998-02: XML 1.0 als Empfehlung des W3C 1998: SMIL als Empfehlung des W3C 1998-11: Diskussion erreicht bereits die Themen CSS(2), XLink, DCD, RDF, VML, SVG, XQuery, ... 1998 SGML wird offiziell in OASIS umgetauft. 1999-01: XML-Namespaces als Empfehlung des W3C 1999-06: Empfehlung XML & Stylesheets des W3C 1999-11: XSL1.0 Empfehlung 2000-10: XML 2nd edition: HTML wird als XHTML neu definiert 2001: SVG als Empfehlung des W3C 2005: OpenDocument Standard für Büro-Programme (z.B. OpenOffice, LibreOffice). |
|
Das Ergebnis der XML-Definition war beachtlich: Die gesamte Umfang des Dokuments beträgt nur ca. 40 Seiten (verglichen mit über 500 bei SGML). Der Schrift-Standard → Unicode sorgt für weltweite Anwendbarkeit. XML ist problemlos in allen Betriebssystemen und Netzwerken verwendbar. |
SGML wurde in anderer Form weiterentwickelt:
1998 in OASIS umbenannt:
Organization for the Advancement of Structured Information Standards.
OASIS koordiniert die Entwicklung vieler XML-Standards. OpenDocument ist heute die Grundlage, um die Daten aller Standard Büro-Programme in XML zu codieren. Die Programm-Pakete OpenOffice und LibreOffice verwenden OASIS. |
|
|
XML-Homepage
beim W3C,
Browser und XHTML-Mimetype, XML de-Übersetzungen bei Edition-W3C, XML-Tutorial (en bei W3Schools) Apache XML Project XML Standards Project |
Wikipedia:
Extensible Markup Language
(de,
en),
SGML,
|
|
http://www.xml.com http://www.sil.org/sgml/xml.html eXtropia: Intro to XML |
Uni Magdeburg University of Minnesota Duluth: XML (RDF, RSS, SMIL, WAP/WML, XFORMS, XHTML, MIME, XML) - Link Sammlung ! |
|
XML for script - Javascript XML parser
(SourceForge) XML-EdiFact: Projekt zur Bewältigung des EdiFact-Wahnsinns mit XML. |
OASIS -
Organization for the Advancement of Structured Information Standards -
XML Dokumente für alle Standard-Programme
|
KML (Geografische Daten, GoogleEarth): Open Geospacial Consortium (OGC),
Wikipedia,
Reference,
|
|