tutoriais mais recente desenvolvimento web
 

XML DTD


Um documento XML com sintaxe correta é chamado de "Well Formed" .

Um documento XML validado contra um DTD é tanto "Well Formed" e "Valid" .


Os documentos XML válidos

A "Valid" documento XML é um "Well Formed" documento XML, que também está em conformidade com as regras de um DTD:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

A declaração DOCTYPE, no exemplo acima, é uma referência para um ficheiro DTD externo. O conteúdo do arquivo é mostrado no parágrafo abaixo.


DTD XML

A finalidade de um DTD é definir a estrutura de um documento XML. Ela define a estrutura com uma lista de elementos legais:

<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>

O DTD acima é interpretado como este:

  • ! Nota DOCTYPE define que o elemento raiz do documento é a nota
  • ! Nota elemento define que o elemento nota deve conter os elementos: "to, from, heading, body"
  • ! ELEMENT a define o que elemento a ser do tipo "#PCDATA"
  • ! ELEMENT partir define a partir de elemento a ser do tipo "#PCDATA"
  • ! ELEMENT título define o elemento de título a ser do tipo "#PCDATA"
  • ! Corpo elemento define o elemento do corpo para ser do tipo "#PCDATA"

#PCDATA Significa que os dados de texto de análise capaz de fazer.


Utilizando DTD para declaração de entidade

Uma declaração DOCTYPE também pode ser utilizado para definir os caracteres especiais e cadeias de caracteres, utilizada no documento:

Exemplo

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE note [
<!ENTITY nbsp "&#xA0;">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: w3ii.">
]>

<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
<footer>&writer;&nbsp;&copyright;</footer>
</note>
Tente você mesmo "

Uma entidade tem três partes: um e comercial (&) , um nome de entidade e um ponto e vírgula (;) .


Quando usar um DTD / Schema?

Com um DTD, grupos independentes de pessoas podem concordar em usar uma DTD padrão para o intercâmbio de dados.

Com um DTD, você pode verificar se os dados que você recebe do mundo exterior é válido.

Você também pode usar um DTD para verificar seus próprios dados.

Se você quer estudar DTD, leia o nosso Tutorial DTD .


Quando não usar um DTD / Schema?

XML não requer um DTD / Schema.

Quando você está experimentando com XML, ou quando você estiver trabalhando com arquivos XML pequenos, criando DTDs pode ser um desperdício de tempo.

Se você desenvolver aplicativos, espere até que a especificação é estável antes de adicionar uma definição de documento. Caso contrário, o seu software pode parar de funcionar por causa de erros de validação.