Pessoal, XML é o Codigo de Internet Pré Programavel, e Lucas, pare de mandar Torpedos pedindo as respostas das provas de PHP Super Codificados, eu só darei para quem fez a prova! Quem lê o significado da sigla XML - Extensible Markup Language - pode ser levado a pensar que é apenas uma linguagem a mais, como tantas outras. Entretanto, a palavra chave em XML, o "X" da questão, é "extensível". Isso significa que XML está em um nível de abstração onde ela é considerada uma meta-linguagem. Em termos mais simples, uma meta linguagem é capaz de permitir a criação de outras linguagens. Esta criação se dá basicamente pela definição de novos conjuntos de tags, e pelas regras que um documento XML deve seguir.
É importante perceber que XML é um meio e não um fim, ou seja, não basta criar novas tags, é necessário também definir o que elas significam e como um dado programa deve interpretá-las. Para darmos um exemplo, seja o seguinte fragmento de HTML descrevendo uma faixa de um CD:
<dl>
<dt>Gente Humilde
<dd>por Chico Buarque, Vinícius de Moraes e Garoto
<ul>
<li>produtor: Chico Buarque
<li>gravadora: Polygram
<li>duraþÒo: 3min 21 seg
<li>gravado em 1974
<li>intÚrprete: Chico Buarque
</ul>
É uma tendência natural em muitos artigos e livros mostrar o mesmo exemplo em XML, como se segue:
&lt;?xml version=&quot;1.0&quot; encoding=&quot;iso-8859-1&quot;?&gt;
<MUSICA>
<TITULO>
Gente Humilde</TITULO>
<COMPOSITOR>
Chico Buarque</COMPOSITOR>
<COMPOSITOR>
Vinícius de Moraes</COMPOSITOR>
<COMPOSITOR>
Garoto</COMPOSITOR>
<PRODUTOR>
Chico Buarque</PRODUTOR>
<GRAVADORA>
Polygram</GRAVADORA>
<DURACAO>
3min 21seg </DURACAO>
<ANO>
1974</ANO>
<INTERPRETE>
Chico Buarque</INTERPRETE>
</MUSICA>
Não há nada errado com o exemplo, aliás ele parece fazer sentido e ser fácil de entender. O que está sutilmente subentendido é que neste caso você, o leitor, está fazendo o processamento XML de forma até mesmo inconsciente. O fato de usarmos tags como MUSICA ou TITULO é apenas uma conveniência para nós, humanos, podermos ler e entender melhor.
Mas XML aceitaria perfeitamente um documento como:
&lt;?xml version=&quot;1.0&quot; encoding=&quot;iso-8859-1&quot;?&gt;
<M>
<T321>
Gente Humilde</T321>
<CP>
Chico Buarque</CP>
<CP>
Vinícius de Moraes</CP>
<CP>
Garoto</CP>
<PD>
Chico Buarque</PD>
<GDA>
Polygram</GDA>
<DR>
3min 21seg </DR>
<a>1974</a>
<IP>
Chico Buarque</IP>
</M>
O fato é, um documento XML necessita de alguém, ou algum programa, que o processe, transformando-o seja em uma página HTML, seja usando o conteúdo para inserir num banco de dados ou usar como um comando.
Este é o acordo que deve existir entre os chamados "produtor" e "consumidor", ou seja, quem cria e quem processa documentos XML.
Processando um documento XML
Para processarmos um documento XML, em primeiro lugar devemos definir qual nosso objetivo. No caso mais comum, desejamos simplesmente apresentar o documento num browser. Isto significa efetuar uma transformação nos tags XML em tags reconhecidos por HTML. Fazemos isso através de um programa que vai percorrer o documento XML, reconhecer cada tag e determinar qual a saída desejada.
É neste ponto que a chance de confusão aparece. Há diversas maneiras de fazer este processamento, tanto implícitas como explícitas. Por implícita entende-se que o browser fará a transformação internamente. Por explícita entende-se que escreveremos um programa especializado. As transformações mais comuns são as implícitas, através de CSS e XSL. Isto quer dizer que browsers mais modernos são capazes de aceitar documentos XML e CSS (ou XSL), efetuando a apresentação. Neste caso, a programação é feita de maneira declarativa: a cada tag XML corresponde uma ou mais tags HTML, e no caso de XSL podemos inclusive determinar as tags HTML em função do contexto.
Em outra situação, podemos nós mesmos criar um programa para processar o documento XML, por exemplo para inserir seu conteúdo em um banco de dados. Para tanto, temos que percorrer as tags, e processá-las. Para facilitar nossa vida, como XML é estruturalmente simples e bem definida, há vários programas shareware disponíveis para fazer o processamento inicial (reconhecer as tags), chamados de parsers. As duas ferramentas mais conhecidas são o DOM (a Microsoft oferece um objeto COM para tratar), e SAX (usado mais comumente com Java).
Conclusão
XML é muito mais que uma linguagem. É uma nova maneira de definir informação. Quanto melhor entendermos seus objetivos, melhor poderemos usá-lo de maneira efetiva. Não se intimide pela "sopa de letras" - XHTML, XSLT, etc. Cada uma destas siglas define um vocabulário e um processamento específico para documentos XML.

Nenhum comentário:
Postar um comentário