por Filipe Abelha No último post introduzimos a linguagem de marcação XML: sua definição e estrutura. Agora vamos abordar uma das ferramentas de validação de estrutura de um documento XML, o Document Type Definition (DTD). A W3C define o DTD como uma ferramenta de validação da construção dos blocos de um documento XML, através de uma lista de elementos e atributos que são esperados ou obrigatórios. O DTD pode ser declarado tanto no mesmo arquivo do XML, quanto em um arquivo separado. Estrutura do DTD Para melhor exemplificar a estrutura do DTD, vamos inserí-lo no arquivo XML do nosso exemplo de uma receita de pão simples do último post: 01 <?xml version="1.0" encoding="UTF-8"?> O DTD está inserido entre as linhas 3 e 17, onde: - todo DTD começa com a tag DOCTYPE e com o nome da estrutura que existe no arquivo XML (receita no nosso exemplo). - todo elemento do documento XML é declarada através das estruturas <!ELEMENT nome-do-elemento categoria> (quando não possui sub-elementos) e <!ELEMENT nome-do-elemento (elementos filhos)> (quando possuem sub-elementos); como exemplos, temos as linhas 5 e 4, respectivamente. - #PCDATA significa que os dados serão interpretados pelos sistemas, por exemplo: o 0 (zero) apesar de estar representado pelo caracter '0', deverá ser interpretado como um número. - o sinal "+" nos sub-elementos das linhas 6 e 8 indicam que deve existir ao menos uma ocorrência daquele sub-elemento. - todo atributo de elemento do documento XML é declarado através da estrutura <!ATTLIST nome-do-elemento nome-do-atributo tipo-do-atributo necessidade-de-ocorrencia>. - #REQUIRED e #IMPLIED são utilizados quando o atributo é obrigatório ou não obrigatório, respectivamente, em cada ocorrência do elemento. Para maiores detalhes sobre as regras e o funcionamento do DTD, sugiro o acesso aos links de referência ao final do post. No próximo post colocaremos os assuntos que vimos nas últimas semanas em prática, pois abordaremos a Integração via Pop-up com Http Post/XML (mais uma forma de integração com a iVarejo). tags: #xml, #dtd, #w3c Fontes: http://www.w3schools.com/dtd/default.asp http://www.w3.org/XML/ |
Blog >