»Eine XML-Referenz, die so gut wie nichts vermissen lässt.« c't
Ob Sie XML in der Software- und Webentwicklung einsetzen, im E-Publishing oder im Office-Bereich: Dieses Buch liefert Ihnen fundiertes Wissen, um erfolgreich XML-Lösungen für Ihre Einsatzzwecke zu programmieren. Zahlreiche Praxisbeispiele helfen Ihnen, das Gelernte richtig anzuwenden. Auch als Nachschlagewerk geeignet. Kompetent und stets praxisorientiert werden alle wichtigen Themen rund um XML behandelt: Validierung mit DTD und XML Schema, Navigation mit XPath und Transformation mit XSLT, Formatierung mit CSS und XSL, Zugriff auf XML-Dokumente über die Programmier-Schnittstellen DOM und SAX, Mapping, die Office-Dokumentformate ODF und OOXML, HTML5 und elektronisches Publizieren mit EPUB.
Das Buch im E-Book-Only-Format eignet sich sowohl für Einsteiger als auch für Entwickler, die eine zuverlässige Referenz suchen.
Aus dem Inhalt:
- Grundlagen der XML-Programmierung
- Dokumenttypen und Validierung
- Inhaltsmodelle mit XML Schema
- Navigation mit XPath
- Formatierung mit CSS & XSL
- Transformationen mit XSLT
- Abfragen mit XQuery
- Parsen mit DOM & SAX
- XML und .NET Framework: Visual Basic, LINQ to XML
- XML in Office-Anwendungen
- Mapping von oder nach XML
- Publizieren mit EPUB
- HTML5 und XHTML
XML Schema, DTD, XSLT, CSS, XSL, XPath, DOM, SAX, XQuery, HTML5, EPUB
Autorentext
Helmut Vonhoegen arbeitet seit 1992 als freischaffender Autor und IT-Berater. Er hat inzwischen über sechzig Bücher und zahlreiche Artikel in Fachzeitschriften zu aktuellen Themen verfasst. Seine Schwerpunkte sind Office-Anwendungen, Windows, Webprogrammierung und XML. Sein Antrieb ist es, verständliche und gut lesbare Computerbücher zu schreiben.
Inhalt
Materialien zum Buch ... 20
Vorwort ... 21
1. Einführung ... 23
1.1 ... Kleines Einstiegsprojekt zum Kennenlernen ... 23
1.2 ... XML -- universale Metasprache und Datenaustauschformat ... 29
1.3 ... Übersicht über die Sprachfamilie XML ... 33
1.4 ... XML-Editoren und Entwicklungsumgebungen ... 36
1.5 ... Anwendungsbereiche ... 41
2. XML -- Bausteine und Regeln ... 47
2.1 ... Aufbau eines XML-Dokuments ... 47
2.2 ... Die Regeln der Wohlgeformtheit ... 59
2.3 ... Elemente oder Attribute? ... 60
2.4 ... Reservierte Attribute ... 61
2.5 ... Entitäten und Verweise darauf ... 62
2.6 ... CDATA-Sections ... 63
2.7 ... Kommentare ... 64
2.8 ... Verarbeitungsanweisungen ... 65
2.9 ... Namensräume ... 65
2.10 ... XML-Version 1.1 ... 69
3. Dokumenttypen und Validierung ... 71
3.1 ... Metasprache und Markup-Vokabulare ... 71
3.2 ... Regeln der Gültigkeit ... 74
3.3 ... DTD oder Schema? ... 75
3.4 ... Definition eines Dokumentmodells ... 75
3.5 ... Deklarationen für gültige Komponenten ... 78
3.6 ... Dokumentinstanz ... 86
3.7 ... Attributlisten-Deklaration ... 87
3.8 ... Verweis auf andere Elemente ... 91
3.9 ... Verwendung von Entitäten ... 91
3.10 ... Formen der DTD-Deklaration ... 96
3.11 ... Zwei DTDs in der Praxis ... 99
4. Inhaltsmodelle mit XML Schema ... 107
4.1 ... XML Schema -- der XML-basierte Standard ... 107
4.2 ... Erster Entwurf eines Schemas ... 109
4.3 ... Genereller Aufbau eines XML-Schemas ... 116
4.4 ... Datentypen ... 117
4.5 ... Definition der Struktur des Dokuments ... 133
4.6 ... Häufigkeitsbestimmungen ... 142
4.7 ... Default-Werte für Elemente und Attribute ... 143
4.8 ... Kompositoren ... 143
4.9 ... Arbeit mit benannten Modellgruppen ... 146
4.10 ... Definition von Attributgruppen ... 147
4.11 ... Schlüsselelemente und Bezüge darauf ... 148
4.12 ... Kommentare ... 152
4.13 ... Ableitung komplexer Datentypen ... 153
4.14 ... Designvarianten ... 160
4.15 ... Übernahme von Schema-Definitionen ... 163
4.16 ... XML Schema 1.0 -- Kurzreferenz ... 171
4.17 ... Neuerungen in XML Schema 1.1 ... 180
5. Navigation und Verknüpfung ... 187
5.1 ... Datenauswahl mit XPath ... 187
5.2 ... XPath 2.0 ... 205
5.3 ... XPath 3.0 und XPath 3.1 ... 220
5.4 ... Verknüpfungen mit XLink ... 227
5.5 ... XBase ... 231
5.6 ... Über XPath hinaus: XPointer ... 232
6. Datenausgabe mit CSS ... 239
6.1 ... Cascading Stylesheets für XML ... 241
6.2 ... Arbeitsweise eines Stylesheets ... 241
6.3 ... Anlegen von Stylesheets ... 243
6.4 ... Vererben und Überschreiben ... 245
6.5 ... Selektortypen ... 246
6.6 ... Attributselektoren ... 247
6.7 ... Kontext- und Pseudoselektoren ... 247
6.8 ... Schriftauswahl und Textformatierung ... 249
6.9 ... Farbauswahl ... 250
6.10 ... Blöcke, Ränder, Rahmen, Füllung und Inhalt ... 250
6.11 ... Stylesheet-Kaskaden ... 252
6.12 ... Auflösung von Regelkonflikten ... 253
6.13 ... Zuordnung zu XML-Dokumenten ... 253
6.14 ... Schwächen von CSS ... 255
7. Umwandlungen mit XSLT ... 257
7.1 ... Sprache für Transformationen ... 257
7.2 ... Ablauf der Transformation ... 268
7.3 ... Stylesheet mit nur einer Template-Regel ... 271
7.4 ... Eingebaute Template-Regeln ... 272
7.5 ... Designalternativen ... 273
7.6 ... Kontrolle der Knotenverarbeitung ... 275
7.7 ... Datenübernahme aus der Quelldatei ... 281
7.8 ... Nummerierungen ... 283
7.9 ... Verzweigungen und Wiederholungen ... 286
7.10 ... Sortieren und Gruppieren von Quelldaten ... 291
7.11 ... Parameter und Variablen ... 294
7.12 ... Hinzufügen von Elementen und Attributen ... 303
7.13 ... Zusätzliche XSLT-Funktionen ... 307
7.14 ... Mehrfache Verwendung von Stylesheets ... 311
7.15 ... Übersetzungen zwischen XML-Vokabularen ... 312
7.16 ... Umwandlung von XML in HTML und XHTML ... 315
7.17 ... Kurzreferenz zu XSLT 1.0 ... 324
7.18 ... XSLT 2.0 ... 333
7.19 ... XSLT 3.0 ... 344
8. Formatierung mit XSL ... 361
8.1 ... Transformation und Formatierung ... 361
8.2 ... Formatierungsobjekte ... 362
8.3 ... Baum aus Bereichen -- Areas ... 363
8.4 ... XSL-Bereichsmodell ... 363
8.5 ... Testumgebung für XSL ... 365
8.6 ... Aufbau eines XSL-Stylesheets ... 367
8.7 ... Verknüpfung mit dem Dokument und Ausgabe ... 372
8.8 ... Inline-Formatierungsobjekte ... 373
8.9 ... Ausga…