Definição de Tipo de Documento
Uma definição de tipo de documento (inglês: document type definition, DTD) é um conjunto de declarações de marcação que definem um tipo de documento para uma linguagem de marcação da família da SGML (SGML, XML, HTML).
Uma Definição de Tipo de Documento (DTD) define os blocos de construção lícitos de um documento XML. Define a estrutura do documento com uma lista de elementos lícitos e atributos. Uma DTD pode ser declarada em uma linha dentro de um documento XML ou na forma de uma referência externa.
A XML usa um subconjunto da DTD da SGML.
Associando DTDs com documentos
Existem duas metalinguagens com as quais definir as linguagens que podemos obter a partir de XML, o DTD e o XML Schema.
O DTD, Definition Type Document, tem uma sintaxe especial, diferente da de XML, que é simples, embora seja um pouco rara se nunca tiver visto um.
Um detalhe importante de assinalar na hora de falar do DTD é que estas linguagens também permitem comprovar a integridade dos dados em qualquer momento. Calcula-se que um 70% das linhas de código que escreve um programador estão orientadas a comprovar a integridade dos dados, ou seja, comprovar se onde se supõem que existe um número efetivamente o exista, se o número é inteiro ou qualquer outra comprovação. Nossas metalinguagens de XML nos servem para pegar um documento XML e comprovar que os dados que ele inclui são válidos, comprovando se o que temos no XML concorda com o que teríamos que ter. Isso pode ser feito ao ler o documento, se não forem válidos tira-se uma mensagem de erro e se detém o processo do documento. Se forem válidos, fazemos o que for sem ter que nos preocuparmos pela integridade dos dados.
A DTD é uma Document Type Definition.
A DTD define a estrutura e os elementos legais e atributos de um documento XML.
Uma DTD (Document Type Definition) pode, ser definida como um conjunto de regras que define quais tipos de dados e entidades farão parte de um documento XML. Estas regras serão utilizadas para que o analisador sintático verifique se o documento está correto ou não.
A DTD pode estar definida dentro do próprio arquivo XML ou em um arquivo à parte com extensão .dtd, que deve ser incluído no código XML. A DTD pode ser usada para padronizar um documento XML e torná-lo bastante coerente com as necessidades do programador, porém sua criações não é obrigatória. DTDs Externas: Quando temos um documento
XML muito extenso, é melhor utilizarmos um DTD externa, o que traz boa qualidade com super organização do dados. DTDs Internas: A DTD interna e melhor trabalharmos quando usamos pequenos documentos XML.
Fonte: Wikipédia