Zum Inhalt springen
uencoder

DTD

Eine DTD (Document Type Definition) ist der Strukturdefinitionsmechanismus von XML 1.0; einfacher als XSD, aber begrenzt, und in einer speziellen (nicht-XML-)Syntax geschrieben.

Zweck

Grundlegende Strukturvalidierung für XML bieten und die erlaubten Elemente, Attribute und Hierarchien definieren.

Mechanismus

<!ELEMENT name (content)> deklariert Elemente und Kinder, <!ATTLIST> Attribute, <!ENTITY> Entities. Es gibt kein Typsystem (nur Strings) und keine Namensräume. Vor HTML5 verwendete HTML eine DTD.

Anwendungsfälle

  • DTDs von HTML 4.01 / XHTML 1.0
  • Validierung von Alt-XML-Dokumenten
  • SVG-1.1-DTD
  • Lehrbeispiele

Beispiele

  • Eingabe
    <!ELEMENT name (#PCDATA)>
    Output
    The name element contains text only

    Element declaration

Häufige Fehler

A DTD cannot express modern constraints (types, namespaces)
Migrate to XSD or JSON Schema

Verwandte Begriffe

References