DTD ou XML Schema

Um documento XML poderá conter vários tipos de informação, ou seja, um documento XML poderá ser adaptado mediante as necessidades.

Para entender-mos melhor este conceito podemos definir o XML como a linguagem mãe e todas as suas adaptações como sub – linguagens ou meta – linguagens. Existem duas meta – linguagens com as quais podemos definir as sub – linguagens que poderemos obter a partir do XML, e são elas o DTD e o XML Schema.

O DTD (Defenition Type Document) utiliza uma sintaxe especial que é diferente da sintaxe do XML. Continua a ser uma linguagem simples embora seja um pouco rara. De modo a evitar a sintaxe especial do DTD tentou-se encontrar uma outra forma de escrever em XML a definição de outra linguagem, foi então que apareceu o XML Schema.

É importante referir que tanto o DTD como o XML Schema permitem comprovar a integridade dos dados de qualquer documento.

É estimado que cerca de 70% das linhas de código escritas pelo programador são orientadas a comprovar a integridade dos dados.
É extremamente importante verificar a integridade dos dados, eliminando assim a probabilidade de processar dados com erros que poderiam tornar-se desastrosos no futuro.

Share

Já expliquei anteriormente que o XML é relativamente simples e que possui poucas normas na sua sintaxe, ou seja, é o programador que adapta as tag’s ao que necessita.

Para o XML conseguir obter esta simplicidade foi necessário recorrer a algumas tecnologias relacionadas, que ficaram encarregues de gerir alguns processos importantes dentro de uma aplicação em XML. Podemos dizer que a sintaxe, a forma de a aplicar, programar e aceder a bases de dados só é da forma que é devido a essas mesmas tecnologias.

Algumas das tecnologias que tornaram o CML tão modular são:

- Conteúdos: DTD ou XML Schema
- Desenho: CSS ou XSL
- Programação: SAX ou DOM

Estas foram as principais tecnologias que ajudaram a tornar o XML tão robusto e simples.

Share

O XML foi criado com o objectivo de colmatar todas as falhas que o HTML tinha, pelo que foi melhor planeado e implementado.

A quando da projecção e criação do XML foi necessário definir algumas prioridades, tais como:

- O XML deveria ser idêntico na forma de receber e processar informação, aproveitando toda a tecnologia já implantada no HTML.
- Ser formal e conciso no modo de processar e armazenar informação.
- Ser fácil de ler e editar
- Ser fácil de implementar, programar e aplicar em sistemas diversos.

Podemos usar o XML em infinitos tipos de trabalhos e esta linguagem apresenta vantagens em diversas situações, tais como:

- Facilitar a comunicação de dados. Se a informação for transferida em XML, qualquer aplicação deveria ser capaz de escrever um documento com os dados em XML e usa-los.
- Facilitar a migração de dados. Caso fosse necessário mover os dados de uma base de dados para outra todo o processo seria facilitado se ambas estivessem em formato XML.
- Integração com aplicações Web. Antigamente cada browser interpretava a informação à sua maneira e era necessário programar em função do browser que seria utilizado. Ao usar o XML passamos a ter apenas uma aplicação que geria e armazenava todos os dados para que estes pudessem ser implementados em qualquer sitio.

Os demonstrados são apenas algumas das muitas funcionalidades que o XML apresenta.

Share

Diferenças entre o HTML e o XML

Como sabemos o HTML e o XML tem em comum a mesma base, ou seja, o SGML pelo que existem algumas semelhanças entre ambas as linguagens, mas também existem muitas diferenças.

Podemos dizer que a principal função do HTML é formatar dados, e para isso usa tag’s para definir a localização que esses mesmos dados irão ocupar. Por outro lado o XML apenas tem como função armazenar e estruturar informação.

Se fizermos uma análise cuidada às principais características de cada uma das linguagens verificamos que para conseguir obter um bom resultado ambas as linguagens terão de trabalhar em conjunto, cada uma na sua área específica.

A principal razão para ser inviável o armazenamento e processamento de grandes quantidades de dados em HTML prende-se com a mistura de estilos e tag’s. Seria extremamente confuso programar em simultâneo a apresentação e formatação dos dados e o armazenamento e processamento desses mesmos dados tudo isto recorrendo a tag’s semelhantes.

Para que possamos tornar a programação mais simples e as aplicações mais robustas devem ser conjugadas ambas as linguagens e usar o HTML apenas para formatar e apresentar dados enquanto  o XML deve ser usado para o armazenamento e processamento da informação.

Share

Sintaxe do XML

Como já disse anteriormente o XML teve como base o SGML e podemos dizer que o XML é cerca de 10% de SGML.
Um ficheiro XML pode ser escrito num qualquer documento de texto ASCII, como se faria no HTML e no cabeçalho do documento temos de colocar o seguite:

<?xml versao=”1.0″?>

O restante documento poderá ser escrito à base de tag’s (etiquetas) como seria feito em HTML. O XML consiste em definir o armazenamento de informação dentro de tag’s, podendo ter assim a informação bem organizada.

Qualquer tag poderá incluir no seu interior atributos, sem que tenhamos de respeitar qualquer limite quanto a isso.

Por exemplo:

<tab atributo1=”valor1″ atributo2=”valor”></tag>

Ou então:

<tab atributo1=”valor1″ atributo2=”valor” />

Em XML também é possível comentar o código do ficheiro e podemos fazê-lo da mesma forma que seria feito em HTML:

<! — Comentário –>

Podemos dizer que o XML tem uma sintaxe muito simples e intuitiva, pois funciona à base de tag’s que armazenam informação mas temos de ter em conta que o XML tem ao seu redor muitas outras tecnologias e linguagens de programação que fazem dela tão modular.
Aqui está um exemplo que demonstra como é feito o armazenamento de informação usando tag’s num ficheiro XML:

<?xml version=”1.0″?>

<filme nome=”O Padrinho” ano=1985>
<elenco>
<director nome=”Francis Ford Coppola”></director>
<interprete nome=”Marlon Brando” interpreta”Don Corleone”></interprete>
<interprete nome=”Al Pacino” interpreta=”Michael Corleone”></interprete>
</elenco>
<roreiro descrição=”Filme de máfias sicilianas nos Estados Unidos”></roteiro>
</filme>

Ou então:

<?xml version=”1.0″?>

<filme nome=”O Padrinho” ano=1985>
<elenco>
<director nome=”Francis Ford Coppola” />
<interprete nome=”Marlon Brando” interpreta”Don Corleone” />
<interprete nome=”Al Pacino” interpreta=”Michael Corleone” />
</elenco>
<roreiro>Filme de máfias sicilianas nos Estados Unidos</roteiro>
</filme>

Como podemos verificar no exemplo acima indicado cada um de nós pode inventar as tag’s que bem entender e fazer a sua ordenação da forma que quiser, sem que haja restrições para esse efeito.

Share