Extensible Markup Language Von SGML zu XML XML – Beispiel

Transcription

Extensible Markup Language Von SGML zu XML XML – Beispiel
24.11.2009
Unterschiede zwischen HTML und XML

Extensible Markup Language

XML




Von SGML zu XML
28
XML ersetzt HTML nicht
XML: entwickelt zum Transport und zur
Strukturierung und zur Speicherung von Daten
HTML: entwickelt zur Darstellung von Daten
“HTML is about displaying information, while XML is
about carrying information.” http://www.w3schools.com/xml/xml_whatis.asp
XML ersetzt HTML nicht
HTML und XML sind beide nur Text
XML – Beispiel
29







SGML weitaus umfangreicher als XML
→SGML zu komplex
XML Untermenge von SGML, 80-20 Regel
Idee des Hypertext auch hier grundlegend
Ziel: Flexibilisierung der Struktur
Notwendig: technische Unterstützung
1996: erster Entwurf von XML
quasi Standard zur Dokumentbeschreibung
<?xml version="1.0" encoding="ISO-8859-1"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
/
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
Grundbegriffe – XML Dokument
30
Grundbegriffe – Elemente
31

Ein XML-Dokument ist ein Datenstrom (der nicht zwingend als
Datei vorliegen muß), welcher den Strukturierungsprinzipien
der eXtensible Markup Language genügt.



besteht aus Prolog:
 können
<?xml version="1.0"
version 1.0 encoding
encoding= "UTF-8"
UTF 8
standalone="yes"?>

und XML Daten:
<Vorlesung>
<Titel>GrundkursInformatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
viele Dokumente besitzen Komponenten, oft
hierarchisch organisiert: logische Dokumente
logische Komponenten in XML: Elemente
 oder
d

andere Elemente enthalten
(textuellen)
(
ll ) TTeilil des
d eigentlichen
i
li h D
Dokumentes
k
Elemente sind durch Start- und Endtag begrenzt
oder Leeres-Element-Tag
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
<Pflichtfach/>
</Vorlesung>
1
24.11.2009
XML – Sprache, Definition
Beispiel
32
33


Eine Anwendung der Extensible Markup Language. Ein
Vokabular, das aus Symbolen und der ihnen
zugewiesenen Bedeutung (Semantik) gebildet wird,
ergänzt um Regeln (grammatikalische Struktur und
Gültigkeitsregeln für den Inhalt (z.B. Datentypen)) zur
Kombination der Vokabularelemente.
Anwendungen einer so neu geschaffenen XMLSprache werden als XML-Dokumente bezeichnet.
<?xml version="1.0" encoding="ISO-8859-15"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
<Pflichtfach/>
</Vorlesung>
Grundbegriffe – Elemente
34
Grundbegriffe – Attribute
35


durch logische Struktur der Elemente wird hierarchischer
Aufbau definiert
kann als Baum dargestellt werden


<?xml version="1.0" encoding="ISO-8859-15" standalone="yes"?>
<Vorlesung>
<Titel
i l start="2009-10-11T09:00:00+01:00“>
"2009 10 11 09 00 00 01 00“
Grundkurs Informatik
</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
Vorlesung

Titel
Thema
Studiengang
Grundkurs
Informatik
XML
KWL
ähnlich HTML können Elemente Attribute enthalten
wird als Attribut am Tag angegeben
Pflichtfach
Wurzel- oder Dokumentelement: enthält alle anderen Elemente
XML in 10 Punkten
36
XML in 10 Punkten
37
XML steht für strukturierte Daten:
1.





XML strukturiert Daten
Strukturierung von Daten ubiquitär:
Adressbücher, Tabellenkalkulation, finanzielle Transaktionen
XML stellt die Regeln, ist aber keine Programmiersprache
erlaubt
l b die
di D
Definition
fi i i einer
i
S
Sprache
h zur Strukturierung
S k i
<?xml version="1.0" encoding="ISO-8859-1"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
http://www.w3c.de/Misc/XML-in-10-points.html
XML sieht ein wenig wie HTML aus:
2.




verwendet Tags: <tag> und Attribute: <tag name=´Wert´>
Tags sind aber nicht vorgegeben, jede Anwendung kann eigene
definieren
<br> heisst also nicht Zeilenumbruch
XML ersetzt HTML nicht
<?xml version="1.0" encoding="ISO-8859-1"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
http://www.w3c.de/Misc/XML-in-10-points.html
2
24.11.2009
XML in 10 Punkten
XML in 10 Punkten
38
XML ist Text, aber nicht zum Lesen:
3.


XML ist vom Design her ausführlich:
4.
XML ist mit jedem Editor lesbar
Speicherung textuell, nicht binär
vereinfacht den Datenaustausch zwischen Maschinen

XML Dateien sind größer als vergleichbare binäre Formate
188 Byte XML, davon 30 Byte reine Daten


<?xml version
version="1.0"
"1 0" encoding
encoding="ISO-8859-1"
"ISO 8859 1"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
<?xml version="1.0" encoding="ISO-8859-1"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
</Vorlesung>
http://www.w3c.de/Misc/XML-in-10-points.html
XML in 10 Punkten
XML in 10 Punkten
XML ist eine Familie von Techniken:
5.






XML ist neu, aber nicht so neu:
6.
XML – Überbegriff für eine Reihe von Techniken
Beispielsweise:
entwickelt seit 1996, Wurzeln aber SGML, 1969
Seit 1998 W3C Standard
Seit 1990 Entwicklung von HTML – Erfahrungen Basis für XML
„Das Beste aus SGML
SGML”


XLink: realisiert Verlinkung zwischen XML-Dokumenten
XPointer: Eindeutige
g Beschreibung
g der Position von Elementen innerhalb eines
XML-Dokumentes
XSL: Stylesheets zur Darstellung von XML
DOM - Document Object Model: Modell des XML-Dokumentes, Datenstruktur
zum Zugriff auf Dokument(teile)


XML in 10 Punkten
xHTML
42
43
7.
XML überführt HTML in xHTML:
 Ende der 1960er Jahre: Entwicklung von SGML
 HTML basiert auf SGML, jetzt Version 4.0
 1996: Entwicklung von XML
 XML: generelle, allgemein einsetzbare Auszeichnungssprache
 mit XML wurden eine Reihe von
SGML
Dateiformaten entwickelt, die
auch im Web eingesetzt wurden


Beispiel: SVG
 Wirrwarr von Standards
XML




XML gerechtes HTML
ist syntaktisch zu vielen XML-Standardsprachen kompatibel und
kann in andere XML-Dokumente eingebettet werden
Vereinheitlicht das automatische Lesen (Parsen) von Dateien
wichtig, XML ist syntaktisch strenger:


HTML wird in der Syntax an das strengere XML angepaßt
z.B. jeder Start-Tag muss einen End-Tag oder ‚/‘ besitzen



<p>Das ist ein Absatz</p>
<br />
Weitere Spezifikationen sind jetzt Pflicht (Dokumenttyp, ...)
HTML
xHTML
3
24.11.2009
XML in 10 Punkten
Wohlgeformtheit
44
45
XML ist modular:
8.







10.
Bei leeren Elementen können diese zu einem Tag
zusammenfallen.
<Pflichtfach />
/

XML ist die Basis für RDF und das Semantic Web:
9.
Zu jedem Start-Tag existiert genau ein Ende-Tag.
<Titel>Grundkurs Informatik</Titel>
XML erlaubt die Definition eines neuen Dokumentformates durch
Kombination und Wiederbenutzung
Problem: zwei Formate können parallel entwickelt und damit gleiche
Tags oder Attribute mit unterschiedlicher Bedeutung besitzen
Lösung: Namensräume
Semantic Web: Netz von Sinnzusammenhängen
Vorraussetzung: Beschreibung von Ressourcen: RDF
Korrekte Elementschachtelung, d.h. Elemente
überlappen einander nicht.
<Titel>Grundkurs Informatik<Thema>XML
</Titel><Thema>
XML ist lizenzfrei, plattform- und herstellerunabhängig, und
gut unterstützt

XML – Beispiel
Genau ein Wurzelelement.
Wohlgeformtheit
46
47

<?xml version="1.0" encoding="ISO-8859-15"
standalone="yes"?>
<Vorlesung>
<Titel>Grundkurs Informatik</Titel>
<Thema>XML</Thema>
<Studiengang>KWL</Studiengang>
<Pflichtfach />
</Vorlesung>
<Titel start="2009-10-11T09:00:00+01:00">Grundkurs
Informatik</Titel>



XML stellt Basis für die Umwandlung in verschiedene
Dokumentformate dar
Kein Start-Tag (oder Tag der ein leeres Element
einleitet)) enthält zwei oder mehr Attribute desselben
Namens.
<Titel start="" start="">


XML – Medienunabhängig
Alle Attributwerte sind in einfachen oder doppelten
Anführungszeichen.
Keine Kommentare innerhalb von Tags.
Kommentare beginnen und enden mit genau zwei
Bindestrichen. <!-- Kommentar -->
< darf nicht innerhalb von Elementinhalten oder
Attributwerten auftreten:&lt; statt dessen
Anwendungen für XML

Anzeigen: Browser

Erzeugen, Verändern: Editor
 Opera,
XML
 jeder


HTML
xHTML
Firefox, InternetExplorer
Texteditor
Texteditor, jEdit,
jEdit PsPad
Lesen: Parser
Verarbeiten: XML-Processor
PDF
4
24.11.2009
XML-Sprachen


WH: XML definiert regeln für die Entwicklung von
Markup-Sprachen
Beispiele:
 SVG
 DocBook-XML,
OpenDocument (ODF)
XML-Sprachen: SVG
<?xml version="1.0" encoding="utf-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="400"
height="600">
<circle cx="100" cy="100" r="50" />
<rect x="100" y="100" width="100" height="200" />
<line x1="100" y1="100" x2="200" y2="200"
stroke="red" stroke-width="4px"/>
/
</svg>
 RSS-Feeds
XML-Sprachen: DocBook


Definiert Vokabular zur Beschreibung von textuellen
Dokumenten
Erlaubt Strukturierung von Texten
XML-Sprachen: RSS-Feeds




Weit umfangreicher (aber auch komplizierter) →
OpenDocument

Really Simple Syndication
Ermöglicht, Webseiten oder Teile davon zu
abonnieren
Nicht beschränkt auf textuelle Inhalte: Podcasts
Beispiel:
 http://www.spiegel.de/dienste/0,1518,271804,00.ht
ml
Zusammenfassung
56






Trennung von Inhalt und Layout
XML - eXtensible Markup Language
XML strukturiert Daten
logische, hierarchische Struktur
XML-Dokument: baumartiger Aufbau
Besteht aus Elementen:
 Element
hat Name (Tag) und Inhalt (von Start- und
Endtag umschlossen)

Wohlgeformtheit, DTD
5

Documents pareils