Teil 4: XML-Kurs 3
Nun aber zu den DTD-Anweisungen für unser Beispieldokument. Tags werden in DTDs als Elemente bezeichnet. Zuerst steht in der DTD das Wurzelelement mit seiner Definition:...
Nun aber zu den DTD-Anweisungen für unser Beispieldokument. Tags werden in DTDs als Elemente bezeichnet. Zuerst steht in der DTD das Wurzelelement mit seiner Definition:
<!ELEMENT news (nachricht+)>
Der Name des Elements zeigt an, dass nun für dieses Element Bedingungen folgen. Die Bedingungen stehen in runden Klammern. In diesem Fall, dass unter dem Dokument das Element nachricht vorkommt. Das Plus nach nachricht gibt an, dass es einmal oder öfter auftauchen muss.
In ähnlicher Weiße geht es nun tiefer in die Hierarchie. nachricht muss einmal oder öfter titel enthalten. inhalt kann dank Stern-Symbol (*) gar nicht, einmal oder öfter vorhanden sein.
<!ELEMENT nachricht (titel+, inhalt*)>
Das Element nachricht enthält außerdem ein Attribut namens id:
<!ATTLIST nachricht id ID #REQUIRED>
Dieses Attribut hat die Art ID, ist also ein eindeutiger Identifizierer. #REQUIRED gibt an, dass das Element vorhanden sein muss. Die wichtigsten alternativen Angaben sind:
#FIXED "Wert" mit einem von vornherein festgelegten Vorgabewert, der vom Parser immer übernommen werden muss,
"Wert" als Vorgabewert, der nur verwendet wird, wenn kein sonstiger Wert angegeben ist und
#IMPLIED für ein optionales Attribut.
Die zwei weiteren Tags titel und inhalt enthalten selbst keine Tags mehr, sondern Text.
<!ELEMENT titel (#PCDATA)>
<!ELEMENT inhalt (#PCDATA)>
Dieser Text besteht aus Daten, die der XML-Parser ausgeben soll. Dafür steht #PCDATA (auch Parser Coded Data). Ein alternativer Datentyp wäre #CDATA. Diese Daten ignoriert der Parser. Es handelt sich dabei oft um Programmcode in einer Skriptsprache.
Um die Wirkungsweise einer DTD zu testen, müssen Sie das Dokument dagegen validieren. Der Internet Explorer ab Version 5 besitzt einen eingebauten XML-Parser, der DTDs darstellen kann. Allerdings validiert er nicht automatisch.

Um ein Dokument schnell zu validieren, können Sie ein beliebiges Online-Tool verwenden (beispielsweise www.stg.brown.edu/service/xmlvalid/). Natürlich gibt es auch für eine Menge anderer Tools, XML-Editoren etc. Validierungsmöglichkeiten. Für den Anfang genügt aber ein kleiner Online-Test, ob alles passt.