Text
unterscheidet sich von den Elementen TEXT
oder text
.
Die Deklaration eines Elementes sieht folgendermaßen aus:
<!ELEMENT element_name Inhaltsspezifikation >Jede Elementdeklaration beginnt mit dem String
<!ELEMENT
und endet mit >
. Dazwischen wird der Name des Elements und der mögliche Inhalt angegeben. Bei der Spezifikation des Inhaltes sind mehrere Varianten, die in Tabelle 3.1 aufgelistet sind, denkbar.
|
<!ELEMENT element_name (elem_A, elem_B) >In diesem Fall muß also
element_A
vor element_B
innerhalb des Elementes angegeben sein. Ersetzt man das Komma durch einen vertikalen Balken, kann man zwischen den aufgezählten Elementen wählen. Es kann aber nur ein Element aus der Liste verwendet werden.
|
<!ELEMENT element_name ((elem_A | elem_B), elem_C+)* >In diesem Fall kann das Element entweder
elem_A
oder elem_B
gefolgt von einem oder mehreren elem_C
-Elementen beinhalten. Da der ganze Inhalt mit Indikator *
gekennzeichnet ist, kann der Inhalt des Elements leer sein oder mehrmals wiederholt werden.
Ähnlich wie Elemente müssen auch deren Attribute in der DTD deklariert werden. Attribute werden durch die folgende Zeile definiert:
<!ATTLIST element_name attribut_name Typ [Vorgabewert]>Eine Zeile wird durch
<!ATTLIST
eingeleitet. Danach muß der Name des Elements angegeben werden, für den das Attribut definiert wird, gefolgt vom Namen des Attributs. Anschließend wird der Typ des Attributs festgelegt, wobei man wieder zwischen mehreren Typen unterscheiden kann.
|
<!-- DTD einer Literturliste --> <!ELEMENT Literaturliste (Buch | Zeitschrift)*> <!ELEMENT Buch (Titel, Autor+)> <!ATTLIST Buch ISBN CDATA #REQUIRED language CDATA "DE" preis CDATA #IMPLIED > <!ELEMENT Zeitschrift (Titel, Autor+)> <!ATTLIST Zeitschrift language CDATA "DE" preis CDATA #IMPLIED > <!ELEMENT Titel #PCDATA> <!ELEMENT Autor (Name, EMail?)> <!ELEMENT Name #PCDATA> <!ELEMENT EMail #PCDATA> |