XML Teil 3/3.1 Seite 1
|
|
|
- Andrea Müller
- vor 10 Jahren
- Abrufe
Transkript
1 XML Teil 3/3.1 Seite 1 Grundlagen 3/3 XML 3/3.1 Grundlagen Autor: Daniel Koch Die Idee von XML Wer mit Textverarbeitungsprogrammen arbeitet, kennt sie, Formatvorlagen. Das Prinzip besteht darin, häufig angewandte Abläufe zu automatisieren. Schreiben Sie häufiger Briefe oder Dokumente mit identischem Inhalt, können Sie mit Hilfe von Formatvorlagen die Arbeit effizienter gestalten. Bei anspruchsvolleren Dokumenten werden Sie jedoch nicht immer die gewünschte Formatvorlage finden. In Textverarbeitungsprogrammen besteht aber die Möglichkeit, eine solche für einen bestimmten Zweck zu entwickeln. Der Weg von einer Formatvorlage zu HTML ist nicht sehr weit. Denn im eigentlichen Sinn steht im Internet nur eine einzige dieser Vorlagen bereit. Und diese ist HTML. Obwohl HTML in den letzten Jahren diverse Entwicklungen durchlaufen hat, stößt man mit dieser Sprache an Grenzen. Und hier reichen Erweiterungen wie CSS usw. nicht mehr aus. Ganz gleich, welche Werkzeuge zur Verfügung gestellt werden, um Websites zu gestalten, sie werden das größte Problem von HTML nicht lösen können. HTML besteht aus vorgeschriebenen Tags und Attributen. Eine Überschrift durch das Tag <h1> wird z.b. immer gleich groß dargestellt. (Die Größe richtet sich nach der Voreinstellung im Browser.) Um diesen Missstand zu beseitigen, wurde XML die Extensible Markup Language entwickelt. Damit besteht die Möglichkeit, eigene Tags und Attribute zu definieren. Somit ist man nicht mehr auf die Formatvorlage HTML angewiesen. HTML und Formatvorlagen Grenzen von HTML Prinzip von XML 15
2 Teil 3/3.1 Seite 2 XML Grundlagen Um die genannten Aspekte zu verdeutlichen, folgt ein kleines Beispiel. Obwohl nicht näher auf die Syntax eingegangen wird, lässt sich das Prinzip von XML anschaulich darstellen. Es soll ein Web-Projekt über Bücher entwickelt werden. <?xml version=1.0?> <BUECHER> <SEITEN>MEIN BUCH</SEITEN> </BUECHER> Es wurden hier zwei eigene Tags definiert: <BUECHER> und <SEITEN>. Diese Tags sind für die Struktur des Dokuments bestens geeignet, da sich dieses mit Büchern beschäftigt. Bücher bestehen aus Seiten und genau dieser Aussage entsprechen die beiden Tags. Betriebssysteme und Browser Geeignete Betriebssysteme ASCII-Editoren Um XML-Dokumente einsetzen zu können, ist ein XMLfähiges Betriebssystem nötig. Zu diesem Zeitpunkt können jedoch noch nicht alle Betriebssysteme XML-Dokumente darstellen. Die nachfolgend aufgeführten Plattformen sind für den Einsatz von XML geeignet: Windows 3.x Windows 9x Windows 2000 Windows NT Linux Ein weiterer wichtiger Punkt ist ein Editor, mit dem XML- Dokumente geschrieben werden können. Betriebssystem Web-Adresse Name Windows NoteTab EditPad UltraEdit
3 XML Teil 3/3.1 Seite 3 Grundlagen Betriebssystem Web-Adresse Name Linux VIM Es handelt sich hierbei um einfache ASCII-Editoren, die für die ersten Schritte im Umgang mit XML jedoch ausreichend sind. An späterer Stelle werden wir die ersten reinen XML- Editoren vorstellen. Ted Um XML-Dateien anzeigen zu lassen, muss ein geeigneter Browser installiert sein. Obwohl der Internet Explorer 4 bereits XML unterstützte und diese Dokumente darstellen konnte, ist er nur bedingt einsatzfähig. So kann er z.b. XSL nicht interpretieren. Ab Version 5.0 des Internet Explorer können XML-Dateien angezeigt und mit XSL ausgegeben werden. Damit ist der Internet Explorer bislang der Browser, der am ehesten die Empfehlungen des W3C erfüllt. Hauptgrund hierfür ist die Festlegung von XML für das Channel Definition Format von Microsoft zu einem sehr frühen Zeitpunkt. Neben XSL können im Internet Explorer XML-Dateien auch durch Style Sheets beschrieben und ausgegeben werden. Geeignete Browser Mit dem Netscape Navigator 6 ist das darstellen von XML- Dateien ebenfalls möglich. Große Fortschritte wurden hier vor allem in Bezug auf die Umsetzung der Cascading Style Sheets erzielt. So lassen sich fortan fast sämtliche CSS1- und einige CSS2-Befehle darstellen. Wichtig ist dieser Punkt, wenn XML-Dateien über Style Sheets formatiert und ausgegeben werden sollen. Trotz dieser Tatsache ist auch der neue Navigator nur bedingt für XML geeignet. So kann er z.b. XSL nicht interpretieren. Dies liegt vor allem daran, dass die Syntax dieser Sprache noch nicht endgültig vom W3C verabschiedet wurde. Ein Softwareprodukt, das zwar im Gegensatz zu seinen großen Konkurrenten nicht frei erhältlich ist, muss in dieser Liste ebenfalls Erwähnung finden. Version 4.0 des Opera Browser ist für circa 32 Euro erhältlich. Es handelt sich hierbei um einen Browser, der sich strikt an die Vorgaben des W3C hält. Kein XSL 15
4 Teil 3/3.1 Seite 4 XML Grundlagen So wird auf korrektes HTML ebenso wie auf die Einhaltung der CSS-Spezifikation geachtet. In Version 4 kann Opera zudem XML-Dateien anzeigen. Dies allerdings nur eingeschränkt, da auch hier die Unterstützung für XSL fehlt. Mittels CSS lassen sich aber auch im Opera XML-Dateien anzeigen. Die Möglichkeit, sich ähnlich wie im Internet Explorer den Dokumentstrukturbaum anzeigen zu lassen, wird vom Opera Browser bislang nicht unterstützt. Parser automatisierte Fehlerbehebung Syntaxfehler erkennen Ein wichtiges Entwicklungstool für die Arbeit an XML-Dokumenten sind Parser. Diese überprüfen die entsprechenden Daten auf Syntaxfehler und geben sie aus. Ein Parser arbeitet eine Datei so lange ab, bis er auf einen Fehler stößt. Tritt dieser Punkt ein, wird die Verarbeitung sofort abgebrochen und der Nutzer erhält eine Fehlermeldung. Die folgenden drei Punkte gelten als Hauptaufgabe eines Parsers: Erstellung eines Baums, mit dessen Hilfe die Inhalte eines Elements nutzbar gemacht werden Zusammensetzung von Daten, die sich in unterschiedlichen Dateien befinden Überprüfung, ob es sich bei dem Dokument um ein wohlgeformtes oder gültiges handelt Validierend und nichtvalidierend Es wird zwischen zwei Varianten von Parsern unterschieden. Beide, sowohl validierende als auch nichtvalidierende Parser, müssen Dokumente auf korrekte Wohlgeformtheit hin überprüfen. Validierende Parser kontrollieren die Deklaration der DTD und alle anderen Gültigkeitsbedingungen. Hierzu ist es notwendig, dass ein validierender Parser die DTD und alle externen Entities einliest und anschließend verarbeitet. Nichtvalidierende Parser überprüfen das Dokument lediglich auf Wohlgeformtheit. Diese Parser ziehen hierzu nur die interne DTD heran. Das Dokument wird demnach nicht auf Gültigkeit überprüft. In der nachfolgenden Tabelle finden Sie eine Auswahl von derzeit existierenden Parsern.
5 XML Teil 3/3.1 Seite 5 Grundlagen Plattform Web-Adresse Name Windows, Linux, Unix DTD Parser Win32 XMLBooster C technet.oracle.com/tech/xml XML Parser für C++ Java TinyXML Cobol XML4COBOL Editoren für XML Die Tatsache, dass XML eine relativ junge Sprache ist, wirft die Frage auf, wie sich XML-Dokumente am einfachsten erstellen lassen. Ähnlich wie bei HTML gilt auch für XML: Ein einfacher Texteditor reicht zum Erlernen der Sprache ebenso wie für die ersten kleineren Anwendungen völlig aus. Sollen umfangreichere Projekte entwickelt werden, bietet sich der Einsatz eines geeigneten XML-Editors an. Die Anzahl der Editoren, die XML unterstützen, ist mittlerweile fast unüberschaubar geworden. Eine kleine Übersicht der besten zur Verfügung stehenden Editoren sehen Sie hier: Nicht völlig ausgereift Plattform Web-Adresse Name Java DDbE Windows xmlspy Java DTD2Relax Python XSV Java XML-Master Ein Programm, das in dieser Auflistung fehlt, ist X-Metal. Dieses Produkt finden Sie unter Der Preis für diesen Editor erscheint mit rund Mark zwar etwas hoch, es handelt sich hierbei allerdings um das wohl beste Programm dieser Art. 15
6 Teil 3/3.1 Seite 6 XML Grundlagen HTML und XML ein Vergleich XML wird HTML nicht ablösen. Vielmehr wird XML die Gestaltungsmöglichkeiten von HTML erweitern. Es kann von nun an praktisch jeder Tag andersartig gestaltet und den individuellen Anforderungen angepasst werden. Die folgenden Punkte werden aufzeigen, dass es noch weitere bedeutende Unterschiede zwischen beiden Sprachen gibt: Syntax Zeitaufwand Ein erstes Beispiel Der wichtigste Punkt ist die Syntax. War es in HTML bislang gleichgültig, in welcher Schreibweise Tags geschrieben wurden, gilt dies für XML nicht. Der öffnende und der abschließende Tag müssen exakt die gleiche Schreibweise besitzen. Der Zeitaufwand für XML-Dokumente ist höher als bei HTML-Dokumenten. Bislang war lediglich eine Datei nötig, um eine Website zu erstellen. In XML werden jedoch noch weitere benötigt. So muss zunächst die eigentliche Struktur des Dokuments in der XML-Datei und anschließend deren Ausgabe im Browser über eine CSS-, HTMLoder XSL-Datei definiert werden. Wie bei jeder gängigen Programmiersprache soll das klassische Hello World den Einstieg in XML erleichtern. <?xml version= 1.0 encoding= ISO ?> <BEISPIEL>Hello World</BEISPIEL> In der ersten Zeile wird die XML-Deklaration definiert. Die Versionsnummer 1.0 muss angegeben werden. Von Seiten des W3C wurde in diesem Zusammenhang jedoch darauf hingewiesen, dass dies keine Auswirkungen auf zukünftige Versionen von XML haben wird. So steht bislang weder fest, ob es eine zweite Version geben wird, noch dass diese dann tatsächlich Version 2.0 heißen wird. Über das Attribut encoding wird die zu verwendende Sprache angegeben.
7 XML Teil 3/3.1 Seite 7 Grundlagen Das W3C gab die Empfehlung aus, die erste Zeile kleinzuschreiben. Dies wird besonders in Bezug auf mögliche zukünftige Neuerungen an Bedeutung gewinnen. Beachten Sie, dass es anders als in HTML (durch </HTML>) bei XML keinen Abschlusstag für das gesamte Dokument gibt. Die zweite Zeile beinhaltet die eigentliche Idee von XML. Hier wurde der erste eigene Tag <BEISPIEL> definiert. Besonderes Augenmerk ist auf die Schreibweise des Tags zu legen. Die des öffnenden stimmt exakt mit der des abschließenden Tags überein. Speichern Sie die Datei mit der Erweiterung.xml ab und rufen Sie diese anschließend mit einem geeigneten Browser auf. Sie werden feststellen, dass lediglich der Quelltext angezeigt wird. Es handelt sich hierbei um die Dokumentbaumstruktur. Sie zeigt die eigentliche Struktur des Dokuments an. Die folgenden Elemente sind in einem Dokument enthalten: Inhalt Struktur logische Informationen Formatierungen Dokumentstruktur allgemein Um aufzuzeigen, dass das zuvor angelegte XML-Dokument korrekt geschrieben wurde, demonstrieren wir eine fehlerhafte Eingabe und deren Ausgabe im Browser. <?xml version= 1.0?> <BEISPIEL>Hello World</Beispiel> Speichern Sie diese Datei wiederum mit der Erweiterung.xml ab und rufen Sie diese im Browser auf. Es wird eine Fehlermeldung ausgegeben. Zusätzlich erhalten Sie Informationen über die Art des Fehlers. In diesem Fall stimmt der öffnende nicht mit dem Abschlusstag überein. 15
8 Teil 3/3.1 Seite 8 XML Grundlagen Abbildung 3/3.1-1: Fehlermeldung im Internet Explorer 5 Typische Fehlermeldungen Es ist folglich beim Einsatz von XML explizit auf die völlig korrekte Syntax zu achten. Würde ein solcher Syntaxfehler in einer HTML-Datei vorkommen, würde dies, zumindest bis zum jetzigen Zeitpunkt, ohne Folgen bleiben. Der Zeichensatz In HTML werden Sonderzeichen folgendermaßen eingesetzt: <I>B&äuml;der</I> Sonderzeichen in XML Diese Vorgehensweise ist beim Einsatz von Sonderzeichen innerhalb eines XML-Dokuments nicht notwendig. Der folgende Quellcode enthält das Sonderzeichen ö. Rufen Sie diese Seite mit dem Browser auf, erscheint eine Fehlermeldung. Die Ursache hierfür liegt im vom Browser standardmäßig eingesetzten Zeichensatz UTF-8. Dieser besteht aus den ersten 128 Zeichen des ASCII-Codes. In diesem werden Sonderzeichen jedoch nicht berücksichtigt. Speichern Sie die fol-
9 XML Teil 3/3.1 Seite 9 Grundlagen gende Datei mit der Erweiterung.xml ab und sehen Sie sich diese im Browser an. <?xml version= 1.0?> <BEISPIEL>Schöne Seite<BEISPIEL> Obwohl die Datei korrekt geschrieben wurde, erhalten Sie eine Fehlermeldung. Dies liegt an dem deutschen Umlaut ö, den der Browser nicht interpretieren kann, da dieses Zeichen nicht in UTF-8 vorkommt. Sie müssen dem Browser mitteilen, welchen Zeichensatz er auf dieses Dokument anwenden soll. <?xml version= 1.0 encoding= ISO ?> <BEISPIEL>Schöne Seite<BEISPIEL> Durch die Angabe encoding= ISO wird dem Browser mitgeteilt, dass er den Zeichensatz ISO verwenden soll. Dieser kann alle Sonderzeichen aus dem westeuropäischen und lateinamerikanischen Sprachraum darstellen. Für sämtliche andere Sprachräume existieren ebenfalls solche ISO-Standards. Gerade wenn Sie Websites für ausländische Partner entwickeln, sind diese von enormer Bedeutung. Nur durch den korrekten ISO-Standard kann gewährleistet werden, dass das XML-Dokument fehlerfrei angezeigt wird. Die folgende Tabelle zeigt die für die verschiedenen Sprachräume zu verwendenden ISO-Standards. ISO Sprachraum Westeuropa, Lateinamerika Osteuropa Südeuropa Skandinavien, Baltikum Kyrillisch Arabisch Griechisch ISO-Standards ISO ISO ISO ISO ISO ISO ISO
10 Teil 3/3.1 Seite 10 XML Grundlagen Sprachraum Hebräisch Türkisch Lappland, Eskimo Japanisch Japanisch Japanisch ISO-Standards ISO ISO ISO EUC_JP Shift_JIS ISO-2022-JP Weitere Zeichen Es gibt innerhalb von XML jedoch einige Ausnahmen, bei denen die zuvor dargestellte Vorgehensweise nicht zum gewünschten Ergebnis führt. Für diesen Zweck müssen auch in XML die Zeichen, ähnlich wie in HTML, kodiert werden. Zunächst müssen all die Zeichen kodiert werden, die nicht auf einer Tastatur zu finden sind. Weitere Gründe für den Einsatz einer solchen Syntax können sein, dass eines der folgenden Zeichen Verwendung finden soll: Anführungszeichen spitze Klammern et-zeichen Apostroph Obwohl die hier aufgeführten Zeichen auf der Tastatur vorhanden sind, müssen Sie diese trotzdem kodieren. Die aufgelisteten Zeichen gehören zur Syntax von XML und würden, wenn sie nicht anders beschrieben werden, interpretiert. Dies führt unweigerlich zu einer Fehlermeldung. Das folgende Beispiel soll diesen Aspekt verdeutlichen. <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (NACHNAME, VORNAME)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> ]> <AUTOREN> <NACHNAME><Ellis></NACHNAME> <VORNAME>Bret Easton</VORNAME> </AUTOREN>
11 XML Teil 3/3.1 Seite 11 Grundlagen Ohne bereits an dieser Stelle genauer auf die Syntax eingehen zu müssen, ist deutlich zu erkennen, dass der Internet Explorer beim Aufruf dieser Datei eine Fehlermeldung ausgibt. Abbildung 3/3.1-2: Falsch geschlossene Tags Der Grund hierfür liegt darin, dass innerhalb der Syntax Zeichen eingesetzt wurden, die zur XML-Spezifikation gehören. In diesem Beispiel handelt es sich um die beiden spitzen Klammern, die den Namen des Autors einschließen. Die beiden Klammern suggerieren, dass es sich um den Tag <Ellis> handelt. Dies ist jedoch nicht der Fall. Vielmehr soll der Name Ellis am Bildschirm ausgegeben werden. Um dem Browser diesen Aspekt mitteilen zu können, müssen die spitzen Klammern als Sonderzeichen gekennzeichnet werden. Fehlersuche <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (NACHNAME, VORNAME)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> ]> <AUTOREN> <NACHNAME><Ellis></NACHNAME> <VORNAME>Bret Easton</VORNAME> </AUTOREN> 15
12 Teil 3/3.1 Seite 12 XML Grundlagen
13 XML Teil 3/3.2.1 Seite 1 Tags definieren 3/3.2 Einführung in XML 3/3.2.1 Tags definieren Die bisherigen Beispiele waren zwar XML-Dokumente, sollten aber in dieser Form nicht eingesetzt werden. Es wurden zwar Tags eingebunden, diese sind jedoch nicht definiert worden. Bislang wurde der Tag vom Browser definiert, als er auf das Tag stieß. Korrekter ist es allerdings, erst den Tag zu definieren und anschließend verwenden zu lassen. Reihenfolge festlegen <?xml version= 1.0?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOR (#PCDATA)> ]> <AUTOR>Bret Easton Ellis</AUTOR> Zunächst wird über das <!DOCTYPE>-Attribut die Definition des Tags eingeleitet. Anschließend wird der Definition ein Name zugewiesen. In diesem Fall lautet dieser AUTOREN. Der Name darf aus folgenden Zeichen bestehen: Buchstaben Unterstriche Ziffern Am Anfang des Namens darf keine Ziffer stehen. (Beispiel für einen unkorrekten Namen: 4AUTOREN). Gültige Namen Achtung Die spezielle Definition des Tags findet nach der öffnenden eckigen Klammer statt. Zunächst wird dem Tag der Name AUTOR gegeben. Durch (#PCDATA) Parsed Character Data wird ein Absatz festgelegt, den der Browser ausliest und anschließend identifiziert. 15
14 Teil 3/3.2.1 Seite 2 XML Tags definieren Durch Schließen der eckigen Klammer wird die Definition des Tags abgeschlossen. Anschließend wird das eigentliche Tag, das tatsächlich im Browser ausgegeben werden soll, geschlossen. Document Type Definition Die Definition des Tags wird als DTD bezeichnet. Dieser haben wir einen eigenen Abschnitt gewidmet. Sie sei an dieser Stelle jedoch kurz erwähnt, um das Definieren mehrerer Tags nachvollziehen zu können. Die DTD im vorangegangenen Beispiel lautete AUTOREN. Bislang wurde in ihr lediglich ein einziger Tag festgelegt. Soll das XML-Dokument zwei Tags beinhalten, muss der Code modifiziert werden. <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOR (NAME)> <!ELEMENT NAME (#PCDATA)> ]> <AUTOR > <NAME>Bret Easton ELLIS</NAME> </AUTOR> Wurzel- und Unterelemente definieren In einem XML-Dokument darf ein Wurzelelement (Root Element) nur einmal vorkommen. Andere Tags müssen dem Wurzelelement untergeordnet sein. In diesem Beispiel ist AUTOR das Wurzelelement und wird immer zuerst definiert. Anschließend wird das untergeordnete Tag in einer runden Klammer festgelegt. In der nächsten Zeile wird das Tag NAME definiert. Durch die eckige Klammer wird die DTD geschlossen. Nun müssen die Tags so eingesetzt werden, wie es in der DTD bestimmt wurde. AUTOR ist das Wurzelelement, das das Untertag NAME enthält. Sie können beliebig viele Untertags zuweisen. Für drei Unterelemente würde das Listing wie nachfolgend beschrieben aussehen.
15 XML Teil 3/3.2.1 Seite 3 Tags definieren <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOR (BUCH, PREIS, TENDENZ)> <!ELEMENT BUCH (#PCDATA)> <!ELEMENT PREIS (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)> ]> <AUTOR> <BUCH>American Psycho</BUCH> <PREIS>39.95 DM</PREIS> <TENDENZ>steigend</TENDENZ> </AUTOR> Achten Sie explizit darauf, dass in jedem XML-Dokument nur ein Wurzelelement vorkommen darf. 15
16 Teil 3/3.2.1 Seite 4 XML Tags definieren
17 XML Teil 3/3.2.2 Seite 1 Document Type Definition 3/3.2.2 Document Type Definition Interne DTD In XML gibt es zwei verschiedene Varianten, um eine DTD festzulegen. Sie können zwischen einer internen und einer externen DTD wählen. Eine Aussage, welche der beiden Methoden die bessere ist, lässt sich pauschal nicht treffen. Es spielen hierfür verschiedene Faktoren eine Rolle: Wie übersichtlich wurde das Dokument geschrieben? Sind ausreichend erläuternde Kommentare vorhanden? Wie umfangreich wird das Dokument? Auswahlkriterien Um die angesprochenen Punkte zu verdeutlichen, haben wir nachfolgend das gleiche XML-Dokument einmal mit einer internen und einmal mit einer externen DTD versehen. <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (NACHNAME, VORNAME, TITEL, BESTSELLER, PREIS, TENDENZ)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!ELEMENT TITEL (#PCDATA)> <!ELEMENT BESTSELLER (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)> ]> <AUTOREN> <NACHNAME>Ellis</NACHNAME> <VORNAME>Bret Easton</VORNAME> <TITEL>American Psycho</TITEL> <BESTSELLER>ja</BESTSELLER> <TENDENZ>steigend</TENDENZ> </AUTOREN> 15
18 Teil 3/3.2.2 Seite 2 XML Document Type Definition Nachteile einer internen DTD Dieses Beispiel zeigt deutlich die Nachteile einer internen DTD auf. Obwohl das Dokument von geringem Umfang ist, wird es durch die interne DTD unübersichtlich. (Bedenken Sie, dass in diesem Beispiel nur ein Datensatz mit relativ wenigen Tags verwendet wurde.) Externe DTD Um auf eine externe DTD zu verweisen, wird das <!DOC- TYPE>-Attribut angewandt. Anschließend wird der Name der DTD angegeben. Dieser ist nicht mit dem Namen der DTD-Datei zu verwechseln. Stattdessen handelt es sich hierbei um einen internen Namen, den Sie frei wählen können. Vergeben Sie nur logische, kurze und prägnante Namen, die keine Sonderzeichen enthalten. Über das Attribut SYSTEM erhält der Browser die Anweisung, auf welchen Bereich die DTD angewandt werden soll. Gilt die definierte DTD nur für die Website, muss immer SYSTEM angegeben werden. Öffentlich zugängliche DTDs Wird stattdessen auf eine öffentliche DTD verwiesen, findet das Attribut PUBLIC Verwendung. Öffentliche DTDs finden Sie z.b. auf den Seiten des W3C unter Anschließend wird der Dateiname der DTD angegeben. Dieser muss in Anführungszeichen stehen. Hierbei ist zu beachten, dass die korrekte Pfadangabe gemacht wird. In diesem Beispiel wurde der DTD der Name extern.dtd zugewiesen, die sich im gleichen Verzeichnis wie das eigentliche XML-Dokument befindet. <?xml version="1.0"?> <!DOCTYPE AUTOREN SYSTEM extern.dtd > <AUTOREN> <NACHNAME>Ellis</NACHNAME> <VORNAME>Bret Easton</VORNAME> <TITEL>American Psycho</TITEL> <BESTSELLER>ja</BESTSELLER> <TENDENZ>steigend</TENDENZ> </AUTOREN>
19 XML Teil 3/3.2.2 Seite 3 Document Type Definition Speichern Sie diese Datei mit der Erweiterung.xml ab. <!ELEMENT AUTOREN (NACHNAME, VORNAME, TITEL, BESTSELLER, TENDENZ)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!ELEMENT TITEL (#PCDATA)> <!ELEMENT BESTSELLER (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)> Der Prolog Von Seiten des W3C wurde darauf hingewiesen, dass jedes XML-Dokument mit einem Prolog beginnen soll. Durch den Prolog werden dem Programm, das das XML-Dokument darstellen soll, einige Informationen über das Dokument geliefert. Es ist nicht vorgeschrieben, dass der Prolog mit Inhalten gefüllt sein muss. Theoretisch kann er leer sein. Im Normalfall sollte er aber zumindest dieser Form entsprechen: <?xml version= 1.0?> Durch diese Syntax wird mitgeteilt, dass es sich um ein XML-Dokument handelt, das sich an die Vorschriften der Version 1.0 der XML-Spezifikation hält. Zum jetzigen Zeitpunkt muss hier die Nummer 1.0 notiert werden. Ob in Zukunft hier die Versionsnummer 2.0 steht, wurde vom W3C offen gelassen. Um die Art der Kodierung des Dokuments bekannt geben zu können, muss die Syntax um einen Eintrag erweitert werden, der jedoch immer noch zum Prolog gehört. Kennzeichnung eines XML- Dokuments <?xml version= 1.0 encoding= Zeichensatz?> Durch das Schlüsselwort encoding wird die Definition des Zeichensatzes eingeleitet. Nach dem Gleichheitszeichen wird in Anführungszeichen der zu verwendende Zeichensatz notiert. Mehr zu diesem Thema erfahren Sie im Abschnitt über den Zeichensatz in XML-Dokumenten. 15
20 Teil 3/3.2.2 Seite 4 XML Document Type Definition Zusätzlich gehört zu einem Prolog die Document Type Definition. Wie im zugehörigen Abschnitt erläutert, gibt es zwei Möglichkeiten, diese zu definieren. Die folgende Syntax zeigt einen Prolog, der einen Verweis auf eine externe DTD enthält. Die zuvor dargestellten Prologe beziehen sich, mangels DTD immer auf ein wohlgeformtes Dokument. Um ein gültiges XML-Dokument zu schreiben, muss diesem eine DTD zugewiesen werden. <?xml version="1.0" encoding= ISO ?> <!DOCTYPE AUTOREN SYSTEM extern.dtd > Umfangreicherer Quellcode Wird die DTD direkt in das Dokument eingebunden, vergrößert sich der Umfang des Prologs. Das folgende Beispiel zeigt einen Prolog, der aufgrund der eingebetteten DTD auf den ersten Blick relativ unübersichtlich wirkt. <?xml version="1.0" encoding= ISO ?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (NACHNAME, VORNAME, TITEL, BESTSELLER, PREIS, TENDENZ)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!ELEMENT TITEL (#PCDATA)> <!ELEMENT BESTSELLER (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)> ]> Dieses Beispiel zeigt einen vollständigen Prolog, der ein gültiges XML-Dokument beschreibt. Die folgenden Eigenschaften sollte demnach ein Prolog beinhalten: Versionsnummer, Zeichensatz. Bei einem gültigen Dokument muss zudem eine DTD vorhanden sein. Kommentare Übersichtlichkeit erhöhen Um die Übersichtlichkeit auch bei einer umfangreichen DTD gewährleisten zu können, ist es ratsam, Kommentare einzufügen.
21 XML Teil 3/3.2.2 Seite 5 Document Type Definition Diese Möglichkeit steht bei allen Sprachen zur Verfügung und ist in erster Linie als Programmierhilfe gedacht. Wird eine DTD erstellt, können Sie durch das Einfügen eines Kommentars einem anderen Programmierer mitteilen, warum und wie die Document Type Definition in dieser Form geschrieben wurde. Die Syntax eines Kommentars stellt sich immer auf die folgende Art dar. Die Schreibweise ist mit der aus HTML identisch. <!- -Inhalt des Kommentars - -> Sie können Kommentare über mehrere Zeilen schreiben, ohne die neue Zeile erneut über <! - - einleiten zu müssen. Ebenso ist das Einfügen eines Kommentars zwischen dem Start- und Endtag möglich. Diese Aussage soll das folgende Beispiel zeigen: <AUTOR>Bret Easton Ellis<!- -bislang fünf veröffentlichte Bücher - -></AUTOR> Wichtig bei dieser Vorgehensweise ist nur, dass ein Kommentar nicht direkt in einen Tag geschrieben wird. Die folgende Verwendung eines Kommentars wäre demnach nicht korrekt: <AUTOR <!- -bislang fünf veröffentlichte Bücher - ->>Bret Easton Ellis</AUTOR> Stößt der Parser beim Bearbeiten des XML-Dokuments auf diese Syntax, würde er feststellen, dass der Anfangstag nicht mit dem Schlusstag übereinstimmt. Dieser Umstand führt dazu, dass die Verarbeitung des Dokuments an dieser Stelle abgebrochen und eine Fehlermeldung ausgegeben wird. Das folgende Beispiel zeigt eine Document Type Definition die unter Zuhilfenahme von Kommentaren übersichtlicher gestaltet wurde. Durch diese Praxis wird auch anderen Programmierern der Einstieg in den Quelltext der Seite erleichtert und ein effizienteres Arbeiten ermöglicht. Kommentare und DTD 15
22 Teil 3/3.2.2 Seite 6 XML Document Type Definition <!- - Buchprojekt - -> <!- - Inhalte der Datenbank- -> <!ELEMENT AUTOREN (NACHNAME, VORNAME, TITEL, BESTSELLER, TENDENZ)> <!- - Angaben zum Autor- -> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!- - Verlagsinterne Angelegenheiten- -> <!ELEMENT TITEL (#PCDATA)> <!ELEMENT BESTSELLER (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)>
23 XML Teil 3/3.2.3 Seite 1 Elementdeklaration 3/3.2.3 Elementdeklaration Es wird zwischen zwei verschiedenen Arten von Elementen unterschieden: Elemente mit und ohne Inhalt. Beide Varianten stehen auch in HTML zur Verfügung. So ist z.b. die folgende Syntax ein Element, dem ein Inhalt zugewiesen wurde: Unterscheidungskriterien <i>hier steht kursiver Text</i> Dieses Beispiel zeigt, wie das Element <i> mit dem Inhalt Hier steht kursiver Text gefüllt wurde. Solche Elemente besitzen immer einen Start- und einen Endtag. Leere Elemente existieren ebenfalls in HTML. Ein einfaches Beispiel soll diesen Aspekt verdeutlichen. <img src= Bild.gif > Dies ist die übliche Vorgehensweise, um eine Grafik in einem HTML-Dokument referenzieren zu können. In XML hingegen werden leere Elemente anders ausgezeichnet, wobei z.b. für die Anweisung <img src> zwei unterschiedliche Varianten existieren. <img src= Bild.gif /> <img src= Bild.gif ></img> Beide Anweisungen wurden in der XML-Spezifikation als zulässig erklärt. Im Anschluss an diesen Abschnitt wird auf die unterschiedlichen Arten der Elemente näher eingegangen. Um innerhalb von XML ein Element zu kennzeichnen, existiert das Schlüsselwort ELEMENT. Es wird immer innerhalb folgender Syntax eingesetzt: ELEMENT <!ELEMENT name> 15
24 Teil 3/3.2.3 Seite 2 XML Elementdeklaration Ein Buchstabe zu Beginn Nach dem Schlüsselwort ELEMENT wird die entsprechende Auszeichnung durch das Vergeben eines Namens exakt beschrieben. Hier existiert allerdings eine Einschränkung. Als erstes Zeichen muss der Name einen Buchstaben enthalten. Ziffern und Ähnliches führen zu einer Fehlermeldung. Zudem sollte der Name in kurzer und verständlicher Form gewählt werden. Bei der Beachtung dieser beiden Punkte kann die Fehleranfälligkeit des Dokuments gemindert werden. #PCDATA Inhaltsangaben Um festlegen zu können, von welcher Art der Inhalt eines Elements beschaffen sein soll, muss zusätzlich zu der zuvor dargestellten Syntax das Schlüsselwort #PCDATA wie folgt integriert werden: <!ELEMENT name (#PCDATA)> Parsed Character Data Über PCDATA (Parsed Character Data) wird dem jeweiligen Programm mitgeteilt, dass der Inhalt des Elements nur aus Zeichen besteht. So können innerhalb eines hierdurch ausgezeichneten Elements zwar Buchstaben, Ziffern usw., aber keine Grafiken eingesetzt werden. Eine typische Anwendung von PCDATA zeigt das folgende Beispiel. Hier können sämtliche Elemente sowohl aus normalem Text als auch aus Ziffern bestehen. <?xml version="1.0"?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (NACHNAME, VORNAME, TITEL, BESTSELLER, PREIS, TENDENZ)> <!ELEMENT NACHNAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!ELEMENT TITEL (#PCDATA)> <!ELEMENT BESTSELLER (#PCDATA)> <!ELEMENT TENDENZ (#PCDATA)> ]> <AUTOREN>
25 XML Teil 3/3.2.3 Seite 3 Elementdeklaration <NACHNAME>Ellis</NACHNAME> <VORNAME>Bret Easton</VORNAME> <TITEL>American Psycho</TITEL> <BESTSELLER>ja</BESTSELLER> <TENDENZ>55000 steigend</tendenz> </AUTOREN> Bei der Verwendung von PCDATA ist auf eine korrekte Syntax zu achten. Der Grund ist, dass die durch PCDATA gekennzeichneten Inhalte vom Parser überprüft werden. Werden Verstöße festgestellt, wird die Verarbeitung des Dokuments gestoppt und eine Fehlermeldung ausgegeben. Leere Elemente Leere Elemente kommen in XML ebenso wie im herkömmlichen HTML vor. Der Unterschied besteht darin, dass leere Elemente in XML als solche gekennzeichnet werden müssen. Dieser Punkt gewinnt allerdings nicht nur im Zusammenhang mit XML, sondern auch mit XHTML an Bedeutung. Ein einfaches Beispiel soll die Schreibweisen von XML und XHTML im Gegensatz zu herkömmlichem HTML aufzeigen. Parallelen zu HTML Es folge ein Zeilenumbruch<br> So wurde bislang ein Zeilenumbruch in einer HTML-Datei realisiert. In Hinblick auf XML und XHTML würde in diesem Beispiel ein Syntaxfehler vorliegen. Korrekt definiert sieht das Beispiel folgendermaßen aus: Es folge ein Zeilenumbruch<br/> Im Gegensatz zu XHTML muss in einer XML-Datei das leere Element in der Elementdeklaration als solches beschrieben werden. Wird dieser Weg nicht eingehalten und stößt der Parser auf ein solches Element, bricht er die Verarbeitung der Datei ab. 15
26 Teil 3/3.2.3 Seite 4 XML Elementdeklaration <!ELEMENT inhalt EMPTY> EMPTY Hinter dem Schlüsselwort ELEMENT muss dem Element ein eindeutiger Name zugewiesen werden. Hieran schließt sich die Angabe EMPTY. Dieses Wort ist in XML reserviert und weist den Parser darauf hin, dass dieses Element leer ist. <inhalt/> In der eigentlichen XML-Datei muss der Name des Elements aus der Elementdeklaration wie zuvor beschrieben notiert werden. Es ist auf eine völlig konforme Schreibweise zu achten, da XML zwischen Groß- und Kleinschreibung unterscheidet. Abgeschlossen wird das Element durch Schrägstrich. Es ist kein eigener Abschlusstag notwendig. Im folgenden Beispiel soll in die XML-Datei eine Grafik eingebunden werden. Dieser Quelltext muss, damit die Grafik angezeigt werden kann, anders als im Beispiel, einen Verweis auf eine XSL- oder CSS-Datei erhalten. In den entsprechenden Abschnitten wird darauf genauer eingegangen. <?xml version= 1.0?> <!DOCTYPE AUTOREN [ <!ELEMENT grafik EMPTY> ]> <grafik uri= grafik1.gif /> Der Name der einzubindenden Grafik lautet grafik1.gif und befindet sich im gleichen Verzeichnis wie die hier beschriebene XML-Datei. Es sei nochmals darauf hingewiesen, dass der Elementname in beiden Fällen unbedingt die gleiche Schreibweise besitzen muss.
27 XML Teil 3/3.2.3 Seite 5 Elementdeklaration Elemente mit beliebigem Inhalt In der Praxis sollte die hier vorgestellte Variante nur selten eingesetzt werden. Denn der Vorteil von XML in Zusammenhang mit einer Document Type Definition besteht ja gerade darin, Dokumente und deren Inhalte so exakt wie möglich zu beschreiben. Daher macht es keinen Sinn, Elemente zu notieren, deren Inhalte sich beliebig und ohne festgelegte Regeln bestimmen lassen. Der Vollständigkeit halber soll diese Syntax an dieser Stelle aber dennoch vorgestellt werden. Keine exakte Beschreibung <!ELEMENT inhalt ANY> Das Schlüsselwort, um Elemente beliebigen Inhalts definieren zu können, lautet ANY. So wird erreicht, dass die DTD keine festen Regeln für das beschriebene Element enthält. Zur Folge hat dieses Schlüsselwort, dass innerhalb des Elements beliebige Zeichenfolgen, Grafiken usw. notiert werden dürfen. Die folgende Beispielsyntax beschreibt den Einsatz von ANY innerhalb einer XML-Datei mit DTD. ANY <?xml version= 1.0?> <!DOCTYPE AUTOREN [ <!ELEMENT BEISPIEL ANY> ]> <BEISPIEL>beliebiger Inhalt</BEISPIEL> Durch den Einsatz von ANY spielt es keine Rolle, welchen Inhalt das Tag <BEISPIEL> besitzt. Elemente als Inhalt Es gibt verschiedene Varianten, um innerhalb einer DTD festlegen zu können, welche Elemente in der XML-Datei tatsächlich verwendet werden dürfen. Zusätzlich lässt sich hierüber bestimmen, nach welchen Regeln sich besagte Elemente zu richten haben. Für diesen Zweck stehen vier unterschiedliche Möglichkeiten zur Verfügung. 15
28 Teil 3/3.2.3 Seite 6 XML Elementdeklaration Oder-Verknüpfung <!ELEMENT inhalt (element1 element2)> Hierbei handelt es sich um eine Oder-Verknüpfung. Die beiden zur Verfügung stehenden Elemente werden in Klammern gesetzt. Abgetrennt werden die Werte durch einen Querbalken. Wird diese Syntax eingesetzt, kann nur einer der eingefügten Werte verwendet werden. Sollten Sie sich im Vorfeld bereits sicher sein, welche Elemente in welcher Reihenfolge innerhalb der XML-Datei vorkommen sollen, empfiehlt sich der Einsatz folgender Syntax: <!ELEMENT inhalt (element1, element2, element3)> Durch Kommata trennen Die einzelnen Elemente werden zwar auch in Klammern gesetzt, das Abtrennen untereinander geschieht in diesem Fall allerdings durch das Setzen von Kommata. Bei dieser Art der Definition ist zu berücksichtigen, dass den Elementen eine feste Reihenfolge zugewiesen wird. Diese müssen demnach exakt in der Art innerhalb der XML-Datei auftauchen, wie dies in der DTD beschrieben wird. Zudem ist es zwingend notwendig, dass sämtliche Elemente auch tatsächlich Verwendung finden. Eine weitere Möglichkeit besteht darin, den Browser anzuweisen, dass innerhalb eines Elementes sämtliche Zeichen eingesetzt werden können. Dies wird über folgende Syntax realisiert: <!ELEMENT inhalt (#PCDATA element1 element2)*> Um diesen Effekt zu erzielen, muss in Klammern gesetzt zunächst die Anweisung #PCDATA notiert werden. Durch Querbalken getrennt schließen sich hieran die zu verwendenden Elemente an. Nach dem Schließen der Klammer muss zusätzlich ein Indikator vergeben werden. Deren Einsatz und Möglichkeiten stellen wir im nachfolgenden Abschnitt über Indikatoren vor.
29 XML Teil 3/3.2.3 Seite 7 Elementdeklaration Die geeignetsten Ergebnisse lassen sich allerdings durch eine Kombination der zuvor dargestellten Varianten erzielen. Denn bislang waren die festgelegten Strukturen zu statisch und ließen sich somit nur bedingt auf XML-Dokumente anwenden. Angaben kombinieren <!ELEMENT inhalt ((element1 element2), element3)> Durch diese Vorgehensweise bestimmen Sie, dass eines der Elemente, also element1 oder element2, verwendet werdet kann. Das Element element3 muss hingegen Verwendung finden. 15
30 Teil 3/3.2.3 Seite 8 XML Elementdeklaration
31 XML Teil 3/3.2.4 Seite 1 Indikatoren 3/3.2.4 Indikatoren Problematisch in Zusammenhang mit Elementen ist die Frage, wie und an welcher Stelle sie verwendet werden können und sollen. Soll das Element nur einmal vorkommen dürfen? Welche allgemeinen Regeln gelten für das entsprechende Element? Um diese Fragen eindeutig klären zu können, stehen innerhalb von XML Indikatoren zur Verfügung. Mit dem Einsatz eines oder mehrerer Indikatoren in der Document Type Definition können die zuvor aufgeführten Probleme bezüglich des Dokuments gelöst werden. Elementeinsatz beschreiben Der Indikator? Der Indikator, der den wenigsten Einschränkungen unterliegt, wird durch ein Fragezeichen gekennzeichnet. Durch ihn ist es möglich, die häufig recht strengen Regeln der DTD aufzubrechen und somit effizienter und weniger fehleranfällig XML-Dokumente zu erstellen. Kaum Einschränkungen <!DOCTYPE ELLIS [ <!ELEMENT ELLIS (PSYCHO?, GLAMORAMA?, NULL?, INFORMANTEN?)> <!ELEMENT PSYCHO (#PCDATA)> <!ELEMENT GLAMORAMA (#PCDATA)> <!ELEMENT NULL (#PCDATA)> <!ELEMENT INFORMANTEN (#PCDATA)> ]> Innerhalb der Elementdeklaration wird hinter den Elementnamen jeweils das den Indikator beschreibende Fragezeichen notiert. Die hierdurch ausgezeichneten Elemente unterliegen nur einer einzigen Einschränkung. Sie dürfen innerhalb der XML-Datei nur je einmal definiert sein. Ansonsten können alle oder nur einige, und das in beliebiger Reihenfolge, in der Syntax vorkommen. 15
32 Teil 3/3.2.4 Seite 2 XML Indikatoren Der Indikator * Keine Einschränkungen Ohne jegliche Einschränkungen lässt sich ein XML-Dokument durch den Einsatz des Indikators * realisieren. Bei dieser Variante steht es frei, ob die in der DTD so gekennzeichneten Elemente auch im Dokument verwendet werden. In der folgenden Beispielsyntax wurden vier Elemente definiert. <!DOCTYPE ELLIS [ <!ELEMENT ELLIS (PSYCHO*, GLAMORAMA*, NULL*, INFORMANTEN*)> <!ELEMENT PSYCHO (#PCDATA)> <!ELEMENT GLAMORAMA (#PCDATA)> <!ELEMENT NULL (#PCDATA)> <!ELEMENT INFORMANTEN (#PCDATA)> ]> Jedem der hier festgelegten Elemente wurde der Indikator * zugewiesen. Der Vorteil gegenüber dem Indikator? besteht darin, dass Elemente mehrmals eingesetzt werden können. Der Indikator + Viele Einschränkungen Der Indikator, der den meisten Einschränkungen unterliegt, soll an dieser Stelle vorgestellt werden. Beim Einsatz des Indikators + muss das hierdurch ausgezeichnete Element im XML-Dokument tatsächlich vorkommen. Vier Elemente werden im folgenden Beispiel definiert, die alle mittels des Indikators + ausgezeichnet sind. <!DOCTYPE ELLIS [ <!ELEMENT ELLIS (PSYCHO+, GLAMORAMA+, NULL+, INFORMANTEN+)> <!ELEMENT PSYCHO (#PCDATA)> <!ELEMENT GLAMORAMA (#PCDATA)> <!ELEMENT NULL (#PCDATA)> <!ELEMENT INFORMANTEN (#PCDATA)> ]> Der Vorteil liegt darin, dass definierte Elemente innerhalb der XML-Datei mehrmals vorkommen dürfen.
33 XML Teil 3/3.2.5 Seite 1 Attributdeklaration 3/3.2.5 Attributdeklaration Attribute verwenden Attribute kennen Sie bereits aus HTML. Sie dienen der Definition oder Verfeinerung von Tags. Innerhalb von XML dienen Attribute dem gleichen Zweck. Bei deren Verwendung ist jedoch auf einige Besonderheiten zu achten. Die allgemein gültige Attributdeklaration stellt sich wie folgt dar: Tags verfeinern <!ATTLIST ELEMENT Attributname (Attributwert) Option> Das Schlüsselwort lautet ATTLIST. Hieran schließt sich der Name des Elements an, für das das Attribut eingesetzt werden soll. Es folgt der Attributname. In Klammern muss der Wert des Attributs gesetzt werden. Die Option des Attributs schließt die Definition ab. Attribute nicht zwingend notwendig Innerhalb von HTML existieren Attribute, die zwar definiert werden können, aber nicht zwingend notwendig sind. So muss z.b. innerhalb des <img>-tags das Attribut src gesetzt sein, auf eine Höhenangabe durch das Attribut hight kann hingegen verzichtet werden. Dieser Aspekt muss innerhalb einer XML-Datei speziell beschrieben werden. Für diesen Zweck steht das Schlüsselwort #IMPLIED zur Verfügung. Beim Einsatz dieses Worts muss der Quellcode wie folgt modifiziert werden: #IMPLIED <!ATTLIST ELEMENT ATTRIBUTNAME (Attributwert)#IMPLIED> Wird #IMPLIED eingesetzt, steht es Ihnen frei, ob Sie das Attribut auch tatsächlich verwenden. Dieser Aspekt kann besonders in Bezug auf mögliche Erweiterungen oder Änderungen am XML-Dokument von Bedeutung sein. 15
34 Teil 3/3.2.5 Seite 2 XML Attributdeklaration Nachfolgend wird für das Tag <AUTOR> das Attribut neu verwendet. Als Attributwert soll ja eingesetzt werden. Beispiel <?xml version= 1.0?> <!DOCTYPE BUCH [ <!ELEMENT BUCH (AUTOR)> <!ELEMENT AUTOR (#PCDATA)> <!ATTLIST AUTOR neu (ja)# IMPLIED> ]> <BUCH> <AUTOR neu= ja >Das Buch ist neu</autor> </BUCH> Das vorgegebene Ziel muss zunächst in der DTD durch die Zeile <!ATTLIST AUTOR neu (ja) #IMPLIED> definiert werden. Die Verwendung des Attributs wird in der eigentlichen XML-Datei beschrieben. Dies geschieht über <AUTOR neu= ja >. Beim Schließen des <AUTOR>-Tags ist darauf zu achten, dass nur das Tag und nicht das Attribut geschlossen werden muss. Attribut ist zwingend notwendig #REQUIRED Ähnlich wie in HTML gibt es auch innerhalb einer XML- Datei Attribute, die in einem Tag unbedingt vorkommen müssen, z.b. das aus HTML bekannte <img>-tag. Innerhalb dessen muss, um die Grafik anzeigen zu können, das Attribut src verwendet werden. Dazu steht innerhalb von XML ein Schlüsselwort zur Verfügung. Mit diesem wird angegeben, dass das entsprechende Attribut, das in der DTD definiert wurde, auch verwendet werden muss. <!ATTLIST ELEMENT Attributname (Attributwert) #REQUIRED> Zunächst muss die übliche Syntax der Attributdeklaration verwendet werden. Der einzige Unterschied besteht im Schlüsselwort REQUIRED. Ein durch dieses Wort ausgezeichnetes Attribut muss in der XML-Datei dann auch tatsächlich vorkommen.
35 XML Teil 3/3.2.5 Seite 3 Attributdeklaration Ist dies nicht der Fall, wird die Verarbeitung des Dokuments abgebrochen und eine Fehlermeldung ausgegeben. Im folgenden Beispiel wird das Attribut Glamorama eingesetzt. Dieses muss, da das Schlüsselwort REQUIRED verwendet wird, im XML-Dokument tatsächlich erscheinen. <?xml version="1.0"?> <!DOCTYPE ELLIS [ <!ELEMENT ELLIS (BRET)> <!ELEMENT BRET (#PCDATA)> <!ATTLIST BRET glamorama (bestseller) #REQUIRED> ]> <ELLIS> <BRET Glamorama="bestseller">Der Nachfolger von American Psycho</BRET> </ELLIS> Es ist möglich, innerhalb einer XML-Datei die Schlüsselwörter #REQUIRED und #IMPLIED gleichermaßen zu verwenden. Für ein und dasselbe Attribut dürfen diese beiden Wörter allerdings nicht miteinander kombiniert werden. Mehrere Werte für ein Attribut Es kann sinnvoll sein, für ein bestehendes Attribut mehrere Parameter zu definieren. Es bestehen bei dieser Variante keinerlei Einschränkungen, wie viele verschiedene Parameter innerhalb der Attributdeklaration vorkommen dürfen. Der Einsatzgrund mehrerer Werte kann z.b. die Verminderung der Fehleranfälligkeit eines XML-Dokuments sein. So lassen sich mehrere Schreibweisen eines Attributs parallel innerhalb der Attributdeklaration notieren. Aber auch eine Zeitersparnis lässt sich hierdurch erzielen. Können Sie doch durch die hier vorgestellte Syntax Abkürzungen für lange Parameternamen realisieren. <!ATTLIST ELEMENT Attributname (wert wert)> 15
36 Teil 3/3.2.5 Seite 4 XML Attributdeklaration Fehlereindämmung Innerhalb der Attributdeklaration müssen die unterschiedlichen Parameter in Klammern gesetzt werden. Abgetrennt voneinander werden sie durch einen senkrechten Strich. Diese Syntax muss auch dann in dieser Form Verwendung finden, wenn innerhalb der Klammern mehr als zwei mögliche Parameter eingesetzt wurden. Im folgenden Beispiel soll für das Attribut Glamorama der Wert bestseller vergeben werden. Um möglichen Schreibfehlern vorzubeugen, soll zusätzlich der Wert BESTSELLER notiert werden. Bezüglich einer schnelleren Definition der XML-Datei soll die Abkürzung b ebenfalls einsetzbar sein. <?xml version="1.0"?> <!DOCTYPE ELLIS [ <!ELEMENT ELLIS (BRET)> <!ELEMENT BRET (#PCDATA)> <!ATTLIST BRET glamorama (bestseller BESTSELLER b) #IMPLIED> ]> <ELLIS> <BRET Glamorama="bb">Der Nachfolger von American Psycho</BRET> </ELLIS> In diesem Beispiel ist es dem Programmierer freigestellt, ob er die Groß- oder Kleinschreibung des Parameters Bestseller verwendet. Eine weitere Möglichkeit besteht darin, die Zeit sparende Abkürzung b einzusetzen. Sie können innerhalb einer Definition mehrerer Parameter einen Wert angeben, der immer dann Verwendung finden soll, wenn im XML-Dokument nichts Spezielles angegeben wird. Der Einsatz dieser Variante wird anhand folgender Zeile erkennbar: <!ATTLIST BRET glamorama (Bestseller bestseller b)b #IMPLIED> Wird im XML-Dokument nichts anderes angegeben, verwendet das entsprechende Programm immer den Wert, der hinter der geschlossenen Klammer notiert wurde. In diesem Beispiel demnach b.
37 XML Teil 3/3.2.5 Seite 5 Attributdeklaration Attributtypen Über das Festlegen eines bestimmten Attributtyps bestimmen Sie, welchen Inhalt ein Element besitzen bzw. zu welchem Zweck es eingesetzt werden darf. Sechs verschiedene Typen stehen hierbei zur Verfügung. CDATA Diese Attributtypen haben wir bislang am häufigsten bei der Darstellung von Beispielen eingesetzt. Dieser Punkt spiegelt sich so auch in der Praxis wider. Attribute, die durch den Zusatz CDATA ausgezeichnet wurden, können aus einer beliebigen Zeichenfolge bestehen. Beliebige Zeichen <!ATTLIST BRET glamorama (Bestseller) CDATA #IMPLIED> Der Inhalt des Attributs kann in diesem Beispiel aus Buchstaben, Ziffern, Interpunktions- und sogar Sonderzeichen bestehen. Notationsattribute Auf diese Attributtypen wird im Laufe des nächsten Kapitels noch genauer eingegangen. Dienlich sind diese vor allem, um auf andere Dateien zugreifen zu können. Hierbei spricht man von der Notationsdeklaration, zu der in jedem Fall ein Notationsattribut definiert werden muss. <!ATTLIST BRET glamorama (Bestseller) NOTATION> In diesem Beispiel wurde zwar das Notationsattribut festgelegt, die Notationsdeklaration fehlt allerdings. Auf deren Besonderheiten und Syntax gehen wir in dem entsprechenden Kapitel noch genauer ein. 15
38 Teil 3/3.2.5 Seite 6 XML Attributdeklaration Namenstoken-Attribute Nicht verwenden Auf die Angabe dieses Attributtyps sollte in der Praxis weitestgehend verzichtet werden. Es handelt sich um den nahezu identischen Attributtyp wie bei CDATA. Der einzige Unterschied besteht darin, dass Sie bei der Verwendung eines Namenstoken-Attributs gewissen Einschränkungen unterliegen. Sinnvoll ist der Einsatz dieses Typs nur in Zusammenhang mit numerischen Angaben. Also z.b. bei kaufmännischen Datenbanken oder Datumsangaben. <!ATTLIST PREIS aktuell (DM EURO) NMTOKEN> In diesem Beispiel soll ein Preis ausgegeben werden. Innerhalb des Attributs sind durch den Zusatz NMTOKEN Buchstaben, Ziffern, Gedankenstriche, Unterstriche und Doppelpunkte erlaubt. #ID-Attribute Für Hyperlinks In Zusammenhang mit Hyperlinks in XML kommen ID- Attribute zum Einsatz. Hierdurch ist es möglich, einem Element einen eindeutigen Namen zuzuweisen. Anhand dessen kann in einem XML-Dokument ein Verweis realisiert werden. Zunächst muss innerhalb der Document Type Definition folgende Syntax notiert werden: <!ATTLIST verweis zu ID> In der eigentlichen XML-Datei muss ein Hyperlink definiert werden, der sich auf die zugewiesene ID bezieht. Für dieses Beispiel würde sich die Syntax folgendermaßen darstellen: <verweis zu= Bret ></verweis>
39 XML Teil 3/3.2.5 Seite 7 Attributdeklaration Es ist explizit darauf zu achten, dass die Schreibweise des zugewiesenen Namens in der DTD exakt mit der im XML- Dokument übereinstimmt. IDREF-Attribute In Zusammenhang mit einem ID muss gleichzeitig ein IDREF-Attribut Verwendung finden. Erst hierdurch wird die Attributdeklaration, die durch ID eingeleitet wurde, tatsächlich abgeschlossen. Das folgende Beispiel soll den Einsatz dieses Attributs verdeutlichen: <!ATTLIST verweis zu IDREF> Die Syntax stellt sich beinahe identisch mit der des ID-Attributs dar. Lediglich das Schlüsselwort wird hierbei durch IDREF ausgetauscht. 15
40 Teil 3/3.2.5 Seite 8 XML Attributdeklaration
41 XML Teil 3/3.2.6 Seite 1 Notationsdeklaration 3/3.2.6 Notationsdeklaration Sie haben die Möglichkeit, aus einem XML-Dokument heraus beliebige Dateien aufzurufen. Es spielt dabei keine Rolle, ob es sich um eine Grafik, ein Video oder ein Word- Dokument handelt. Wichtig ist nur, dass auf der jeweiligen Plattform das entsprechende Programm zum Öffnen dieser Dateien vorhanden ist. Um den hier beschriebenen Effekt erzielen zu können, sind drei Schritte notwendig, die erst durch Kombination zum gewünschten Ergebnis führen. Dieser Aspekt wird anhand eines Beispiels erläutert. Es soll ein Word- Dokument aus einer XML-Datei heraus aufgerufen werden. Hierfür ist es notwendig, dass der genaue Pfad der Word- Anwendung bekannt ist. Im folgenden Beispiel soll das XML-Dokument auf der eigenen Festplatte gespeichert sein, und zwar im gleichen Verzeichnis wie die Datei word.exe. Zunächst wird die Notationsdeklaration definiert. <!NOTATION doc SYSTEM word.exe > Dateiaufrufe realisieren NOTATION Nach dem Schlüsselwort NOTATION, durch das die Notationsdeklaration eingeleitet wird, folgt ein frei wählbarer Name. Hinter dem Schlüsselwort SYSTEM wird der Ort des Anwendungsprogramms, durch das die Datei geöffnet werden soll, notiert. Im folgenden Schritt wird ein Attribut definiert, mit dessen Hilfe ein Zusammenhang zur Notationsdeklaration hergestellt werden soll. <!ATTLIST Anwendung word NOTATION> Zum Abschluss muss die folgende Zeile notiert werden. Erst hierdurch kann das Word-Dokument auch tatsächlich aufgerufen werden. <Anwendung word= doc ></Anwendung> 15
42 Teil 3/3.2.6 Seite 2 XML Notationsdeklaration Die gleichen Schritte müssen nun für die darzustellende Word-Datei vorgenommen werden. Die Syntax sei hier nochmals kurz aufgeführt. Der Name der Word-Datei lautet hallo.doc und befindet sich im gleichen Verzeichnis wie die XML- und die word.exe-datei. Zunächst muss die Notationsdeklaration notiert werden. <!NOTATION WORD SYSTEM hallo.doc > Hieran schließt sich die Attributdeklaration an. Hier muss für die Word-Datei ein eindeutiger Name mit dazugehörigem Attribut vergeben werden. <!ATTLIST Dokument auf NOTATION> Inwieweit diese Varianten in Zukunft unterstützt werden, steht bis zum jetzigen Zeitpunkt noch nicht fest. Sie sind aber fester Bestandteil der XML-Spezifikation und dürften daher in Kürze einsetzbar sein.
43 XML Teil 3/3.2.7 Seite 1 Dokumente wohlgeformt und gültig 3/3.2.7 Dokumente wohlgeformt und gültig Es existieren zwei Varianten von Dokumenttypen in XML: wohlgeformte und gültige. Soll ein gültiges Dokument eingesetzt werden, muss in diesem eine DTD vorhanden sein. Des Weiteren müssen die Inhalte des Dokuments mit den in der DTD beschriebenen exakt übereinstimmen. Gültige Dokumente <?xml version= 1.0?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (ELLIS)> <!ELEMENT ELLIS (#PCDATA)> ]> <AUTOREN> <ELLIS>Glamorama</ELLIS> </AUTOREN> In diesem Beispiel handelt es sich um ein gültiges Dokument. Es besitzt eine DTD, zudem die in der DTD festgelegten Tags <AUTOREN> und <ELLIS> im Dokument verwendet wurden. Das folgende Beispiel zeigt, um diesen Aspekt zu verdeutlichen, ein nicht gültiges Dokument. Nicht gültige Dokumente <?xml version= 1.0?> <!DOCTYPE AUTOREN [ <!ELEMENT AUTOREN (ELLIS)> <!ELEMENT ELLIS (#PCDATA)> ]> <AUTOREN>Unser Autor</AUTOREN> <ELLIS>Glamorama</ELLIS> 15
44 Teil 3/3.2.7 Seite 2 XML Dokumente wohlgeformt und gültig In der DTD wurde das Dokument folgendermaßen beschrieben. Es kommt das Wurzelement <AUTOREN> vor, das das Untertag <ELLIS> enthält. Im eigentlichen Dokument wird das Tag <AUTOREN> jedoch noch vor dem Untertag <ELLIS> geschlossen. Wohlgeformte Dokumente In einem wohlgeformten Dokument wird keine DTD definiert. <?xml version= 1.0?> <AUTOREN> <ELLIS>Glamorama</ELLIS> </AUTOREN> Das Beispiel zeigt ein typisches wohlgeformtes Dokument. Die beiden Tags <AUTOREN> und <ELLIS> kommen im Dokument vor, wurden aber nicht in der DTD definiert. Auswahlkriterien gültig oder wohlgeformt Auf welche der beiden zuvor vorgestellten Varianten Sie zurückgreifen, liegt allein in Ihrem Ermessen. Es gibt keinerlei Vorschriften, ob gültige oder wohlgeformte Dokumente Verwendung finden sollen. Aus der Erfahrung können wir Folgendes sagen: Bei umfangreichen Projekten sollte immer ein gültiges Dokument eingesetzt werden. Denn obwohl Dokumente durch den Einsatz einer DTD umfangreicher werden, hilft die DTD bei auftretenden Problemen. So lässt sich z.b. auf einen Blick erkennen, welche Tags verwendet wurden und welche allgemeine Struktur das Dokument besitzt. Sollen nur kleinere XML-Dokumente erstellt werden, ist der Einsatz von wohlgeformten Dokumenten zu empfehlen. Wird doch durch den Verzicht auf eine DTD der Umfang des Dokuments verringert. Ein weiteres Auswahlkriterium ist die leichtere Handhabung wohlgeformter Dokumente. Gerade XML-Neueinsteiger sollten zu Beginn auf diese Variante zurückgreifen, da sich der Quellcode ohne DTD übersichtlicher gestaltet und leichter nachvollziehbar ist.
45 XML Teil 3/3.3.1 Seite 1 Einfache Links 3/3.3 XLink Hyperlinks Es handelt sich bei XLink nicht um einen Teil von XML, sondern um eine eigene Sprache. Die XML Linking Language wurde speziell für den Zweck entwickelt, den in XML fehlenden Möglichkeiten, Hyperlinks einsetzen zu können, entgegenzuwirken. Zwar wurden die in diesem Abschnitt vorgestellten Variationen vom W3C noch nicht endgültig verabschiedet, Grundlegendes wird sich allerdings an der Xlink-Spezifikation nicht mehr verändern. XML Linking Language 3/3.3.1 Einfache Links In der Praxis lassen sich derzeit lediglich einfache Links umsetzen. Aus diesem Grund soll diesen auch unser Hauptaugenmerk gewidmet werden. Syntax Im Gegensatz zu Hyperlinks in HTML bietet XLink weitaus mehr Variationen. Die Anwendung eines einfachen Hyperlinks weist dennoch einige Gemeinsamkeiten mit denen in HTML auf. Zunächst muss jedoch ein wichtiger Begriff erläutert werden. Innerhalb dieses Abschnitts wird häufig das Wort URI auftauchen. Wird im Umfeld von XML der Name URL verwendet, ist dies in der Regel falsch. Es handelt sich hierbei in Wahrheit um einen URI (Uniform Resource Identifier). Der Unterschied zwischen einer URL und einer URI ist auf den ersten Blick nicht zu erkennen. Hauptgrund für die Unterscheidung beider Begriffe ist, dass eine URI in Zukunft flexibler auf Veränderungen der Adressierungen im Internet eingehen kann. Uniform Resource Identifier <element xml:link= simple href= Verweisziel >Verweistext</element> 15
46 Teil 3/3.3.1 Seite 2 XML Einfache Links xml:link="simple" Zunächst muss der Elementname vergeben werden, in welchem der Hyperlink definiert werden soll. Hieran schließt sich die Angabe xml:link="simple" an. Diese suggeriert dem Browser, dass es sich bei dem Hyperlink um einen einfachen handelt. Hieran schließt sich die aus HTML bekannte Angabe href, gefolgt von dem eigentlichen Verweisziel, an. Nach dem Verweistext muss das Element geschlossen werden. Das folgende Beispiel zeigt eine typische Anwendung für einen einfachen Hyperlink in XML. Es soll auf die Internetadresse der Zeitschrift Focus verwiesen werden. Auf diese Tatsache wird durch einen Hinweistext aufmerksam gemacht. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= index.htm>interessante Seite Focus.de</VERWEIS> </NAME> Dieses Beispiel ist zwar völlig korrekt, kann in dieser Form allerdings nicht nachvollzogen werden. Die Datei wird im Browser als Dokumentstrukturbaum dargestellt. Das Anklicken des Verweises ist hierbei nicht möglich. Für diesen Zweck muss die Ausgabe der Datei durch die Extensible Stylesheet Language realisiert werden. Auf diesen Punkt wird an späterer Stelle eingegangen. Verweise auf XML-Dateien Hyperlink- Gedanken erhalten Wichtig im Umgang mit XML-Dokumenten ist, dass diese auch untereinander verlinkt werden können. Nur hierdurch kann das Grundprinzip des Hypertextes auch in XML erhalten bleiben. Die Syntax ist mit der identisch, die auch beim Verweisen von einem XML- auf ein HTML-Dokument angewandt wird. Der einzige Unterschied besteht in der Art des Ziels. Dieses ist hier eine XML-Datei. <element xml:link= simple href= Verweisziel >Verweistext</element>
47 XML Teil 3/3.3.1 Seite 3 Einfache Links Der Name des Elements muss eindeutig vergeben sein. Hieran schließt sich die Angabe an, dass es sich um einen einfachen Hyperlink handelt. Diese Tatsache wird durch die Syntax xl:link="simple" beschrieben. Nach dem Attribut href wird, wenn es sich um eine absolute Pfadangabe handelt, das Protokoll notiert. Es wird hierbei das Hypertext Transfer Protocol (kurz: HTTP) verwendet. Nach der Vergabe eines Hinweistextes muss das Element geschlossen werden. Hypertext Transfer Protocol Im folgenden Beispiel soll auf die Datei test.xml verwiesen werden. Diese befindet sich in dem gleichen Verzeichnis wie die Beispieldatei. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= test.xml >Eine Seite über XML</VERWEIS> </NAME> Bei der Vergabe der Pfade sind dieselben Regeln zu beachten wie beim Setzen von Verweisen in HTML. Es wird zwischen absoluten und relativen Pfadangaben unterschieden. -Verweise Das Setzen eines Verweises auf eine -Adresse ist innerhalb von XLink problematisch. Der Grund hierfür ist, dass für dieses Feature bislang keine Syntax für den Einsatz in XML-Dokumenten entwickelt worden ist. Unter Zuhilfenahme eines kleinen Tricks lässt sich aber auch ein solcher Verweis realisieren. Hierfür wird die Fähigkeit der Browser genutzt, die Angabe mailto zu interpretieren und das installierte -Programm beim Betätigen des Hyperlinks zu starten. Diese Vorgehensweise ähnelt der in HTML. Browsermöglichkeiten nutzen 15
48 Teil 3/3.3.1 Seite 4 XML Einfache Links <element xml:link= simple href= MAILTO:Verweisziel >Verweistext</element> href="mailto" Zunächst muss das Element notiert werden, in welchem sich der -Verweis befinden soll. Hieran schließt sich über xml:link="simple" die Angabe an, welche dem Browser mitteilt, dass es sich um einen einfachen Hyperlink handelt. Hinter der Angabe href wird nach dem Gleichheitszeichen die gewünschte -Adresse in Anführungszeichen gesetzt. Danach kann ein frei wählbarer Verweistext eingefügt werden. Zum Abschluss muss das Element wieder geschlossen werden. <?xml Version= 1.0?> <NAME>weitere Informationen</NAME> <VERWEIS xml:link= simple href= MAILTO:[email protected] >Elekronische Post an mich</verweis> </NAME> Großschreibung beachten In diesem Beispiel soll beim Betätigen des Hyperlinks das -Programm gestartet werden. Im Feld an soll die Adresse [email protected] erscheinen. Der Text, welcher auf diese Möglichkeit hinweist, lautet Elektronische Post an mich. Achten Sie darauf, dass das Wort MAILTO innerhalb von XML-Dokumenten stets großgeschrieben wird. Links zu FTP File Transfer Protocol Sie können mittels eines einfachen Links von einem XML- Dokument aus auf einen FTP-Server verweisen. Auch hierbei ist auf das korrekte Angeben des Protokolls zu achten. Wird auf einen FTP-Dienst verwiesen, darf nicht das Hypertext Transfer Protocol verwendet werden. Vielmehr müssen Sie in einem solchen Fall auf das File Transfer Protocol (kurz: FTP) zurückgreifen. <element xml:link= simple href= ftp://verweisziel >Verweistext</element>
49 XML Teil 3/3.3.1 Seite 5 Einfache Links Wurde dem Element, welchem ein Hyperlink zugewiesen werden soll, ein Name gegeben, muss zunächst durch die Angabe xml:link="simple" bekannt gegeben werden, dass es sich um einen einfachen Link handelt. Über das Attribut href wird das Angeben des Verweisziels eingeleitet. Nach dem Gleichheitszeichen müssen der Name und die Datei des FTP-Servers in Anführungszeichen gesetzt notiert werden. Um dem Browser mitteilen zu können, dass es sich bei dem Verweisziel um einen FTP-Server handelt, muss die Angabe ftp notiert werden. Ein Beispiel, wie ein FTP-Server angesprochen werden muss, zeigt die folgende Syntax: href="ftp" <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href=ftp://ftp.bentley.com>interessante Seite (FTP)</VERWEIS> </NAME> Hier wird auf die Adresse ftp://ftp.bentley.com verwiesen. Bei Verweisen mittels File Transfer Protocol sollte stets ein diesbezüglicher Hinweistext notiert werden, da das FTP- Protokoll in den meisten Fällen langsamer als das HTTP- Protokoll ist. Links zu Gopher Um einen Hyperlink zu dem Dienst Gopher in ein XML- Dokument einbinden zu können, wird ebenfalls ein einfacher Verweis gesetzt. Unterscheiden tut sich dieser nur durch das andere Protokoll, welches hierfür benötigt wird. Es handelt sich dabei nicht um das in den meisten Fällen verwendete Hypertext Transfer Protocol (kurz: HTTP), sondern um Gopher, einen Informationsdienst, der dem WWW in hohem Maße ähnelt, jedoch bei weitem nicht so stark vertreten ist wie dieses. 15
50 Teil 3/3.3.1 Seite 6 XML Einfache Links <element xml:link= simple href= gopher://verweisziel >Verweistext</element> href="gopher" Nachdem ein Elementname vergeben wurde, muss dem Browser zunächst mitgeteilt werden, dass es sich um einen einfachen Link handelt. Die Anweisung hierfür lautet xml:link="simple". Nach der Angabe href muss nach dem Gleichheitszeichen das Protokoll in Anführungszeichen gesetzt eingefügt werden. Im folgenden Beispiel wird auf den Dienst Gopher verwiesen. Die Adresse lautet gopher:// gopher.tc.umn.edu/11. Achten Sie auch hierbei auf das exakte Einhalten der Syntax. Nur dadurch kann bei weiteren Modifikationen von XML und XLink eine Fehlermeldung vermieden werden. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= gopher://gopher.tc.umn.edu/ 11 >Interessante Adressen über Afrika (Gopher)</VERWEIS> </NAME> Der Hinweistext steht zwischen dem öffnenden und schließenden Tag. Weisen Sie den Nutzer darauf hin, dass es sich bei dem Verweisziel um eine Gopher-Adresse handelt. Ist doch dieser Dienst in der Regel langsamer als das WWW. Links zu Newsgroups Soll innerhalb eines XML-Dokuments ein Verweis auf eine Newsgroup realisiert werden, muss die Syntax für diese Aufgabe modifiziert werden. Dem Browser muss mitgeteilt werden, dass sich der Hyperlink auf eine Newsgroup bezieht. Des Weiteren muss er selbstständig ein Programm starten, mit dessen Hilfe es möglich ist, dass der Nutzer sich den Inhalt der entsprechenden Newsgroup ansehen kann.
51 XML Teil 3/3.3.1 Seite 7 Einfache Links <element xml:link= simple href= nntp://verweisziel >Verweistext</element> Dem Element, in welchem der Link stehen soll, muss ein eindeutiger Name zugewiesen werden. Im öffnenden Element-Tag muss zunächst durch xml:link="simple" beschrieben werden, dass es sich um einen einfachen Hyperlink handelt. Nach der Angabe href folgt das Protokoll, mit dessen Hilfe Newsgroups übertragen und angezeigt werden können. Bei diesem handelt es sich um das Network News Transfer Protocol (kurz: NNTP). href="nntp" Im folgenden Beispiel soll auf die Newsgroup comp.text.xml verwiesen werden. Achten Sie darauf, dass die Angabe des NNTP-Servers in Anführungszeichen gesetzt notiert werden muss. Nach dem Verweistext muss das Element wieder geschlossen werden. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= nntp://comp.text.xml >Interessante Neuigkeiten über XML erfahren Sie hier. (Newsgroup)</VERWEIS> </NAME> Bei dieser Art von Verweisen ist es besonders wichtig, den Nutzer darauf hinzuweisen, dass es sich hierbei um einen Hyperlink handelt, der als Ziel eine Newsgroup besitzt. Denn für das Anzeigen der Inhalte von einer Newsgroup müssen zwei Voraussetzungen erfüllt sein: Es muss ein Newsreader beim Nutzer installiert sein, und zusätzlich muss der Nutzer die entsprechende Newsgroup abonniert haben. Erst dann kann er die Inhalte wahrnehmen. 15
52 Teil 3/3.3.1 Seite 8 XML Einfache Links Links auf Telnet href="telnet" Wollen Sie innerhalb einer XML-Datei einen Verweis auf eine Telnet-Adresse setzen, ist dies ebenfalls möglich. Bei dem zu verwendenden Protokoll handelt es sich nicht um HTTP, sondern um Telnet. Dieser Punkt ist wichtig, da das Angeben des korrekten Protokolls die Grundvoraussetzung für das Funktionieren eines Hyperlinks ist. <element xml:link= simple href= telnet://verweisziel >Verweistext</element> Nachdem für das Element, in welchem der Hyperlink definiert wurde, ein eindeutiger Name vergeben worden ist, muss dem Browser durch die Angabe xml:link="simple" mitgeteilt werden, dass es sich um einen einfachen Verweis handelt. Hieran schließt sich das Attribut href an. Das Protokoll Telnet muss gefolgt von dem genauen Ziel angegeben werden. Der Verweistext sollte den Nutzer darauf hinweisen, dass sich der Link auf eine Telnet-Adresse bezieht. Nach dem Text muss das Element geschlossen werden. Das Beispiel zeigt einen Verweis auf eine Telnet-Adresse. Im Verweistext wurde auf diese Tatsache hingewiesen. Der Grund hierfür liegt darin, dass für das Verbinden mit einem Telnet-Dienst spezielle Software benötigt wird, die nicht jeder Nutzer auf seinem Rechner installiert hat. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= telnet://books.com>bestellen Sie ein Buch (Telnet)</VERWEIS> </NAME> In der Regel sollte auf einen solchen Verweis verzichtet werden, da die Nutzung eines Telnet-Dienstes für die meisten Besucher Ihrer Seiten nur schwer nachzuvollziehen ist.
53 XML Teil 3/3.3.1 Seite 9 Einfache Links Links auf andere Dateien Sie haben die Möglichkeit, einen Verweis auf jede Art von Dateien zu setzen. So können beispielsweise Grafiken, Office-Dokumente, Zip-Dateien usw. in der Originalform auf dem Server abgelegt und vom Nutzer angesehen werden. Beim Betätigen eines solchen Verweises wird beim Nutzer entweder ein Programm gestartet, welches die Datei darstellen kann, oder er hat die Möglichkeit, die Datei auf seinem Rechner zu speichern. Programme starten <element xml:link= simple href= >Verweistext</element> Der Verweis wird über die Vergabe eines Elementnamens eingeleitet. Um dem Browser mitteilen zu können, dass es sich um einen einfachen Hyperlink handelt, muss die Angabe xml:link="simple" verwendet werden. Nach dem Attribut href wird das Hypertext Transfer Protocol (kurz: HTTP) angegeben. Hieran schließt sich der genaue Pfad der entsprechenden Datei an. Der Verweistext sollte den Nutzer darauf hinweisen, dass es sich um eine andere Datei als ein XMLoder HTML-Dokument handelt. Sind alle Angaben vollständig, muss das Element geschlossen werden. Viele Internetanbieter stellen Dateien zum Download zur Verfügung. Das folgende Beispiel zeigt, wie dieser Effekt in einem XML-Dokument erzielt werden kann. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= te Seite Focus.de</VERWEIS> </NAME> 15
54 Teil 3/3.3.1 Seite 10 XML Einfache Links Download-Verweise Es gibt keine spezielle Syntax, wie ein Download-Verweis innerhalb von XML realisiert werden kann. Um dies trotzdem erreichen zu können, muss lediglich auf eine Datei verwiesen werden, die in komprimierter Form vorliegt. In diesem Beispiel ist das die Datei alles.zip. Der Browser bietet eine Dialogbox an, wie er mit dieser Datei umgehen soll. Der Nutzer kann die gezippte Datei speichern und somit einen Download realisieren.
55 XML Teil 3/3.3.2 Seite 1 Verhalten von Links steuern 3/3.3.2 Verhalten von Links steuern Die bislang vorgestellten Möglichkeiten, innerhalb von XML Hyperlinks zu integrieren, bezogen sich lediglich auf die Art der Datei, auf die ein Hyperlink gesetzt werden sollte. Das Formatieren von Hyperlinks wird, wie bereits erwähnt, über XSL vorgenommen. Aber auch ohne diese Sprache kann zumindest das Verhalten von Links gesteuert werden. Denn bislang wurde zwar beschrieben, welches Ziel der Hyperlink besitzt, aber z.b. nicht, in welchem Fenster dieses Ziel geöffnet werden soll. In HTML stehen ähnliche Attribute zur Verfügung. So wird hier z.b. über target angegeben, in welchem Fenster das Ziel geöffnet werden soll. Allgemeine Syntax Um zu steuern, wie sich ein Hyperlink beim Anklicken verhalten soll, ist eine zusätzliche Angabe notwendig. Durch weitere Attribute wird das Verhalten genau gesteuert. Es ist allerdings zu berücksichtigen, dass diese Syntax nicht in jedem Fall zum Erfolg führt. Wird z.b. ein -Verweis eingesetzt, wird in jedem Fall das -Programm gestartet. Die Angabe eines Verweisziels wäre hier nicht nötig. Es würde allerdings auch keine Fehlermeldung verursachen. <element xml:link= simple show= Verhalten href= Verweisziel >Verweistext</element> Zunächst muss ein eindeutiger Elementname vergeben werden. Innerhalb dieses Elements wird dem Browser über xml:link="simple" mitgeteilt, dass es sich um einen einfachen Hyperlink handelt. Die Angabe show bestimmt das Verhalten des Links. Die möglichen Attribute werden an dieser Stelle nur kurz aufgelistet und im Laufe des Abschnitts exakt erörtert: new replace embed Mögliche Varianten 15
56 Teil 3/3.3.2 Seite 2 XML Verhalten von Links steuern Über die Angabe href wird die Bestimmung des Verweisziels eingeleitet. Nach dem Gleichheitszeichen muss zunächst das entsprechende Protokoll und anschließend die genaue Pfadangabe in Anführungszeichen gesetzt notiert werden. Neues Fenster öffnen Diese Möglichkeit zur Bestimmung des Verhaltens eines einfachen Hyperlinks ist mit der aus HTML bekannten Angabe target= _blank identisch. Dieses Attribut empfiehlt sich besonders, wenn auf fremde Internetprojekte verwiesen werden soll, da hierdurch der so genannte Schaufenstereffekt vermieden wird. Der Nutzer hat also nicht mehr das Gefühl, dass die entsprechenden Seiten zu einem Internetauftritt gehören. Dieser Aspekt gewinnt zudem an rechtlicher Bedeutung und sollte daher unbedingt berücksichtig werden. <element xml:link= simple show= new href= Verweisziel >Verweistext</element> show="new" Wurde dem Element, in dem der Verweis definiert werden soll, ein eindeutiger Name zugewiesen, muss dem Browser mitgeteilt werden, dass es sich um einen einfachen Hyperlink handelt. Das wird über die Angabe xml:link="simple" erreicht. Hieran schließt sich die Angabe show. Das Attribut, das die Anweisung enthält, das Verweisziel in einem neuen Fenster zu öffnen, lautet new und muss in Anführungszeichen gesetzt werden. Im Anschluss muss das Verweisziel angegeben werden. Dies geschieht nach href. Die Adresse wird stets in Anführungszeichen notiert. Nach dem Einfügen eines Verweistextes muss das Element geschlossen werden. Im folgenden Beispiel soll auf die Datei test.xml verwiesen werden. Diese befindet sich im gleichen Verzeichnis wie die hier dargestellte XML-Datei. Durch Anklicken des Hyperlinks soll erreicht werden, dass sich ein neues Browserfenster öffnet. Achten Sie bei der Angabe new darauf, dass diese kleingeschrieben werden muss.
57 XML Teil 3/3.3.2 Seite 3 Verhalten von Links steuern <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple show= new href= test.xml >weiterführende Informationen</VERWEIS> </NAME> Obwohl in diesem Beispiel auf eine XML-Datei verwiesen wurde, kann das Ziel des Verweises ebenso eine Grafik, eine HTML-Datei usw. sein. Verweise im gleichen Fenster öffnen Werden Verweise auf projektinterne Inhalte gesetzt, sollten sich die zu öffnenden Seiten im Normalfall in ein und demselben Fenster öffnen. Es ist dem Nutzer nicht zuzumuten, dass sich bei jeder Betätigung eines Hyperlinks ein neues Browserfenster öffnet. Bei dieser Art der Zielbestimmung ist zu bedenken, dass nicht jedes Verweisziel geeignet ist. So wird z.b. bei einem Verweis auf eine Newsgroup der Newsreader gestartet. Da es sich hierbei um ein eigenständiges Programm handelt, spielt es keine Rolle, ob eine Angabe bezüglich des Fensters, in dem der Verweis geöffnet werden soll, getätigt wurde. Eine vergleichbare Möglichkeit steht auch in HTML zur Verfügung. Hier handelt es sich um die Angabe target= _self. <element xml:link= simple show= replace href= >Verweistext</element> Zunächst müssen Sie einen eindeutigen Namen für das Element vergeben, in dem ein Hyperlink definiert werden soll. Die Angabe show bestimmt das Verhalten des Hyperlinks. Das Attribut, das den Browser anweist, das Verweisziel im gleichen Fenster zu öffnen, lautet replace und muss in Anführungszeichen gesetzt werden. Das eigentliche Verweisziel wird durch href eingeleitet. Hieran schließt sich nach dem Gleichheitszeichen die genaue Definition des Verweisziels an. Es kann sich dabei um eine absolute oder eine relative Pfadangabe handeln. show="replace" 15
58 Teil 3/3.3.2 Seite 4 XML Verhalten von Links steuern <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple show= replace href= Seite über Sport</VERWEIS> </NAME> Dieses Beispiel zeigt einen absoluten Verweis. Wird der Verweistext angeklickt, öffnet sich die Seite im gleichen Fenster wie die zuvor beschriebene XML-Datei. Dateien einbinden Es besteht die Möglichkeit eine Grafik als Hyperlink in eine Seite zu integrieren. Hierbei handelt es sich um eine XLinkeigene Syntax, die nicht mit der in XML identisch ist. Beim Anklicken eines Verweises wird ein beliebiger Dateityp geöffnet. Einsatzgebiete könnten z.b. eine Download- Möglichkeit oder das Einbinden einer Grafik sein. Die entsprechende Datei wird bei dieser Syntax allerdings nicht direkt ins XML-Dokument eingebunden. Vielmehr wird beim Anklicken des Verweises die Datei geöffnet. Wird z.b. auf eine Grafik verwiesen, wird diese im Browser geöffnet. Diese Variante steht mit dem gleichen Attribut auch innerhalb von HTML zur Verfügung. <element xml:link= simple show= embed href= >Verweistext</element> show="embed" Zunächst muss dem Element, in dem der Hyperlink definiert werden soll, ein eindeutiger Name zugewiesen werden. Im öffnenden Tag muss dem Browser mitgeteilt werden, dass es sich um einen einfachen Link handelt. Dies wird über die Angabe xml:link="simple" realisiert. Das entsprechende Attribut lautet in diesem Fall embed und muss in Anführungszeichen gesetzt werden. Es spielt bei einem solchen Verweis keine Rolle, auf welches Dateiformat verwiesen wird. Der Browser erkennt, ob er die Datei selbstständig öffnen kann oder ob für diesen Zweck ein anderes Programm mit diesem Dateityp verknüpft ist.
59 XML Teil 3/3.3.2 Seite 5 Verhalten von Links steuern Im folgenden Beispiel wird dem Nutzer durch einen Hinweistext mitgeteilt, dass sich ein Bild öffnet, wenn er den Hyperlink betätigt. Diese Vorgehensweise sollte in jedem Fall so gehandhabt werden, da sich nicht jeder Nutzer auf lange Wartezeiten einlassen möchte. <?xml Version= 1.0?> <NAME>Informationen</NAME> <VERWEIS xml:link= simple href= bild.gif >Schauen Sie sich dieses Foto an.</verweis> </NAME> Es wäre ebenso möglich, anstelle eines Textverweises eine Grafik einzusetzen. Hierzu muss der Hinweistext durch eine Grafik ausgetauscht werden. 15
60 Teil 3/3.3.2 Seite 6 XML Verhalten von Links steuern
61 XML Teil 3/3.3.3 Seite 1 Auslösen eines Links 3/3.3.3 Auslösen eines Links Allgemeine Syntax Im herkömmlichen HTML steht eine Möglichkeit zur Verfügung, den Hyperlink ausführen zu lassen. Diese besteht darin, dass ein Nutzer den Link anklickt und somit auf das Verweisziel springen kann. Mittels XLink kann diese Form ebenso wie ein automatisches Ausführen des Hyperlinks realisiert werden. Durch Letzteres ist es z.b. möglich, eine automatische Weiterleitung umzusetzen, wie dies in HTML etwa in den META-Angaben definiert werden kann. <element xml:link= simple show= Verhalten actuate= Auslösen href= Verweisziel >Verweistext</element> Innerhalb von XLink steht für diesen Zweck die Angabe actuate zur Verfügung. Zwei Einstellungsvarianten können hierbei verwendet werden. Diese Angabe wird zusätzlich zu den bereits vorgestellten eingesetzt. Bislang wird ein automatisches Auslösen allerdings von noch keinem Browser unterstützt. Eine Fehlermeldung wird jedoch nicht ausgegeben. Bis auf die zwei in diesem Abschnitt vorgestellten Attribute auto und user steht ein weiteres zur Verfügung. Mangels genauer Definition durch das W3C soll hierauf allerdings nicht speziell eingegangen werden. Es handelt sich um das Attribut behavior. Automatisches Auslösen Ein solches Linkverhalten kann in Zukunft auf unterschiedliche Art und Weise eingesetzt werden. So werden sich z.b. andere Inhalte automatisch in eine Webseite einfügen lassen. Aber auch eine automatische Weiterleitung zu einer anderen Adresse wird umsetzbar sein. Wie die endgültige Interpretation dieser Syntax aussehen wird, steht bis zum jetzigen Zeitpunkt allerdings noch nicht fest. 15
62 Teil 3/3.3.3 Seite 2 XML Auslösen eines Links <element xml:link= simple show= Verhalten actuate= auto href= >Verweistext</element> actuate="auto" Nachdem dem Element ein Name zugewiesen wurde, muss dem Browser durch die Angabe xml:link="simple" mitgeteilt werden, dass es sich um einen einfachen Hyperlink handelt. Wurde mit der Angabe show festgelegt, wie sich das Verweisziel verhalten soll, folgt actuate. Hinter dem Gleichheitszeichen muss der Wert auto in Anführungszeichen gesetzt werden. Das Ziel des Verweises wird hinter href notiert. Nachdem ein geeigneter Verweistext vergeben wurde, muss das Element geschlossen werden. Im folgenden Beispiel soll der Nutzer von der alten auf die neue Adresse automatisch weitergeleitet werden. <?xml version="1.0"?> <NAME> <HINWEIS>Neue Adresse</HINWEIS> <VERWEIS xml:link="simple" show="replace" actuate="auto" href=" koch">interessante Seite</VERWEIS> </NAME> Um auf diesen Aspekt aufmerksam machen zu können, wurde ein diesbezüglicher Hinweistext eingefügt. Das Verweisziel wird im gleichen Fenster wie die hier beschriebene XML-Datei geöffnet. Nutzergesteuerte Verweise Soll dem Nutzer selbst überlassen werden, wie und ob er einen Hyperlink behandeln will, kann nicht der Wert auto eingesetzt werden. Diese Vorgehensweise ist besonders dann von Nutzen, wenn es sich um einen Verweis auf eine ladeintensive Datei handelt, da der Nutzer hierdurch entscheiden kann, ob er die langen Wartezeiten in Kauf nimmt.
63 XML Teil 3/3.3.3 Seite 3 Auslösen eines Links <element xml:link= simple show= Verhalten actuate= user href= >Verweistext</element> Innerhalb des gewünschten Elements müssen dem Browser die folgenden Eigenschaften bekannt gegeben werden: über xml:link="simple", dass es sich um einen einfachen Hyperlink handelt, über show das Verhalten des Links. Das für diesen Abschnitt entscheidende Attribut user muss in Anführungszeichen hinter der Angabe actuate notiert werden. actuate="user" <?xml version="1.0"?> <NAME> <HINWEIS>Neue Bilder</HINWEIS> <VERWEIS xml:link="simple" show="replace" actuate="user" href=" koch/grafik.gif">interessante Bilder</VERWEIS> </NAME> In diesem Beispiel steht es somit dem Nutzer frei, ob er die Grafiken betrachten möchte. Wie die endgültige Interpretation der Syntax aussehen wird, steht allerdings noch nicht eindeutig fest. Das Beispiel ist aber trotz dieser Tatsache einsetzbar, da die Browser keine Fehlermeldung ausgeben. 15
64 Teil 3/3.3.3 Seite 4 XML Auslösen eines Links
65 XML Teil 3/3.3.4 Seite 1 Grafiken als Links 3/3.3.4 Grafiken als Links Innerhalb von XML-Dateien lassen sich nicht nur textbasierende, sondern wie in HTML üblich auch grafische Hyperlinks erzeugen. Wird eine eingebundene Grafik durch den Nutzer angeklickt, folgt eine Aktion, meist das Öffnen einer neuen Seite. Nachfolgend eine typische Anwendung. Aktionen wählen Abbildung 3/ : Ein grafischer Hyperlink Betätigt der Nutzer den definierten Hyperlink, wird er automatisch auf die Seite geleitet. Um dies zu entwickeln, muss der Verweis zunächst in einer XML-Datei, wie in der folgenden Syntax, beschrieben werden. Hyperlinks beschreiben <?xml version="1.0" encoding="iso "?> <?xml-stylesheet HREF="ausgabe.xsl" type="text/xsl"?> <BEISPIEL> <EINS> <ZIEL xml:link="simple" href=" <FOTO herkunft="scream.gif"/> </EINS> </BEISPIEL> 15
66 Teil 3/3.3.4 Seite 2 XML Grafiken als Links Grafiken definieren Innerhalb des Tags <EINS> wird über das <ZIEL>-Tag das Verweisziel angegeben, das über xml:link="simple" eingeleitet wird und dem Browser mitteilt, dass es sich um einen einfachen Hyperlink handelt. Nach dem Attribut href wird die exakte Adresse, also das Verweisziel, notiert. Um eine Grafik als Hyperlink zu verwenden, muss diese über das Tag <FOTO> definiert werden. Gleichzeitig muss ein Attribut, hier herkunft, festgelegt und nach dem Gleichheitszeichen Pfad und Name der Grafik notiert werden. Achten Sie darauf, dass es sich um ein leeres Tag handelt, das in XML geschlossen werden muss. Die genaue Definition der einzubindenden Grafik wird innerhalb der XSL-Datei festgelegt. <xsl:stylesheet xmlns:xsl=" <xsl:template> <DIV STYLE="color:blue; font-size:20pt"> Klicken Sie den Hyperlink an! </DIV> <xsl:for-each select="beispiel/eins"><div> <A> <xsl:attribute name="href"> <xsl:value-of select="ziel/@href"/> </xsl:attribute> <img> <xsl:attribute name="src"> <xsl:value-of select="foto/@herkunft"/></xsl:attribute></img> </A> </DIV> </xsl:for-each> </xsl:template> </xsl:stylesheet> Attribute erzeugen Durch <xsl:attribute name="href"> muss das Attribut HREF erzeugt werden, durch das in der XML-Datei das exakte Verweisziel angegeben wurde. Im nächsten Schritt wird festgelegt, welchen Wert das HREF -Attribut zugewiesen bekommen soll. Dies geschieht über <xsl:value-of select="ziel/@href"/>. Im letzten Schritt wird das Bild eingefügt. Dazu setzt man das aus HTML bekannte <IMG>-Tag ein. Über <xsl:attribute name="src"> wird das Attribut src erzeugt. Legen Sie dann fest, welches Tag ausgelesen werden soll. Hier handelt es sich um <FOTO>.
67 XML Teil 3/3.3.5 Seite 1 Links auf Positionen 3/3.3.5 Links auf Positionen Die hier vorgestellte Syntax steht ähnlich in der HTML-Spezifikation zur Verfügung. Auch dort können Hyperlinks auf bestimmte Positionen zielen. Empfehlenswert ist der Einsatz dieser Hyperlinkform vor allem im Zusammenhang mit Internetseiten, deren Inhalte sich über mehr als eine Bildschirmseite erstrecken. In HTML spricht man von Ankern, deren allgemein gültige Syntax sich folgendermaßen darstellt: Anker definieren <a name= wohin >Inhalt</a> Zunächst muss das Ziel, auf das der Hyperlink gehen soll, über diese Schreibweise festgelegt werden. In diesem Beispiels wäre demnach Inhalt das Verweisziel. Um darauf zu verweisen, muss der eigentliche Hyperlink definiert werden. Dies wird über den nachfolgenden Weg erreicht. <a href= #wohin >Verweistext</a> Diese Vorgehensweise ist mit der innerhalb eines HTML- Dokuments nahezu identisch. Auch hier muss zunächst das Verweisziel und anschließend der entsprechende Hyperlink definiert werden. Zur Veranschaulichung dient das nachstehende Beispiel. Das erste Listing beschreibt den Inhalt der XML-Datei, auf die verwiesen werden soll. Parallelen zu HTML <?xml version="1.0"?> <POSITIONEN> <HYPERLINK ID="verlag"> <NAME>Interest</NAME> <URTEIL>Web-Professionell</URTEIL> </HYPERLINK> <HYPERLINK ID="kostenlos"> <NAME>Kostenlos.de</NAME> <URTEIL>alles kostenlos</urteil> </HYPERLINK> 15
68 Teil 3/3.3.5 Seite 2 XML Links auf Positionen <HYPERLINK ID="bol"> <NAME>BOL</NAME> <URTEIL>sehr guter Onlineshop</URTEIL> </HYPERLINK> </POSITIONEN> Drei Verweisziele wurden in der XML-Datei realisiert. Um das Verweisen auf Positionen umzusetzen, muss für alle drei Ziele der gleiche Tag, hier <HYPERLINK>, definiert werden. Innerhalb dieses Tags wird durch die Angabe ID, gefolgt von einem dateiweit eindeutigen Namen, das Verweisziel gekennzeichnet. Die Datei wird unter ausgabe.xml abgespeichert. Danach wird die XML-Datei definiert, und es kann auf die aufgeführten Ziel verwiesen werden. <?xml version="1.0"?> <POSITIONEN> <HYPERLINK xml:link="simple" href="ausgabe.xml#id(verlag)"> Interest</HYPERLINK > <WAS>Interest Verlag</WAS> <HYPERLINK xml:link="simple" href="ausgabe.xml#id(kostenlos)"> Kostenlos</HYPERLINK > <WAS>Kostenlos.de</WAS> <HYPERLINK xml:link="simple" href="ausgabe.xml#id(bol)"> Buch um Buch</HYPERLINK > <WAS>Buchhandel</WAS> </POSITIONEN> Es ist zu erkennen, dass verschiedene Angaben und Tags mit der Datei ausgabe.xsl übereinstimmen. Die entscheidenden Angaben über die positionierten Verweise befinden sich im <HYPERLINK>-Tag. Über xml:link="simple" wird dem Browser mitgeteilt, dass es sich um einen einfachen Hyperlink handelt. Durch die Zeichenfolge href wird die Definition des Verweisziels eingeleitet. Nach dem Gleichheitszeichen folgt in Anführungszeichen der Name der Datei, in der sich die Ziele befinden. Hier handelt es sich um die Datei ausgabe.xml. Nach dem Doppelkreuz, das direkt und ohne Leerzeichen hinter den Dateinamen notiert wird, folgt die Angabe ID. In Klammern wird der gewünschte Bezeichner, der in der ersten XML-Datei definiert wurde, eingesetzt.
69 XML Teil 3/3.4.1 Seite 1 Dateninseln erzeugen (intern) 3/3.4 XML in HTML Sie können innerhalb eines HTML-Dokuments einzelne XML-Tags einsetzen. So kann die in ihrem Sprachumfang begrenzte Sprache HTML erweitert werden. Um dies zu realisieren, muss eine XML-Dateninsel erzeugt werden. Diese Insel innerhalb eines HTML-Dokuments besteht ausschließlich aus XML. Unterschiede gibt es in der Darstellung einer Dateninsel im Browser. Hierauf wird im Laufe dieses Abschnitts jedoch noch genauer eingegangen. Unterschiedliche Darstellung 3/3.4.1 Dateninseln erzeugen (intern) Zunächst soll aufgezeigt werden, wie innerhalb eines HTML- Dokuments eine XML-Dateninsel erzeugt werden kann. Bei diesem ersten Schritt handelt es sich um ein internes XML- Dokument, das eine Dateninsel erzeugen soll. Die Grobstruktur stellt sich folgendermaßen dar: <html> <head> </head> <body> Inhalt der HTML Datei <xml ID= NAME > Inhalt der XML Datei </xml> </body> </html> Innerhalb einer normalen HTML-Datei wird eine XML-Datei notiert. Die XML-Datei wird nicht über die übliche Zeichenfolge <?xml version=="1.0"?> eingeleitet. Eine Dateninsel wird durch die Angabe <xml ID="NAME"> erzeugt, wobei der ID-Name frei wählbar ist. Einschränkung bei der Vergabe eines ID-Namens ist nur die Einzigartigkeit des Namens. xml ID= NAME 15
70 Teil 3/3.4.1 Seite 2 XML Dateninseln erzeugen (intern) Dieser Punkt ist besonders von Bedeutung, wenn innerhalb einer HTML-Datei mehrere Dateninseln erzeugt werden. Wichtig ist der ID-Name im Zusammenhang mit der Verarbeitung einer solchen Datei durch z.b. JavaScript. Nachfolgend wird eine XML-Dateninsel innerhalb eines HTML-Dokuments erzeugt. Zusätzlich soll auf die Darstellung solcher Dateien im Browser aufmerksam gemacht werden. <html> <head> </head> <body> <h1>unsere Autorendatenbank</h1> <xml ID="autor"> <ELLIS> <ERSTES>Unter Null</ERSTES> <ZWEITES>Die Informanten</ZWEITES> <DRITTES>Einfach unwiederstehlich</drittes> <VIERTES>American Psycho</VIERTES> <LETZTES>Glamorama</LETZTES> </xml> <p>sie können diese Bücher bei uns bestellen<p> </body> </html> </body> </html> Speichern Sie die Datei mit der Erweiterung xml ab und rufen Sie diese im Internet Explorer auf. In der Beispielsyntax wurde zunächst eine Überschrift der ersten Ordnung notiert. Hieran schließt sich die XML- Dateninsel an. Dieser wurde der eindeutige Name Ellis zugewiesen. Nach dem schließenden XML-Tag folgt ein zusätzlicher Hinweistext in herkömmlicher HTML-Syntax. Wird die Datei im Internet Explorer 5.5 aufgerufen, ergibt sich folgendes Bild: Der Browser stellt die Datei ohne Fehlermeldung dar. Abgebildet wird allerdings nur der in HTML-Syntax geschriebene Text. Die XML-Dateninsel wird hingegen nicht dargestellt. Der Grund liegt darin, dass jeder Browser diejenigen Tags bei der Verarbeitung des Dokuments übergeht, die er nicht interpretieren kann.
71 XML Teil 3/3.4.1 Seite 3 Dateninseln erzeugen (intern) Um diese Tatsache zu umgehen, kann z.b. JavaScript für die Ausgabe von Dateninseln verwendet werden. Abbildung 3/ : Lediglich HTML wird dargestellt 15
72 Teil 3/3.4.1 Seite 4 XML Dateninseln erzeugen (intern)
73 XML Teil 3/3.4.2 Seite 1 Dateninseln erzeugen (extern) 3/3.4.2 Dateninseln erzeugen (extern) Besonders bei umfangreichen Dateien wird der Quellcode einer HTML-Datei in Zusammenhang mit einer XML-Dateninsel schnell unübersichtlich. Zudem können Sie den Quellcode durch Auslagerung der XML-Datei vor dem Nutzer verstecken. Der gleiche Aspekt gilt auch für die Auswertung der Dateninsel durch JavaScript. Auch hier ist es ratsam, den Quellcode aus der eigentlichen HTML-Datei auszulagern. Kleinerer Quellcode <html> <head> </head> <body> Inhalt der HTML Datei <xml ID= NAME src= Datei > </xml> </body> </html> Es muss zunächst eine herkömmliche HTML-Datei definiert werden. Innerhalb des <body>-bereichs muss an der Stelle, an der die XML-Dateninsel erscheinen soll, ein entsprechender Verweis notiert werden. Eingeleitet wird diese Syntax über das <xml>-tag. Hieran schließt sich über das Attribut ID ein eindeutiger Name an. Dieser muss in Anführungszeichen gesetzt werden. Über die Angabe src wird auf die XML-Datei verwiesen, in der der Inhalt der Dateninsel definiert wurde. Es ist darauf zu achten, dass die Regeln für Pfadangaben beachtet werden. Diese sind identisch mit denen zum Setzen von Verweisen in HTML. ID definieren Im folgenden Beispiel soll der Quellcode der HTML-Datei möglichst klein gehalten werden. Dieser Punkt hat sich in der Praxis bewährt, da bei Änderungen oder der Fehleranalyse am Dokument die entsprechende Stelle schneller gefunden werden kann. Zunächst wird die HTML-Datei definiert, in der neben normaler HTML-Syntax auch eine XML-Dateninsel vorhanden ist. 15
74 Teil 3/3.4.2 Seite 2 XML Dateninseln erzeugen (extern) <html> <head> </head> <body> <h1>unser Service für Sie.</h1> <p><u>bestellen Sie hier</u></p> <xml ID= NAME src= ellis.xml > </xml> <i>durchsuchen Sie unsere Datenbank</i> </body> </html> Innerhalb dieser HTML-Datei wurden eine Überschrift der ersten Ordnung und zwei Textabsätze definiert. Die XML- Dateninsel wurde in diesem Beispiel ausgelagert. Der Name der XML-Datei lautet ellis.xml. Diese Datei befindet sich im gleichen Verzeichnis wie die HTML-Datei. Die folgende Syntax zeigt den Inhalt der hier beschriebenen XML-Datei. <?xml version= 1.0?> <!DOCTYPE AUTOR [ <!ELEMENT AUTOR (GLAMORAMA)> <!ELEMENT GLAMORAMA (#PCDATA)> ]> <AUTOR> <GLAMORAMA>Sein neuestes Werk</GLAMORAMA> </AUTOR> Mehrere Dateninseln In der Praxis empfiehlt es sich, innerhalb einer HTML-Datei mehrere Dateninseln zu definieren. So wird z.b. die XML- Datei nicht zu umfangreich, und die jeweiligen Inhalte können in einzelnen Dateien besser den entsprechenden Anforderungen nach strukturiert werden. In der folgenden Beispielsyntax sollen drei Dateninseln definiert werden. <html> <head> </head> <body>
75 XML Teil 3/3.4.2 Seite 3 Dateninseln erzeugen (extern) <h2>verschiedene Dateninseln innerhalb einer Datei</h2> <xml ID= Autor1 src= ellis.xml > </xml> <h3>bret Easton Ellis</h3> <xml ID= Autor2 src= hornby.xml > </xml> <h3>nick Hornby</h3> <xml ID= Autor3 src= welsh.xml > </xml> <h3>irvine Welsh</h3> </body> </html> Zwei Aspekte werden anhand dieses Beispiels deutlich. Zum einen darf jede ID nur einmal innerhalb einer Datei vergeben werden und zum anderen muss jede XML-Dateninsel über die Anweisung </xml> geschlossen werden. 15
76 Teil 3/3.4.2 Seite 4 XML Dateninseln erzeugen (extern)
77 XML Teil 3/3.5.1 Seite 1 Überblick 3/3.5 HTML in XML 3/3.5.1 Überblick Um es vorwegzunehmen. Dieses Kapitel lässt sich nur nachvollziehen, wenn HTML-Wissen zugrunde liegt. Denn es geht bei dieser XML-Erweiterung darum, bestehende und bekannte HTML-Tags in XML-Dateien zu integrieren. Mit der hier vorgestellten Möglichkeit können auf schnelle und effiziente Art XML-Dateien erstellt und das Ergebnis im Browser nachvollzogen werden. HTML als Grundlage Namensräume eine Begriffserklärung Grundvoraussetzung, um innerhalb eines XML-Dokuments HTML-Tags einsetzen zu können, ist die Definition eines Namespace. Der Sinn eines solchen Namensraums besteht darin, Elemente eindeutig zu beschreiben. Die Definition der Namensräume liegt zwar derzeit lediglich als Working Draft vor, in Bezug auf den Einsatz von HTML in XML kann diese Spezifikation jedoch bereits verwendet werden. Durch die Verwendung von Namespaces lassen sich aber auch Teile anderer Dokumente in eine XML-Datei integrieren, ohne dass Konflikte hinsichtlich mehrfach verwendeter Elemente zu befürchten sind. Um einen Namensraum in ein XML-Dokument einzubinden, muss dieser zunächst als Namespace gekennzeichnet werden. Die Grundstruktur einer solchen Definition lautet wie folgt: Allgemeine Syntax <?xml version= 1.0?> <ELEMENT xmlns:html= > <html:tag>inhalt</html:tag> 15
78 Teil 3/3.5.1 Seite 2 XML Überblick xmlns:html Nach dem einleitenden Prolog der XML-Datei folgt das Wurzelelement. Innerhalb dieses Elements wird dem Browser mitgeteilt, dass hier ein Namensraum definiert ist. Realisiert wird dies durch das Attribut xmlns:html, gefolgt von der URL Hierbei handelt es sich um die Adresse der HTML-4.0-Spezifikation, wodurch der Namensraum HTML exakt und eindeutig definiert wird. Eindeutig deshalb, weil diese Adresse im Internet lediglich einmal existent ist. Obwohl hier die vorgeschriebene Syntax der XML-Spezifikation verwendet wurde, würde der gleiche Effekt mit der Angabe xmlns:html=" erzielt werden. Denn auch diese Adresse ist im Internet lediglich einmal vorhanden und kann somit zur Definition eines Namensraums verwendet werden. Anwendungsbeispiele Dank der Verwendung von HTML- in XML-Dateien lassen sich auf schnellstmöglichem Weg ansprechende Anwendungen erstellen. Das folgende Beispiel zeigt eine Syntax, die sich zur Ausgabe verschiedener Namensräume bedient. <?xml version="1.0"?> <WILLKOMMEN xmlns:html=" <html:u>willkommen auf unseren Seiten</html:u> <html:br></html:br> <html:i>hier finden Sie zahlreiche Informationen</html:i> </WILLKOMMEN> Rufen Sie die Datei im Internet Explorer auf. Obwohl die Syntax völlig korrekt definiert wurde, ergibt sich beim Aufruf im Internet Explorer 5.5 lediglich das nachfolgende Bild. Im Browser wird nur der Dokumentstrukturbaum ausgegeben, was im Zusammenhang mit Namespaces in dieser Form allerdings nicht gewünscht ist. Mit einer kleinen Modifikation des Quellcodes lässt sich dieser Fehler beheben.
79 XML Teil 3/3.5.1 Seite 3 Überblick Abbildung 3/ : Der Dokumentstrukturbaum in IE <?xml version="1.0"?> <?xml-stylesheet href="ausgabe.css" type="text/css"?> <WILLKOMMEN xmlns:html=" <html:u>willkommen auf unseren Seiten</html:u> <html:br/> <html:i>hier finden Sie zahlreiche Informationen</html:i> </WILLKOMMEN> In der zweiten Zeile wird auf ausgabe.css verwiesen. Hier handelt es sich um ein Style Sheet, das jedoch nicht definiert werden muss. Rufen Sie zur Kontrolle die modifizierte Datei im Internet Explorer auf; es ergibt sich folgendes Bild: Abbildung 3/ : Korrekte Ausgabe 15
80 Teil 3/3.5.1 Seite 4 XML Überblick Um effektiv und Zeit sparend zu arbeiten, ist diese Schreibweise nicht geeignet. Folglich sollte die zuvor dargestellte Verwendung finden. Das Ergebnis des aufgeführten Beispielquellcodes zeigt die folgende Abbildung im Internet Explorer. Style-Sheet- Verweis Der Internet Explorer stellt die Datei immer dann korrekt dar, wenn ein solcher Verweis in die Syntax integriert wurde, auch wenn, wie in diesem Beispiel, die angesprochene Datei ausgabe.css nicht vorhanden ist. Das Ergebnis ist relativ schlicht und somit für einen Praxiseinsatz nur bedingt geeignet. So fehlen hier z.b. Elemente wie Grafiken usw., aber auch die Formatierung der Schrift ist nicht ausreichend. Zunächst wollen wird anhand des folgenden Beispiels auf einen Sonderfall aufmerksam machen. Leere Tags müssen anders behandelt werden, als dies bislang bei herkömmlicher HTML-Syntax üblich war. <?xml version="1.0"?> <?xml-stylesheet htef="ausgabe.css" type="text/css"?> <WILLKOMMEN xmlns:html=" <html:u>willkommen auf unseren Seiten</html:u> <html:br/> <html:i>hier finden Sie zahlreiche Informationen</html:i> <html:br/> <html:img src="mona.jpg"/> <html:h1>auch Grafiken lassen sich einsetzen</html:h1> </WILLKOMMEN> Leere Tags kommen in der hier vorgestellten Syntax zweimal vor. Behandelt werden diese genauso, wie dies auch in der neuen XHTML-Spezifikation vorgesehen ist. So wird z.b. der Tag <br> über <br/> geschlossen. Gleiches gilt für die hier eingebundene Grafik mona.jpg. Die korrekte Syntax lautet <img src="mona.jpg"/>. Die folgende Syntax würde zwar ebenfalls zu einer korrekten Ausgabe führen, der Zeitaufwand hierfür ist allerdings erheblich höher. <img src= mona.jpg ></img> Vereinfachte Syntax
81 XML Teil 3/3.5.1 Seite 5 Überblick Abbildung 3/ : Eingefügte Grafik Zwar lassen sich Grafiken und die bekannten HTML-Tags einsetzen, für zufrieden stellende Ergebnisse sollten allerdings Cascading Style Sheets zur Formatierung verwendet werden. Abbildung 3/ : Gestaltung durch CSS Nur hierdurch lassen sich einzigartige Ergebnisse erzielen. Obige Abbildung zeigt eine diesbezügliche Anwendung. Eine hier abgebildete Webseite lässt sich nur durch CSS-Einsatz realisieren. Jedem in der XML-Datei definierten HTML-Tag wird eine eigene Stildefinition zugewiesen. Eindeutige Namen 15
82 Teil 3/3.5.1 Seite 6 XML Überblick Um dies zu erzielen, muss die Angabe class, gefolgt von einem eindeutigen Namen, eingesetzt werden. Der komplette XML-Code, auf dem diese Seite basiert, ist nachfolgend dargestellt. <?xml version="1.0"?> <?xml-stylesheet href="ausgabe.css" type="text/css"?> <BEISPIEL xmlns:html=" <EINS>HTML Tags lassen sich </EINS> <ZWEI>elegant nutzen</zwei> <html:h1 class="drei">im Zusammenspiel mit CSS</html:H1> <html:h1 class="vier">erreichen Sie tolle Effekte</html:H1> <html:img src="mona.jpg"/> </BEISPIEL> Die CSS-Datei, auf die in der XML-Datei verwiesen wird, stellt sich wie im Folgenden wiedergegeben dar. Wichtig bei der Definition von Stilklassen ist, dass die Namen, die in der XML-Datei vergeben wurden, die exakt gleiche Schreibweise wie in der CSS-Datei besitzen. EINS{ font family: font-family: Verdana, Arial, Helvetica; font size: 40pt; color: blue; position: absolute; left: 110 px; top: 10 px; } ZWEI{ font family: Helvetica, Arial; font size: 15pt; font style: italic; color: red; position: absolute; left: 90 px; top: 80 px; }
83 XML Teil 3/3.5.1 Seite 7 Überblick.drei { font family: font-family: Verdana, Arial, Helvetica; font size: 22pt; color: darkblue; position: absolute; left: 150 px; top: 100 px; }.vier { font family: Arial; font size: 40pt; color: green; position: absolute; left: 20 px; top: 200 px; } Um Stilklassen einzusetzen, muss innerhalb der CSS-Datei vor jeder Klasse ein Punkt gesetzt werden. Erst hierdurch erkennt der Browser, dass sich die nachfolgenden Formatierungseigenschaften auf die in der XML-Datei befindlichen HTML-Tags beziehen. Dem Einsatz von CSS in Zusammenhang mit XML wurde innerhalb dieses Kapitels ein eigener Abschnitt gewidmet. Einsetzbare HTML-Tags Die Frage, welche HTML-Tags innerhalb einer XML-Datei eingesetzt werden können, ist nicht leicht zu beantworten. Theoretisch lassen sich nahezu alle verwenden. In Hinblick auf die Kompatibilität der entwickelten Datei sollten aber nur die Tags Verwendung finden, die in der offiziellen HTML- 4.0-Spezifikation ausdrücklich aufgeführt sind. Die folgende Tabelle zeigt alle Tags, die für diesen Zweck vom W3C freigeben wurden und die keine browserspezifischen Fehlermeldungen nach sich ziehen. 15
84 Teil 3/3.5.1 Seite 8 XML Überblick Nützliche HTML-Tags <a> <abbr> <acronym> <address> <applet> <area> <b> <base> <basefont> <bdo> <big> <blockquote> <body> <br> <button> <caption> <center> <cite> <code> <col> <colgroup> <dd> <del> <dfn> <dir> <div> <dl> <dt> <em> <fieldset> <font> <form> <frame> <frameset> <h1> <h2> <h3> <h4> <H5> <h6> <hr> <html> <head> <i> <img> <input> <ins> <Iframe> <kbd> <label> >LEGEND> <Isindex> <link> <map> <menu> <li> <noframe> <noscript> <object> <meta> <optgroup> <option> <p> <ol> <pre> <q> <s> <param> <script> <select> <small> <samp> <strike> <strong> <style> <span> <sup> <table> <tbody> <sub> <textarea> <tfoot> <th> <td> <title> <tr> <tt> <thead> <ul> <u> <var>
85 XML Teil 3/3.5.2 Seite 1 Entities 3/3.5.2 Entities Entities bieten den großen Vorteil, dass sie durch andere ausgetauscht werden können, was XML-Dokumenten ein hohes Maß an Eigendynamik gewährt. Es gibt fest definierte Entities und solche, die für Abkürzungen selbst entwickelt werden können. Für Sonderzeichen Der Einsatz von Sonderzeichen stellt Webentwickler vor Probleme. XML bietet zwei Lösungswege an, wobei einer, nämlich der über die Angabe des verwendeten Zeichensatzes, bereits vorgestellt wurde. Anstelle dieser Vorgehensweise lassen sich Entities aber auch zur Darstellung von Sonderzeichen einsetzen. Innerhalb von XML müssen aber nicht nur Sonderzeichen, sondern auch deutsche Umlaute gesondert gekennzeichnet werden. Wird hierauf verzichtet, gibt der Browser eine Fehlermeldung aus. Die allgemein gültige Schreibweise für Sonderzeichen stellt sich wie folgt dar: Deutsche Umlaute &Buchstabe Diese Schreibweise ist mit HTML identisch. Nach dem &- Zeichen folgt der Buchstabe mit der anschließenden Zeichenfolge uml. Eine weitere Variante bietet ein spezieller ISO- Zeichensatz. &#ISO Zeichen Hier wird hinter dem &-Zeichen zunächst ein Doppelpunkt und anschließend der Wert des gewünschten Sonderzeichens notiert. 15
86 Teil 3/3.5.2 Seite 2 XML Entities Abkürzungen Der Einsatz von Entities eignet sich besonders, wenn fortlaufend wiederholende Texte innerhalb einer XML-Datei mehrmals vorkommen. Ist dies der Fall, kann mittels Entities für diese Passagen ein Kürzel eingesetzt werden. Der größte Vorteil dieser so erstellten Abkürzungen besteht darin, dass sie innerhalb einer Datei beliebig oft eingesetzt werden können. Um eine Abkürzung zu erstellen, sind lediglich zwei Schritte notwendig. Zunächst muss in der XML-Datei folgende Syntax notiert werden: <!ENTITY Abkürzungsname Text > ENTITY Das Schlüsselwort ENTITY leitet die Definition einer Abkürzung ein. Anschließend muss der Name der Abkürzung notiert werden. Bei der Vergabe eines Abkürzungsnamens unterliegen Sie allerdings einigen Einschränkungen, deren Missachtung zu einer Fehlermeldung führt. Generell kann ein Name aus Unterstrichen, Buchstaben und Ziffern bestehen. Diese Elemente können beliebig kombiniert werden. Es ist allerdings darauf zu achten, dass zu Beginn des Namens keine Ziffer notiert wird. Zudem darf keines der folgenden Sonderzeichen und deutschen Umlaute enthalten sein:? Ä ä Ü ü & ( ) \ #,. : ß < > Ö ö + *! % = Der Text, der anhand der Abkürzung automatisch eingesetzt werden soll, muss zuletzt innerhalb der Definition in Anführungszeichen gesetzt notiert werden. Im nächsten Schritt muss die Document Type Definition den Vorgaben entsprechend angepasst werden. Die allgemein gültige Syntax lautet: <!ELEMENT Tag (#PCDATA)> Kaufmännisches & Als Beispiel soll die nachstehende Syntax gelten. Dieser wurde innerhalb des Tags <BEURTEILUNG> die Abkürzung beur zugewiesen.
87 XML Teil 3/3.5.2 Seite 3 Entities Die Schreibweise ist hierbei besonders wichtig. Vor der eigentlichen Abkürzung muss das kaufmännische & gesetzt werden. Die danach folgende Abkürzung muss innerhalb jeder Definition durch ein Semikolon abgeschlossen sein. <!DOCTYPE SATZ [ <!ELEMENT SATZ (BEISPIEL)> <!ELEMENT BEISPIEL (EINS, ZWEI, DREI)> <!ELEMENT EINS (#PCDATA)> <!ELEMENT ZWEI (#PCDATA)> <!ELEMENT DREI (#PCDATA)> <!ENTITY beur "Beurteilung"> ]> <SATZ> <BEISPIEL> <EINS>Bret</EINS> <ZWEI>Easton Ellis</ZWEI> <DREI>Neuestes Buch</DREI> <VIER>Glamorama</VIER> <BEURTEILUNG>&beur;</BEURTEILUNG> </BEISPIEL> </SATZ> Besonderes Augenmerk ist auf die Schreibweise innerhalb der Entity-Syntax zu legen. Hier folgt hinter der gewünschten Abkürzung kein Gleichheitszeichen. An dessen Stelle tritt ein Leerzeichen. 15
88 Teil 3/3.5.2 Seite 4 XML Entities
89 XML Teil 3/3.6.1 Seite 1 CSS nutzen 3/3.6 XML im Browser Wurden die bisher kreierten XML-Dateien im Browser aufgerufen, stellte sich zwar deren Struktur anhand des Dokumentstrukturbaums dar, für den praktischen Einsatz ist dieses Ergebnis allerdings nicht ausreichend. Daher sollen in diesem Kapitel verschiedene Wege vorgestellt werden, mit deren Hilfe die Formatierung von XML-Dateien vorgenommen werden kann. 3/3.6.1 CSS nutzen Als einfachste Möglichkeit, die Ausgabe einer XML-Datei im Browser zu steuern, bietet sich der Einsatz von Cascading Style Sheets an. Zum einen ist deren Sprachumfang im Vergleich etwa zu XSL relativ gering und somit schnell einsetzbar und zum anderen wurde deren Spezifikation vom W3C zum offiziellen Standard erklärt. Letzteres führt dazu, dass die meisten Browser diese Sprache unterstützen, was weniger Fehlermeldungen zur Folge hat. Vorteile von CSS Style Sheets einbinden Ähnlich der Vorgehensweise in HTML muss man, um eine Formatierung mittels CSS vornehmen zu können, auf die entsprechende Datei verweisen. Im Unterschied zu HTML, wo es möglich ist, die gewünschten Formatierungen sowohl intern als auch extern vorzunehmen, muss im Umgang mit XML stets auf ein externes Style Sheet verwiesen werden. Der Verweis auf die CSS-Datei stellt sich innerhalb der XML-Datei wie folgt dar: <?xml version= 1.0 > <?xml-stylesheet href= Datei type= text/css > 15
90 Teil 3/3.6.1 Seite 2 XML CSS nutzen XML Style Sheet In der zweiten Zeile wird das Angeben der Style-Sheet-Datei über die Zeichenfolge <?xml-stylesheet eingeleitet. Hieran schließt sich das Schlüsselwort href an. Nach dem Gleichheitszeichen muss die CSS-Datei, die die entsprechenden Formatierungen enthält, angegeben werden. Zum Abschluss muss dem Browser über das Attribut type="text/css" mitgeteilt werden, dass es sich bei der Datei, auf die verwiesen wird, um ein Cascading Style Sheet handelt. Die zuvor theoretisch behandelte Vorgehensweise soll das folgende Beispiel im praktischen Einsatz verdeutlichen. <?xml version= 1.0 > <?xml-stylesheet href= ausgabe.css type= text/css > <BEISPIEL> <EINS>Hier steht Text</EINS> </BEISPIEL> In diesem Listing wird, um die hier dargestellte XML-Datei im Browser ausgeben zu können, auf die Datei ausgabe.css verwiesen. Style Sheets definieren CSS-Zugriff Um eine XML-Datei mit Hilfe von CSS zu formatieren, muss zunächst ein Style Sheet definiert werden. Es sind alle auf HTML-Dateien anwendbaren CSS-Angaben gleichfalls auf XML übertragbar. Aus diesem Grund sollen in diesem Abschnitt nicht alle Möglichkeiten aufgeführt werden. Vielmehr geht es darum, wie eine XML- auf eine CSS-Datei zugreifen kann, um die verschiedenen Tags im Browser in der gewünschten Art darstellen zu können. Ein Cascading Style Sheet wird immer anhand des folgenden Musters definiert: Name { Schlüsselwort: Wert; }
91 XML Teil 3/3.6.1 Seite 3 CSS nutzen Zunächst wird das Element, das formatiert werden soll, notiert. Der Name muss mit der Schreibweise in der XML-Datei exakt übereinstimmen. Tags formatieren Der Sinn von Style Sheets besteht darin, definierte Tags formatieren zu können. Dazu sind mehrere Schritte notwendig. Zunächst müssen innerhalb der XML-Datei die verschiedenen Tags definiert werden. In der gleichen Datei muss zudem ein Verweis auf die Style-Sheet-Datei zu finden sein. Im letzten Schritt muss die für die Formatierung verantwortliche CSS-Datei entsprechend gestaltet werden, wobei auf die Verknüpfung zwischen den Tags und der gewünschten Formatierung das Hauptaugenmerk gelegt werden muss. Denn nur wenn dies gewährleistet ist, kann eine Datei in der gewünschten Art dargestellt werden. Auf eine allgemeine Syntax angewandt ergibt sich folgendes Bild: Verknüpfungen herstellen <?xml version="1.0" encoding="iso "?> <?xml-stylesheet href="datei" type="text/css"?> <Tag> Inhalt </Tag> In dieser Datei wird zunächst die Datei festgelegt, in der die Formatierungen zur Darstellung des Tags enthalten sind. Zusätzlich muss dem Browser über type="text/css" mitgeteilt werden, dass es sich bei der Datei um ein Cascading Style Sheet handelt. Die Grundform zur Definition einer solchen CSS-Datei gestaltet sich wie folgt: Tag { Schlüsselwort: Wert } Achten Sie darauf, dass der in der XML-Datei vergebene Tag-Name exakt mit dem in der CSS-Datei übereinstimmt. Cascading Style Sheets müssen stets mit der Dateiendung css versehen werden. Zudem ist explizit darauf zu achten, dass der Ort der Datei stets eine korrekte Pfadangabe enthält. Exakte Schreibweise 15
92 Teil 3/3.6.1 Seite 4 XML CSS nutzen Die folgende Beispielsyntax beschreibt, wie eine definierte XML-Datei mittels Cascading Style Sheet ausgegeben wird. Das Wurzelelement innerhalb dieser Datei lautet <BEI- SPIEL>. Für die Formatierung muss allerdings lediglich das Tag <EINS> in der CSS-Datei auftauchen. <?xml version="1.0" encoding="iso "?> <?xml-stylesheet href="ausgabe.css" type="text/css"?> <BEISPIEL> <EINS> Einfache CSS Formatierung </EINS> </BEISPIEL> Der Inhalt der CSS-Datei stellt sich wie folgt dar. Dem Tag <EINS> werden durch diese Syntax verschiedene Formatierungsarten zugewiesen, die von der Definition der Schriftart über die Schriftgröße bis hin zur Positionierung reichen. EINS{ font family: font-family: Verdana, Arial, Helvetica; font size: 40pt; color: white; position: absolute; left: 110 px; top: 50 px; background-color:blue;} Die nachfolgende Abbildung zeigt das Ergebnis der beiden zuvor aufgeführten Quellcodes. Achten Sie darauf, dass in diesem Beispiel lediglich ein Tag definiert wurde, dessen dazugehöriges Style Sheet dennoch relativ umfangreich ist. Die hier beschriebene Vorgehensweise ließe sich gleichwohl auch auf XML-Dateien übertragen, in denen mehrere Tags definiert wurden. Zu beachten ist lediglich, dass die Tags, zumindest bei verschiedenartiger Formatierung, nur einmal innerhalb der XML-Datei vorkommen dürfen. Diese Einschränkung macht bereits deutlich, dass hierdurch Probleme auftreten können, deren Lösung die im nachfolgenden Abschnitt vorgestellte Variante bieten soll.
93 XML Teil 3/3.6.1 Seite 5 CSS nutzen Abbildung 3/ : Ausgabe eines Tags Klassen bilden Bei einigen Tags reicht die zuvor beschriebene Vorgehensweise nicht aus. Soll z.b. ein Text durch das <p>-tag aufgeteilt werden und jeder Absatz aber einen andersfarbigen Hintergrund zugewiesen bekommen, kann dies nur über die Zuweisung einer Format-Unterklasse realisiert werden. Weitere Einsatzmöglichkeiten bieten Hyperlinks, Tabellen und Fließtexte. Element.Klasse { CSS Formatierung } Um Unterklassen zu bilden, muss zunächst das gewünschte Tag notiert werden. In Bezug auf Unterklassen spielt der danach einzufügende Punkt eine entscheidende Rolle. Erst durch dessen Einsatz kann der Browser erkennen, dass es sich bei dieser Definition um eine Unterklasse handelt. Hinter dem Punkt muss der Name der Unterklasse vergeben werden. Der Name ist frei wählbar, auf den Einsatz von Sonder- und Leerzeichen sollte allerdings verzichtet werden. Keine Sonderund Leerzeichen 15
94 Teil 3/3.6.1 Seite 6 XML CSS nutzen Um innerhalb der XML-Datei auf diese Unterklasse zugreifen zu können und somit einen Bezug zur CSS-Datei herzustellen, muss folgende Syntax eingesetzt werden: <Tag class= Klasse >Inhalt</Tag> class Hinter dem Tag muss das Schlüsselwort class notiert werden. An das sich daran anschließende Gleichheitszeichen muss der in der CSS-Datei vergebene Name der Unterklasse in Anführungszeichen gesetzt werden. Eine Anwendung von Unterklassen beschreibt das folgende Beispiel. Innerhalb dieser XML-Datei wurden drei Hyperlinks notiert. Deren Aussehen soll durch die Zuweisung von Unterklassen variabel gestaltet werden. <?xml version="1.0" encoding="iso "?> <?xml-stylesheet href="ausgabe.css" type="text/css"?> <BEISPIEL> <EINS> Wählen Sie einen Hyperlink aus! </EINS> <html:html xmlns:html=" <html:a href="index.htm" class="nummer1">homepage</html:a> <html:a href="geschaeft.htm" class="nummer2">geschäft</html:a> <html:a href="profit.htm" class="nummer3">unterlagen</html:a> </html:html> </BEISPIEL> Als Grundlage wurde in diesem Beispiel ein HTML-Namensraum definiert, innerhalb dessen das Tag <a> zur Definition von Hyperlinks eingesetzt wurde. Jedem dieser drei Tags wurde eine Unterklasse zugewiesen.
95 XML Teil 3/3.6.1 Seite 7 CSS nutzen EINS{ font family: font-family: Verdana, Arial, Helvetica; font size: 40pt; color: white; position: absolute; left: 40 px; top: 60 px; background-color:blue;}.nummer1{ font family: font-family: Verdana, Arial, Helvetica; font size: 20pt; color: red; position: absolute; left:10 px; top: 180 px; }.nummer2{ font family: font-family: Verdana, Arial, Helvetica; font size: 20pt; color: red; position: relative; left: 10 px; top: 210 px; }.nummer3{ font family: font-family: Verdana, Arial, Helvetica; font size: 20pt; color: red; position: absolute; left: 10 px; top: 270 px; ;} Warum innerhalb dieser Syntax Unterklassen definiert wurden, lässt sich anhand der Abbildung erkennen. Den drei Hyperlinks wurde eine jeweils andere Position zugewiesen. Hierdurch wird erreicht, dass diese nicht neben, sondern untereinander angeordnet dargestellt werden. Abbildung 3/ : Hyperlinks durch CSS Die hier definierten Abstände haben zudem den Vorteil, dass sie auch bei anderen Bildschirmgrößen oder Auflösungen in exakt dieser Form eingehalten werden. 15
96 Teil 3/3.6.1 Seite 8 XML CSS nutzen
HTML5. Wie funktioniert HTML5? Tags: Attribute:
HTML5 HTML bedeutet Hypertext Markup Language und liegt aktuell in der fünften Fassung, also HTML5 vor. HTML5 ist eine Auszeichnungssprache mit der Webseiten geschrieben werden. In HTML5 wird festgelegt,
Datenaustauschformate. Datenaustauschformate - FLV
Datenaustauschformate FLV-Dateien CSV-Dateien XML-Dateien Excel-Dateien Access- Backupdateien Günter M. Goetz 108 Datenaustauschformate - FLV Fixed Length Values Repräsentation einer Tabelle als 'Flat-File'
Übungsaufgaben zu XML:
Übungsaufgaben zu XML: Aufgabe 1 Allgemeine Fragen zu XML: (Benutzen Sie zum Lösen der Aufgaben die Online-Hilfen, welche wir erwähnt haben.) a) Was ist eine DTD? DTD steht für Document Type Definition.
IT-Zertifikat: Daten- und Metadatenstandards
IT-Zertifikat: Daten- und Metadatenstandards DTD - Document Type Definition / Dokumenttypdefinition Das (bislang) Wichtigste auf einen Blick Externe DTD einbinden:
... MathML XHTML RDF
RDF in wissenschaftlichen Bibliotheken (LQI KUXQJLQ;0/ Die extensible Markup Language [XML] ist eine Metasprache für die Definition von Markup Sprachen. Sie unterscheidet sich durch ihre Fähigkeit, Markup
4 Aufzählungen und Listen erstellen
4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer
WEBSEITEN ENTWICKELN MIT ASP.NET
jamal BAYDAOUI WEBSEITEN ENTWICKELN MIT ASP.NET EINE EINFÜHRUNG MIT UMFANGREICHEM BEISPIELPROJEKT ALLE CODES IN VISUAL BASIC UND C# 3.2 Installation 11 Bild 3.2 Der Webplattform-Installer Bild 3.3 IDE-Startbildschirm
Kapitel 3 Frames Seite 1
Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den
Webseite in XML Kurzeinführung
Webseite in XML Kurzeinführung 1. Entwicklung... 1 2. Erste Webpage in XML... 2 2.1 Erstes Beispiel... 2 2.2 Tags definieren... 4 2.3 Kommentare in XML... 5 2.4 XML mittels CSS im Browser ansehen... 5
Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung
Kapitel 1 Die Vorbereitung Vorgängerversionen. Bald darauf folgte dann schon die Version 4, die mit einer kleinen Bearbeitung bis vor Kurzem 15 Jahre unverändert gültig war. All das, was du die letzten
Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an.
3. SPEICHERN DATEIEN SPEICHERN Dateien werden in Word Dokumente genannt. Jede Art von Datei, die Sie auf Ihrem Computer neu erstellen, befindet sich zuerst im Arbeitsspeicher des Rechners. Der Arbeitsspeicher
.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage
.htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess
Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG
Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Um mit IOS2000/DIALOG arbeiten zu können, benötigen Sie einen Webbrowser. Zurzeit unterstützen wir ausschließlich
Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten
Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,
Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme
Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client
Kennen, können, beherrschen lernen was gebraucht wird www.doelle-web.de
Inhaltsverzeichnis Inhaltsverzeichnis... 1 Grundlagen... 2 Hyperlinks innerhalb einer Datei... 2 Verweisziel definieren... 2 Einen Querverweis setzen... 3 Verschiedene Arten von Hyperlinks... 3 Einfache
Anleitung zur Verwendung der VVW-Word-Vorlagen
Anleitung zur Verwendung der VVW-Word-Vorlagen v1.0. Feb-15 1 1 Vorwort Sehr geehrte Autorinnen und Autoren, wir haben für Sie eine Dokumentenvorlage für Microsoft Word entwickelt, um Ihnen die strukturierte
Zentraler Wertungsrichtereinsatz
Zentraler Wertungsrichtereinsatz Anleitung zur erstmaligen Registrierung beim Online-System des zentralen Wertungsrichtereinsatzes des LTVB Zur Nutzung des Online-Systems des zentralen Wertungsrichtereinsatzes
OP-LOG www.op-log.de
Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server
HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 2. Ausgabe, 3. Aktualisierung, Januar 2013 HTML5
HTML5 Linda York, Tina Wegener 2. Ausgabe, 3. Aktualisierung, Januar 2013 Grundlagen der Erstellung von Webseiten HTML5 2 HTML5 - Grundlagen der Erstellung von Webseiten 2 Die erste Webseite mit HTML erstellen
Typo3 - Inhalte. 1. Gestaltung des Inhaltsbereichs. 2. Seitenunterteilung einfügen
Typo3 - Inhalte 1. Gestaltung des Inhaltsbereichs Das Layout der neuen TVA Website sieht neben dem grafischen Rahmen und den Navigations-Elementen oben und links einen grossen Inhaltsbereich (graue Fläche)
AUF LETZTER SEITE DIESER ANLEITUNG!!!
BELEG DATENABGLEICH: Der Beleg-Datenabgleich wird innerhalb des geöffneten Steuerfalls über ELSTER-Belegdaten abgleichen gestartet. Es werden Ihnen alle verfügbaren Belege zum Steuerfall im ersten Bildschirm
XSL Templates. Mit Templates arbeiten. XSL Templates
XSL Templates Mit Templates arbeiten Innerhalb von XSLT werden Templates verwendet. Ein Template ist eine Vorlage für die Transformation bestimmter Knoten. Diese Knoten können Elemente, Attribute oder
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
Einfügen von Bildern innerhalb eines Beitrages
Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de
Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.
Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden?
Wie kann ich in der Backstage-Ansicht eigene Dokumentationen einbinden? Anforderung Durch die Bearbeitung einer XML-Datei können Sie Ihre eigenen Dokumentationen (z.b. PDF-Dateien, Microsoft Word Dokumente
Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern
Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Dateiname: ecdl_p2_02_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 2 Tabellenkalkulation
Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:
Beiträge erstellen in Joomla Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht: Abbildung 1 - Kontrollzentrum Von hier aus kann man zu verschiedene Einstellungen
GEONET Anleitung für Web-Autoren
GEONET Anleitung für Web-Autoren Alfred Wassermann Universität Bayreuth [email protected] 5. Mai 1999 Inhaltsverzeichnis 1 Technische Voraussetzungen 1 2 JAVA-Programme in HTML-Seiten verwenden
Inhalt. meliarts. 1. Allgemeine Informationen... 2 2. Administration... 2 2.1 Aufruf... 2 2.2 Das Kontextmenü... 3 3. E-Mail Vorlagen...
Inhalt 1. Allgemeine Informationen... 2 2. Administration... 2 2.1 Aufruf... 2 2.2 Das Kontextmenü... 3 3. E-Mail Vorlagen... 4 Seite 1 von 7 meliarts 1. Allgemeine Informationen meliarts ist eine Implementierung
Guide DynDNS und Portforwarding
Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch
Neue Steuererklärung 2013 erstellen
Neue Steuererklärung 2013 erstellen Bitte klicken Sie im Startmenü auf die Schaltfläche Steuererklärung 2013 NEU Anschliessend wird der folgende Dialog angezeigt. Wenn Sie die letztjährige Steuererklärung
1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
Plugins. Stefan Salich ([email protected]) Stand 2008-11-21
Plugins Stefan Salich ([email protected]) Stand 2008-11-21 Inhaltsverzeichnis 0 Einleitung...3 0.1 Sinn und Zweck...3 0.2 Änderungsübersicht...3 0.3 Abkürzungsverzeichnis...3 1 Einfügen eines Plugins...4 1.1
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
Datensicherung. Beschreibung der Datensicherung
Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten
Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.
In einer Website haben Seiten oft das gleiche Layout. Speziell beim Einsatz von Tabellen, in denen die Navigation auf der linken oder rechten Seite, oben oder unten eingesetzt wird. Diese Anteile der Website
HTML Programmierung. Aufgaben
HTML Programmierung Dr. Leander Brandl BRG Keplerstraße - A-8020 Graz Universität Graz - Institut für Experimentalphysik Fachdidaktik der Physik http://w4.brgkepler.asn-graz.ac.at 1. Die erste Web-Seite
Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge
Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht
Format- oder Stilvorlagen
Vorraussetzung Sie sollten Grundkenntnisse der HTML-Sprache besitzen, um die Ausbildungseinheit Formatvorlagen, auch Stilvorlagen genannt, ohne Probleme verstehen zu können. Ist dies nicht der Fall, empfehlen
Barrierefreie Webseiten erstellen mit TYPO3
Barrierefreie Webseiten erstellen mit TYPO3 Alternativtexte Für jedes Nicht-Text-Element ist ein äquivalenter Text bereitzustellen. Dies gilt insbesondere für Bilder. In der Liste der HTML 4-Attribute
Kommunikations-Management
Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal
etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche
etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:
Ein Tool zum Konvertieren von Pegasus Mail Adressbüchern und Verteilerlisten in Novell Groupwise Adressbücher.
Ein Tool zum Konvertieren von Pegasus Mail Adressbüchern und Verteilerlisten in Novell Groupwise Adressbücher. Inhalt 1. Konvertieren von Adressbüchern und Verteilerlisten 1.1 Grundlagen 1.2 Adressbücher
Hilfen zur Verwendung der Word-Dokumentvorlage des BIS-Verlags
Hilfen zur Verwendung der Word-Dokumentvorlage des BIS-Verlags 2013 style_sheet_bis_verlag_20130513 Arbeiten mit der Dokumentvorlage des BIS-Verlags... 3 Dokumentvorlage Wofür?... 3 Wohin mit der Dokumentvorlage...
Einführung in XML von Julian Bart
Über diese Einführung Diese Einführung soll Ihnen einen groben, ersten Überblick über XML, dem designierten Nachfolger der Seitenbeschreibungssprache HTML 4.0, vermitteln und Ihnen einen ersten Einstieg
Anleitung zur Erstellung einer Batchdatei. - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart -
Anleitung zur Erstellung einer Batchdatei - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart - Mögliche Anwendungen für Batchdateien: - Mit jedem Systemstart vordefinierte Netzlaufwerke
Einfügen mit Hilfe des Assistenten: Um eine Seite hinzufügen zu können, müssen Sie nur mehr auf ein Symbol Stelle klicken.
2. SEITE ERSTELLEN 2.1 Seite hinzufügen Klicken Sie in der Navigationsleiste mit der rechten Maustaste auf das Symbol vor dem Seitentitel. Es öffnet sich ein neues Kontextmenü. Wenn Sie nun in diesem Kontextmenü
Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.
Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung
Artikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
Tevalo Handbuch v 1.1 vom 10.11.2011
Tevalo Handbuch v 1.1 vom 10.11.2011 Inhalt Registrierung... 3 Kennwort vergessen... 3 Startseite nach dem Login... 4 Umfrage erstellen... 4 Fragebogen Vorschau... 7 Umfrage fertigstellen... 7 Öffentliche
Outlook Erstellen einer E-Mail aus einer HTML - Vorlage INHALT
Outlook Erstellen einer E-Mail aus einer HTML - Vorlage INHALT LADEN DER VORLAGE 2 Öffnen Sie Outlook 2 Klicken Sie auf EXTRAS >> OPTIONEN 2 Im Optionenfeld von Outlook folgend Sie den Schritten 2 Fenster
Errata-Liste zum Kurs: Einführung in XML (2. Auflage)
Errata-Liste zum Kurs: Einführung in XML (2. Auflage) 1. Kapitel 4.8: Auf Kursseite 8 ist der angeführten XML-Quellcode fehlerhaft:
Favoriten sichern. Sichern der eigenen Favoriten aus dem Webbrowser. zur Verfügung gestellt durch: ZID Dezentrale Systeme.
Favoriten sichern Sichern der eigenen Favoriten aus dem Webbrowser zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 20 Inhaltsverzeichnis Einleitung... 3 Mozilla Firefox...
Ihr CMS für die eigene Facebook Page - 1
Ihr CMS für die eigene Facebook Page Installation und Einrichten eines CMS für die Betreuung einer oder mehrer zusätzlichen Seiten auf Ihrer Facebook Page. Anpassen der "index.php" Installieren Sie das
Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me
Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte
Professionelle Seminare im Bereich MS-Office
Serienbrief aus Outlook heraus Schritt 1 Zuerst sollten Sie die Kontakte einblenden, damit Ihnen der Seriendruck zur Verfügung steht. Schritt 2 Danach wählen Sie bitte Gerhard Grünholz 1 Schritt 3 Es öffnet
Als Lehrende/r oder Mitwirkende/r einer Veranstaltung können Sie das Wiki unter dem Funktionsreiter + aktivieren und deaktivieren.
WikiWikiWeb Das automatisch in einer Veranstaltung aktivierte Modul/Plugin Wiki-Web ist eine Variante eines Wiki (hawaiisch für schnell ), in dem es den TeilnehmerInnen möglich ist, direkt in der angewählten
Frames oder Rahmen im Browserfenster
In dieser Ausbildungseinheit zeigen wir Ihnen, wie Frames oder auch Rahmen im Browserfenster erstellt werden. Dabei möchten wir anmerken, dass zu Frames bereits sehr viel Gegensätzliches geschrieben wurde.
Dokumentenverwaltung. Copyright 2012 cobra computer s brainware GmbH
Dokumentenverwaltung Copyright 2012 cobra computer s brainware GmbH cobra Adress PLUS ist eingetragenes Warenzeichen der cobra computer s brainware GmbH. Andere Begriffe können Warenzeichen oder anderweitig
Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Serienbrief erstellen - Datenquelle
Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Serienbrief erstellen - Datenquelle Dateiname: ecdl3_05_01_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 3 Textverarbeitung
5.2 Neue Projekte erstellen
5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort
1 Dokumentenmanagement
1 Dokumentenmanagement Das Dokumentenmanagement des GV Büro-System ist ein äußerst leistungsfähiges und mächtiges Tool. Es ist in der Lage, nahezu sämtliche Arten von Dokumenten auf einfache Art und Weise
Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition
In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,
Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.
Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:
Die Formatierungsregeln (die so genannte Wiki-Syntax) für Texte in DokuWiki sind zu großen Teilen die selben, wie in anderen Wiki-Systemen.
DokuWiki Kurzanleitung DokuWiki ein sehr einfach zu installierendes und anzuwendendes Wiki und bietet einige Funktionen, welche das Erstellen von Hypertexten, Dokumentationen und Präsentation von Projekten
Eigene Formatvorlagen
TIPPS & TRICKS Eigene Formatvorlagen V 1.0 // Stand: Juli 2015 MS Word bietet Ihnen standardmäßig Vorlagen, mit denen Sie Textelemente formatieren können, etwa»überschrift 1«oder»Standard«. Diese Formatvorlagen
mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank
mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man
Standard-Kontaktformular
Online-Tutorials Referat VI.5 Internetdienste Standard-Kontaktformular Legen Sie ein neues Dokument an Klicken Sie die Datei an, unter der Sie das Kontaktformular anlegen möchten Legen Sie über Datei >
In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.
In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht
Suche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.
Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,
Anleitung öffentlicher Zugang einrichten
TRK-DashBoard Anleitung öffentlicher Zugang einrichten Manual für Kunden VERSION DATUM AUTOR DATEINAME 1.0 8. SEPTEMBER 2011 HRR ANLEITUNG_OEFFENTLICHER_ZUGANG_DASHBOARD_V10 INHALT 1 ALLGEMEINE INFORMATIONEN...
Schulberichtssystem. Inhaltsverzeichnis
Schulberichtssystem Inhaltsverzeichnis 1. Erfassen der Schüler im SBS...2 2. Erzeugen der Export-Datei im SBS...3 3. Die SBS-Datei ins FuxMedia-Programm einlesen...4 4. Daten von FuxMedia ins SBS übertragen...6
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.
Stapelverarbeitung Teil 1
Stapelverarbeitung Teil 1 In jedem Unternehmen gibt es von Zeit zu Zeit Änderungen in Normen und Firmenstandards, an die aktuelle und bereits bestehende Zeichnungen angepasst werden müssen. Auch Fehler
Task: Nmap Skripte ausführen
Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses
Gezielt über Folien hinweg springen
Gezielt über Folien hinweg springen Nehmen wir an, Sie haben eine relativ große Präsentation. Manchmal möchten Sie über Folien hinweg zu anderen Folien springen. Das kann vorkommen, weil Sie den gesamten
Objektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
Verknüpfung zum Angebotsassistenten erstellen
Verknüpfung zum Angebotsassistenten erstellen - auch bei installiertem Java 64 Bit Version 2013-09-04 Inhaltsverzeichnis 1. Einleitung... 3 2. Wenn Java 64-bit installiert ist... 3 3. Ana Verknüpfung erstellen...
Registrierung am Elterninformationssysytem: ClaXss Infoline
elektronisches ElternInformationsSystem (EIS) Klicken Sie auf das Logo oder geben Sie in Ihrem Browser folgende Adresse ein: https://kommunalersprien.schule-eltern.info/infoline/claxss Diese Anleitung
Access 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA
Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten
Zulassung nach MID (Measurement Instruments Directive)
Anwender - I n f o MID-Zulassung H 00.01 / 12.08 Zulassung nach MID (Measurement Instruments Directive) Inhaltsverzeichnis 1. Hinweis 2. Gesetzesgrundlage 3. Inhalte 4. Zählerkennzeichnung/Zulassungszeichen
Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.
Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt
Kurzskript Literaturverzeichnis Microsoft Office Word 2010
Training & S upport Kurzskript Literaturverzeichnis Microsoft Office Word 2010 PC & EDV Support - Köln, Februar 2011 Training & S upport Inhalt ZITATE VERWALTEN MIT WORD... 1 Quellen-Manager... 1 Quellen
Codex Newsletter. Allgemeines. Codex Newsletter
Newsletter Newsletter Dezember 05 Seite 1 Allgemeines Newsletter Mit diesem Rundschreiben (Newsletter) wollen wir Sie in ca. zweimonatigen Abständen per Mail über Neuerungen in unseren Programmen informieren.
Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten
Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe
Für die Verwendung des Wikis wird dringend der Microsoft Internet Explorer Version 7.0 empfohlen!
Sie finden das FH-Wiki unter der folgenden Adresse: http://wiki.fh-kehl.de:9454 Falls Sie Anregungen, Fragen oder Hinweise haben wenden Sie sich bitte an Herrn Fetterer oder Frau Prof. Dr. Schenk. Für
Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert
Beamen in EEP Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Zuerst musst du dir 2 Programme besorgen und zwar: Albert, das
Anleitung für Berichte in Word Press, auf der neuen Homepage des DAV Koblenz
Anleitung für Berichte in Word Press, auf der neuen Homepage des DAV Koblenz Diese Anleitung soll als Kurzreferenz und Schnellanleitung dienen um einfach und schnell Berichte auf der Homepage www.dav-koblenz.de
ÖKB Steiermark Schulungsunterlagen
ÖKB Steiermark Schulungsunterlagen Fotos von Online-Speicher bereitstellen Da das hinzufügen von Fotos auf unsere Homepage recht umständlich und auf 80 Fotos begrenzt ist, ist es erforderlich die Dienste
XML Tutorium mit Oxygen. Oxygen Version 9.3!!
XML Tutorium mit Oxygen (Version 1.9 vom 4.6.2013) Oxygen Version 9.3!! In den folgenden Lektionen sollen die vermittelten Konzepte zu XML anhand von konkreten Beispielen geübt und vertieft werden. Das
Ev. Kirche Hirschlanden
Ev. Kirche Hirschlanden Cloud-Server Nr. 2 Installationsanleitung mit Hilfe des Windows internen Assistenten Der Server erscheint als Netzwerklaufwerk im Explorer und kann wie ein Rechner-internes Laufwerk
Primzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
Anwendungsbeispiele. Neuerungen in den E-Mails. Webling ist ein Produkt der Firma:
Anwendungsbeispiele Neuerungen in den E-Mails Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Neuerungen in den E- Mails 2 Was gibt es neues? 3 E- Mail Designs 4 Bilder in E- Mails einfügen 1 Neuerungen
HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 1. Ausgabe, Dezember 2011 HTML5
Linda York, Tina Wegener HTML5 Grundlagen der Erstellung von Webseiten 1. Ausgabe, Dezember 2011 HTML5 2 HTML5 - Grundlagen der Erstellung von Webseiten 2 Die erste Webseite mit HTML erstellen In diesem
