Document Type Definition (förkortat DTD, kan översättas som Dokumenttypsdefinition) beskriver ett sätt att beskriva strukturen på ett XML- eller ett SGML-dokument. Eftersom HTML har sitt ursprung i SGML, så förekommer DTD:er också ofta för HTML.

Med en DTD kan man ange vilka element, attribut och entiteter som är tillåtna eller obligatoriska för ett dokument som skall följa den specifika SGML- eller XML-tillämpningen. XML som teknik kan sägas ha ärvt DTD:erna från SGML, men det finns skillnader mellan hur DTD:er definieras för de två märkspråken.

DTD:er innehåller en beskrivning av dokumentens schema som möjliggör automatisk validering av deras innehåll. Begränsningarna i syntaxen innebär dock att sådan validering inte kan göras lika noggrant som om man använt någon av de nyare teknikerna RelaxNG eller XML Schema. En DTD kan också innehålla kommentarer ämnade för mänsklig läsning där förväntat angivningsområde för element och attribut anges. Även om dessa kommentarer inte kan kontrolleras maskinmässigt, så krävs det att man följer deras instruktioner för att ett dokument skall vara helt i överensstämmelse med sin angivna DTD.

DTD:er kan anges externt, via en länk, internt längst upp i dokumentet eller som en kombination av dessa.

Moderna webbläsare använder förekomsten av vissa DTD:er som ett sätt att skilja mellan två grundläggande renderingsmetoder av HTML, "Standards Compliance Mode" eller "Quirks Mode". De läser dock inte in DTD:n i sig. XHTML däremot, när den sänds med en XML MIME-deklaration, renderas alltid i standardläge.

Se även redigera