Uma Definição de Tipo de Documento (DTD) é um conjunto de declarações de marcação que definem um tipo de documento para documentos SGML (Standard Generalized Markup Language - Linguagem de Marcação Generalizada Padrão) e XML (Extensible Markup Language - Linguagem de Marcação Extensível). Ela especifica a estrutura, elementos, atributos e entidades que podem ser usados em um documento que esteja em conformidade com essa DTD. As DTDs são usadas para validar documentos XML, garantindo que eles adiram a um formato e estrutura específicos. Elas definem as regras sobre como os elementos podem ser aninhados, quais atributos são permitidos para cada elemento e os tipos de dados desses atributos. Embora as DTDs fossem amplamente utilizadas nos primórdios do XML, elas apresentam limitações, como a falta de suporte para tipos de dados além de strings e a dificuldade em expressar relações complexas. Como resultado, a Definição de Esquema XML (XSD) e outras linguagens de esquema tornaram-se mais populares para definir estruturas de documentos XML. No entanto, as DTDs ainda são encontradas, particularmente em aplicações XML mais antigas e sistemas legados. Elas fornecem uma maneira formal de descrever a gramática de um documento XML, permitindo que parsers e aplicações processem o documento corretamente.