XML Schema XML schema é um vocabulário XML para expressar regras de negócios (sobre os dados).
XML DTD’s e Schemas
description
Transcript of XML DTD’s e Schemas
![Page 1: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/1.jpg)
XMLDTD’s e Schemas
Sharp Shooters .NETUniversidade Federal de Pernambuco
Centro de InformáticaRecife, 21/10/2002
Autor: Marden Menezes Costa
![Page 2: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/2.jpg)
Última reunião
• O que é XML?• Como escrever código XML• Documentando códigos C# com XML
![Page 3: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/3.jpg)
Hoje...
• Padrões• Dados com XML• Visão geral de DTD e Schemas XML
![Page 4: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/4.jpg)
Falando de Padrões
• Informações desencontradas• Informações que só eram entendidas localmente• Torre de Babel na Informática• A solução : Padrões• Empresas surgiram apenas para esse fim
![Page 5: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/5.jpg)
Dados
• Antigamente havia transmissão via arquivos de texto• Causa constante de problemas entre empresas ou
sistemas diferente;• Os dados não eram auto-explicativos: não se sabia o
que cada dado queria dizerVejamos um exemplo:
18/02/1980,"Rua Canario, 33",Mariquinha,2233-0997
23/04/1972,"Al das Rosas, 443",José,9987-0986
![Page 6: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/6.jpg)
XML como solução
Utilizando XML, qualquer sistema pode receber os dados e saber o que cada um representa. Veja como fica o código acima em XML:
![Page 7: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/7.jpg)
<?xml version="1.0" encoding="utf-8" ?><MeusDados>
<Pessoas><Nome>Mariquinha</Nome><Endereco>Rua Canario, 33</Endereco><Telefone>2233-0997</Telefone><DataNascimento>18/02/1980</DataNascimento>
</Pessoas><Pessoas>
<Nome>José</Nome><Endereco>Al das Rosas, 443</Endereco><Telefone>9987-0986</Telefone><DataNascimento>23/04/1972</DataNascimento>
</Pessoas></MeusDados>
XML como solução
![Page 8: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/8.jpg)
Note o seguinte:
– A primeira linha é obrigatória e indica a versão do XML e qual o conjunto de caracteres usados no documento.
– MeusDados indica o nome do conjunto de dados
– Pessoas dá nome a cada linha. Como os dados são oriundos de um banco de dados relacional, todas as linhas têm o mesmo nome que corresponde ao nome da tabela;
– Os dados têm uma “etiqueta” que os identifica.
XML como solução
![Page 9: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/9.jpg)
DTD
• Um problema foi solucionado, mais isso causa outros...• Como validar os dados que foram recebidos? • DTD é uma das soluções para esse problema!
![Page 10: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/10.jpg)
DTD
• Definição do Tipo de Documento (DTD);• Herança da lingugem SGML;• Sintaxe diferente de XML;• Define o formato de um documento XML, a estrutura de
um documento válido;• A ordem e a quantidade de elementos em um
documento XML, formando um padrão para um certo documento;
• Os elementos de um documento XML terão seus atributos definidos, assim como outras características de um XML
• A DTD pode ser declarada isoladamente ou internamente eu um documento XML
![Page 11: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/11.jpg)
Código com DTD
<?xml version="1.0"?> <!ELEMENT FIGURE (IMAGE, CAPTION)>
<!ATTLIST FIGURE DESCRIPTION CDATA #IMPLIED><!ELEMENT IMAGE EMPTY><!ELEMENT CAPTION (#PCDATA)>
O elemento FIGURE deve conter IMAGE e CAPTION e, ao mesmo tempo, deve ter um atributo de descrição. O elemento IMAGE deve estar vazio e o elemento CAPTION deve possuir um texto, instruções de processamento e quaisquer outros textos XML à exceção de outros elementos
Descrição retirada de:http://www.imasters.com.br/web/canais/xml/artigos/principais_caracteristicas.asp
![Page 12: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/12.jpg)
XML Schemas
Mas a DTD não resolve um problema: como definir os tipos dos dados? Como eu poderia dizer, por exemplo, que o número de uma não pode conter palavras?XML Schemas resolve!
• Linguagem com sintaxe XML;• Possibilidade de definir os tipos para o conteúdo e os
atributos dos elementos XML;• XML Schemas podem ser definidos isoladamente ou
internamente em no documento XML;
![Page 13: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/13.jpg)
DTD
• Definição do Tipo de Documento (DTD);• Herança da lingugem SGML;• Sintaxe diferente de XML;• Define o formato de um documento XML, a estrutura de
um documento válido;• A ordem e a quantidade de elementos em um
documento XML, formando um padrão para um certo documento;
• Os elementos de um documento XML terão seus atributos definidos, assim como outras características de um XML
• A DTD pode ser declarada isoladamente ou internamente eu um documento XML
![Page 14: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/14.jpg)
XML SchemasO Visual Studio .NET permite a edição tanto de arquivos XML com dados como também de “schema”.
![Page 15: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/15.jpg)
XML Schemas
Clicando em XML Schemas, abrirá uma janela onde você poderá desenhar a tabela com as ferramentas do Toobox e modificar as características necessárias.O próximo slide mostra um exemplo feito por Mauro Sant’anna.
![Page 16: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/16.jpg)
![Page 17: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/17.jpg)
XML Schemas
O XML Schema desenhado no Visual Studio .NET cria o seguinte código (próximo slide):
![Page 18: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/18.jpg)
![Page 19: XML DTD’s e Schemas](https://reader036.fdocumentos.tips/reader036/viewer/2022082712/568140a8550346895dac6869/html5/thumbnails/19.jpg)
Referências
Demos aqui apenas uma leve introdução ao modo de trabalhar com dados utilizando XML, para maiores informações:• www.imasters.com.br• www.microsoft.com.br (coluna de Mauro Sant’anna)