Zum Hauptinhalt springen
Nicht aus der Schweiz? Besuchen Sie lehmanns.de

XML für Webentwickler (eBook)

Ein praktischer Einstieg

(Autor)

eBook Download: PDF
2010 | 1. Auflage
434 Seiten
Carl Hanser Fachbuchverlag
978-3-446-42356-5 (ISBN)

Lese- und Medienproben

XML für Webentwickler -  Daniel Koch
Systemvoraussetzungen
27,99 inkl. MwSt
(CHF 27,35)
Der eBook-Verkauf erfolgt durch die Lehmanns Media GmbH (Berlin) zum Preis in Euro inkl. MwSt.
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
VORHANG AUF FÜR XML
- Speziell aus der Sicht von Webentwicklern geschrieben
- Praktische Beispiele ebnen den Einstieg
- XML Schema, Linking-Sprachen und Transformation von XML-Dokumenten
- Ergänzungen und Beispiele unter http://downloads.hanser.de und www.medienwerke.de Moderne Web-Anwendungen sind ohne XML nicht mehr denkbar. Ob Portale, Content Management Systeme oder die Anbindung von Webapplikationen an Datenbanken - an XML führt im Web kein Weg vorbei. Was aber verbirgt sich hinter XML, und wie kann der Webentwickler die verschiedenen XML-basierten Sprachen effizient einsetzen? Hier setzt dieses Buch an.
Der Webentwickler lernt hier XML von Grund auf kennen. Er erfährt alles Wissenswerte zu Dokumenttypen, Elementen und Namensräumen. Nach einem Einstieg in die XML-Syntax geht es mit XML Schema, dem Tool zur Dokumenttypdefinition, weiter. XPath, XPointer und XLink als die wichtigsten Linking-Sprachen fehlen ebenso wenig wie zwei weitere wichtige Eckpfeiler des Buches, nämlich XSLT und XSL-FO.
Das Buch zeichnet sich durch eine Fülle praxisnaher Tipps und Informationen aus, die beispielweise zeigen, wie sich mittels Transformation aus einfachen XML-Strukturen PDF-Dateien generieren, Grafiken einbinden oder XML-Dateien flexibel formatieren lassen. Aber auch Themen wie XML Schema, DTDs und die zahlreichen XML-basierten Linking-Sprachen spielen in diesem Buch eine wichtige Rolle.

AUS DEM INHALT:
- Geschichte und Zukunft von XML
- XML-Grundlagen
- Dokumenttypen
- XML Schema
- XPath, XPointer und XLink
- Ausgabe mit CSS
- Transformation mit XSLT
- Formatierungen mit XSL-FO

Daniel KOCH ist Autor zahlreicher Fachbücher zu Webtechnologien und freiberuflicher Webentwickler. XML gehört für ihn in seiner Arbeit seit Jahren zu den unverzichtbaren Werkzeugen, um leistungsfähige und moderne Webanwendungen zu erstellen.

Inhalt 6
1 XML – ein Blick zurück und voraus 12
1.1 Die Idee hinter XML 12
1.2 Das Prinzip der Metasprachen 15
1.2.1 Multimedia ist Trumpf mit SMIL 17
1.2.2 Mit WML alles fürs Handy 18
1.2.3 Vektorgrafiken mit SVG 18
1.2.4 Silverlight 19
1.3 Die Einsatzgebiete von XML 20
1.3.1 AJAX 20
1.3.2 Web-Services 22
1.3.3 Druckindustrie 23
1.3.4 Konfigurationsdateien 24
1.4 XML und das semantische Web 25
1.4.1 Was Semantik bringt 25
1.5 XML-Editoren im Einsatz 30
1.5.1 XMLSpy 31
1.5.2 XMLBlueprint 31
2 Die XML-Grundlagen 34
2.1 Hallo, Welt zum Einstieg 34
2.2 Die XML-Deklaration 38
2.2.1 Den verwendeten Zeichensatz angeben 38
2.2.2 Angaben zur Dokumenttypdefinition 40
2.3 Elemente definieren 41
2.3.1 Leere Elemente kennzeichnen 43
2.3.2 Fehlerquelle verschachtelte Elemente 43
2.3.3 Elemente mit Attributen detaillierter beschreiben 45
2.3.4 Was ist besser: Elemente oder Attribute? 48
2.3.5 Reservierte Attribute 49
2.4 XML-eigene Zeichen maskieren: Entitäten 50
2.5 Zeit sparen mit CDATA-Abschnitten 53
2.6 Kommentare für übersichtlichen Code 55
2.7 Verarbeitungsanweisungen (Processing Instructions) 56
2.8 Namensräume definieren 57
2.8.1 Den Standardnamensraum angeben 59
2.8.2 Das Namensraumpräfix 60
2.9 Das Prinzip der Wohlgeformtheit 61
3 Dokumenttypen beschreiben 66
3.1 Dokumenttypdefinitionen 66
3.2 Die Dokumenttypdeklaration 68
3.2.1 Externe DTDs verwenden 69
3.2.2 Bedingte Abschnitte 71
3.3 Elemente beschreiben: Elementtypdeklarationen 72
3.3.1 Ein Beispiel für eine DTD 72
3.3.2 Elemente, die weitere Elemente enthalten 73
3.3.3 Elemente mit Zeichendaten 73
3.3.4 Containerelemente verwenden 74
3.3.5 Leere Elemente 75
3.3.6 Inhaltsalternativen angeben 75
3.3.7 Elemente mit beliebigem Inhalt 77
3.3.8 Elemente mit gemischtem Inhalt 77
3.3.9 Das Inhaltsmodell und die Reihenfolge 78
3.3.10 Kommentare erhöhen die Übersichtlichkeit 79
3.4 Attribute beschreiben: Attributlistendeklarationen 80
3.4.1 Attributtypen und Vorgaberegelungen 81
3.5 Auf andere Elemente verweisen 87
3.6 Entitäten – Kürzel verwenden 87
3.6.1 Interne Entitäten 88
3.6.2 Externe Entitäten 90
3.6.3 Notationen und ungeparste Entitäten 92
3.6.4 Parameterentitäten einsetzen 93
3.7 DTD-Tipps für die Praxis 95
3.7.1 Elemente oder Attribute 95
3.7.2 Parameterentitäten 95
3.7.3 Mögliche Gründe für eine DTD 96
3.7.4 Hier lohnen sich DTDs nicht 96
4 Dokumenttypdefinition reloaded:XML Schema 98
4.1 Die Idee hinter XML Schema 98
4.1.1 Die Nachteile von DTDs 101
4.1.2 Anforderungen an XML Schema 102
4.2 Die Grundstruktur 103
4.2.1 XML Schema validieren 105
4.2.2 Schema und Dokument verknüpfen 106
4.3 Mit Kommentaren arbeiten 107
4.4 Elementnamen und Elementtypen 107
4.4.1 Elementtypen 108
4.4.2 Attributdefinitionen 112
4.5 Datentypen 113
4.5.1 Alle Datentypen in der Übersicht 114
4.5.2 Von Werteräumen, lexikalischen Räumen und Facetten 118
4.5.3 Ableitungen durch Einschränkungen 119
4.5.4 Facetten verwenden 120
4.5.5 Mit regulären Ausdrücken arbeiten 123
4.6 Die Dokumentstruktur definieren 127
4.6.1 Elemente deklarieren 127
4.6.2 Attribute deklarieren 128
4.6.3 Elementvarianten 129
4.6.4 Namensräume verwenden 130
4.6.5 Mit lokalen Elementen und Attributen arbeiten 133
4.6.6 Globale Elemente und Attribute 136
4.7 Häufigkeitsbestimmungen 137
4.8 Kompositoren einsetzen 140
4.8.1 xsd:all 140
4.8.2 xsd:choice 141
4.8.3 xsd:sequence 141
4.8.4 Modellgruppen verschachteln 141
4.9 Mit benannten Modellgruppen arbeiten 142
4.9.1 Attributgruppen definieren 143
4.10 Schlüsselelemente und deren Bezüge 144
4.10.1 Die Eindeutigkeit von Elementen 145
4.10.2 Auf Schlüsselelemente Bezug nehmen 146
4.11 Komplexe Datentypen ableiten 147
4.11.1 Komplexe Elemente erweitern 147
4.11.2 Komplexe Elemente einschränken 148
4.11.3 Datentypen steuern und ableiten 149
4.11.4 Abstraktionen 150
4.11.5 Gemischte Inhalte 151
4.11.6 Leeres Inhaltsmodell 152
4.12 Die Möglichkeiten der Wiederverwendbarkeit 153
4.12.1 Benannte Typen 153
4.12.2 Referenzen verwenden 154
4.13 Schemeta inkludieren und importieren 154
4.13.1 Schemata inkludieren 154
4.13.2 xsd:redefine einsetzen 155
4.13.3 Das xsd:import-Element verwenden 156
4.14 Das Schema dem XML-Dokument zuordnen 156
5 XPath, XPointer und XLink 158
5.1 XPath – alles zum Adressieren 158
5.1.1 Die Idee hinter XPath 159
5.1.2 Mit Knoten arbeiten 164
5.1.3 Achsen – die Richtung der Elementauswahl 167
5.1.4 Adressierung von Knoten 168
5.1.5 Der Unterschied zwischen absoluten und relativen Pfaden 169
5.1.6 Verkürzte Syntaxformen verwenden 174
5.1.7 Variablen einsetzen 177
5.1.8 Auch Funktionen gibt es 177
5.2 Neuerungen in XPath 2.0 182
5.2.1 Die Rückwärtskompatibilität zu XPath 1.0 183
5.2.2 Das erweiterte Datenmodell 183
5.2.3 Kommentare 186
5.2.4 Knotentests 187
5.2.5 Schleifenausdrücke 188
5.2.6 Bedingungen definieren 189
5.2.7 Die erweiterte Funktionsbibliothek 189
5.3 XPointer – mit Zeigern arbeiten 196
5.3.1 URIs und Fragmentbezeichner 196
5.3.2 Die XPointer-Syntax 197
5.3.3 Der XPointer-Sprachschatz 198
5.3.4 XPointer innerhalb von URIs 200
5.3.5 XPointer innerhalb von Hyperlinks 202
5.3.6 XPath-Erweiterungen in XPointer 204
5.3.7 Mit Funktionen arbeiten 205
5.4 XLink – Links in XML definieren 210
5.4.1 Link-Typen und andere Attribute 212
5.4.2 Einfache Links anlegen 214
5.4.3 Erweiterte Links definieren 215
5.4.4 DTDs für XLinks definieren 219
5.5 XML Base – eine Linkbasis schaffen 220
6 Ausgabe mit CSS 224
6.1 Schnelleinstieg in CSS 224
6.1.1 CSS-Maßeinheiten 225
6.1.2 Mit Selektoren arbeiten 227
6.1.3 Das Prinzip der Kaskade 231
6.1.4 Die Spezifität ermitteln 233
6.1.5 Ein Beispiel für das Vererbungsprinzip 234
6.2 XML mit CSS formatieren 236
6.2.1 XML-Elemente formatieren 238
6.3 Die Schwächen von CSS (in Bezug auf XML) 240
7 Transformation mit XSLT 242
7.1 Sprachverwirrung: XSLT, XSL und XSL-FO 242
7.2 Das Grundprinzip der Transformation 244
7.2.1 XSLT-Prozessoren im Einsatz 246
7.3 Der Einstieg in XSLT: Hallo, Welt! 253
7.3.1 Das Element xsl:stylesheet 255
7.3.2 Top-Level-Elemente 256
7.4 Templates definieren 258
7.4.1 Template-Regeln 258
7.4.2 Suchmuster/Pattern einsetzen 259
7.5 Der Ablauf der Transformation 260
7.5.1 Alles beginnt beim Wurzelknoten 260
7.5.2 Anwendung von Templates 260
7.5.3 Verhalten bei Template-Konflikten 261
7.5.4 Stylesheets mit nur einer Template-Regel 262
7.5.5 Überschreiben von Template-Regeln 262
7.5.6 Mit Modi Elemente mehrmals verarbeiten 263
7.5.7 Eingebaute Template-Regeln 264
7.6 Templates aufrufen 265
7.7 Templates einbinden 268
7.8 Stylesheets einfügen, importieren undwiederverwenden 270
7.8.1 Stylesheets einfügen 271
7.8.2 Stylesheets importieren 271
7.8.3 Stylesheets inkludieren 273
7.9 Mit XSLT arbeiten 276
7.9.1 Variablen und Parameter einsetzen 276
7.9.2 Variablen verwenden 280
7.9.3 Bedingte Anweisungen 287
7.9.4 Erweiterte Bedingungen definieren 289
7.9.5 Nummerierungen 292
7.9.6 Sortieren und Gruppieren 294
7.9.7 Elemente und Attribute hinzufügen 304
7.9.8 Mit Funktionen arbeiten 313
7.9.9 HTML- und XML-Ausgaben 318
7.10 Text formatiert ausgeben 322
7.10.1 Hyperlinks und Grafiken 324
7.11 Weitere Neuerungen in XSLT 2.0 326
7.11.1 Neue Elemente 327
7.11.2 Rückwärtskompatibiliät 332
8 Formatierungen mit XSL-FO 334
8.1 Die Idee hinter XSL-FO 334
8.1.1 Eigenschaften der Sprache 335
8.1.2 Einsatzgebiete von XSL-FO 336
8.1.3 Die Spezifikation des Vokabulars 336
8.1.4 Der Verarbeitungsprozess 338
8.1.5 Diese XSL-FO-Werkzeuge gibt es 339
8.1.6 Prozessoren im Einsatz 342
8.1.7 Prozessoren und die Standards 346
8.2 Stylesheet-Design 348
8.2.1 Seitenlayout und Bildschirmdesign 348
8.2.2 Das Wurzelelement 349
8.2.3 Stylesheets aufbauen 349
8.2.4 Attributsätze 351
8.2.5 Parameter und Variablen 352
8.3 Seitenlayouts festlegen 353
8.3.1 Maßeinheiten in XSL-FO 353
8.3.2 Das Seitenlayout definieren 353
8.3.3 Seitenfolgen-Vorlagen definieren 356
8.3.4 Die Seitenfolge festlegen 358
8.3.5 Druckbereiche festlegen 363
8.3.6 Mit Blöcken arbeiten 364
8.3.7 Mit Inline-Elementen arbeiten 366
8.3.8 Schreibrichtung bestimmen 368
8.3.9 Die Ausrichtung festlegen 369
8.3.10 Das Farbmanagement in XSL-FO 370
8.4 Typografische Gestaltung 372
8.4.1 Defaults, Vererbung, Verschachtelung 372
8.4.2 Seitenzahlen einfügen 372
8.5 Rahmen und Ränder 374
8.5.1 Außenabstände bestimmen 374
8.5.2 Innenabstände 379
8.5.3 Vertikale Abstände 381
8.5.4 Rahmen definieren 383
8.6 Schriftgestaltung 385
8.6.1 Ausrichtung 385
8.6.2 Mit Einrückungen arbeiten 386
8.6.3 Schriftart festlegen 387
8.6.4 Schriftgröße bestimmen 388
8.6.5 Zeilenhöhe 389
8.6.6 Unterstreichungen & Co.
8.6.7 Horizontale Linien innerhalb von Blöcken 391
8.6.8 Silbentrennung 395
8.6.9 Groß- und Kleinschreibung 395
8.7 Hyperlinks und Querverweise setzen 396
8.8 Listen und Aufzählungen 398
8.8.1 Abstände innerhalb von Listen 400
8.9 Fußnoten 402
8.10 Grafiken einbinden 405
8.10.1 Hintergrundbilder definieren 406
8.10.2 SVG einbinden 408
8.11 Mit Tabellen arbeiten 410
8.11.1 Zellen und Zeilen überspannen 412
8.12 Das Float-Konzept 414
Register 416

1 XML - ein Blick zurück und voraus (S. 1-2)

XML hat die (Online-)Welt verändert. Das zeigen die zahlreichen Technologien, die sich rund um XML etabliert haben. Denken Sie nur an AJAX, Newsfeeds oder ganz allgemein an das Web 2.0. All das wäre ohne XML weder denk- noch umsetzbar. Und XML kommt auch dort zum Einsatz, wo man es auf den ersten Blick gar nicht ahnen würde. Oder hätten Sie gedacht, dass sich das iPhone von Apple über eine einfache XML-Datei konfigurieren lässt? Es steckt also weitaus mehr hinter XML, als man gemeinhin vermutet. Wie weit die Extensible Markup Language bereits in die Programmier- und Entwicklerwelt Einzug gehalten hat, ist vielen gar nicht bewusst.

Und doch ist eine Welt ohne XML heute kaum noch vorstellbar. Denn diese Sprache dient mittlerweile als Format für Konfigurationsdateien, wird für den Im- und Export in den verschiedensten Programmen verwendet und kommt im Internet genauso wie innerhalb von Datenbanken zum Einsatz. Um XML verstehen zu können, ist es hilfreich, wenn man weiß, woher die Sprache eigentlich kommt. Und genau hier setzt dieses Kapitel an: Es beschreibt, woher XML kommt und wo die Zukunft dieser Sprache liegt, stellt eine Auswahl XML-basierter Sprachen vor und zeigt, welche Werkzeuge bei der täglichen Arbeit mit XML hilfreich sind.

1.1 Die Idee hinter XML

Zunächst einmal ist die Frage interessant, wie und warum es eigentlich zur Entwicklung von XML gekommen ist. Dafür muss man verstehen, dass es sich bei XML nicht nur um eine Technologie handelt, sondern dahinter eine komplexe Idee steht. Als Format dient XML zunächst einmal dazu, Daten zu speichern und diese zwischen sehr unterschiedlichen Systemen austauschbar zu machen. Das ist allerdings nur der eine Aspekt. Der andere ist, dass sich um XML herum eine Reihe unterschiedlicher Standards entwickelt hat. Um einige dieser Sprachen kümmert sich das World Wide Web Consortium (W3C,) dessen Webseite unter http://w3.org/ verfügbar ist.

Dort finden Sie zum Beispiel die Sprachen SVG und SMIL. Mehr zu solchen "abgeleiteten", Sprachen erfahren Sie im weiteren Verlauf dieses Kapitels, hier sei aber schon so viel verraten: Beides sind Sprachen, die im XML-Umfeld entstanden sind. Eine der wichtigsten Fragen stellt sich unweigerlich jedem, der von XML hört: Wo liegen eigentlich die Vorteile dieser Sprache im Vergleich zu anderen Formaten? Hier hilft ein kurzer Ausflug in die Historie. Die ersten elektronischen Formate kümmerten sich mehr darum, wie Daten ausgegeben werden sollten. Struktur und Sinn von Dokumenten spielten hingegen keine beziehungsweise nur eine untergeordnete Rolle.

Klassische Formatierungssprachen dienten eher dazu, Dokumente anzusehen oder/und diese auszudrucken. Diese Formate waren also eher für die Präsentation von Inhalten da. Die Datenstruktur blieb weitestgehend außen vor. Um dieses Problem zu lösen, wurde das Konzept der sogenannten generischen Kodierung entwickelt. Dabei kommen inhaltsorientierte Elemente zum Einsatz. Mit denen können bestimmte Inhalte mit verschiedenen Elementen logisch ausgezeichnet werden. Der erste große Schritt in diese Richtung war SGML (Standard Generalized Markup Language)."

Erscheint lt. Verlag 1.1.2010
Verlagsort München
Sprache deutsch
Themenwelt Informatik Programmiersprachen / -werkzeuge XML
Mathematik / Informatik Informatik Web / Internet
Schlagworte Dom • DTD • semantic web • Webprogrammierung • XLink • XPath • XPointer • XSL-FO • XSLT
ISBN-10 3-446-42356-7 / 3446423567
ISBN-13 978-3-446-42356-5 / 9783446423565
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
PDFPDF (Wasserzeichen)

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.