XML… O que é?

Wednesday, September 19th, 2007

XML não é linguagem de marcação

Xml não é uma linguagem de marcação, ou seja, não é HTML, pois não possui TAG’s predefinidas, quem cria o documento XML define-as. Agora podemos perguntar, para que utilizar o XML se temos o HTML? É simples, imagine procurar em um fonte HTML um endereço qualquer, ou melhor dezenas de endereço e organiza-los da maneira que quiser… Não digo que não teria como, mas no mínimo deveria estar seguindo um padrão mínimo.
Com o XML é tarefa fácil, pois cada dado contido no arquivo, tem sua própria identificação como por ex.:

<pessoa>
<nome>Andrey Pedro Lefkum</nome>
<email>andrey@andrey.com.br</email>
</pessoa>

No exemplo acima as tag’s são chamadas Metatags, ou seja, os dados dos dados.

Criando um documento XML

Agora que sabemos o que é um documento XML, vamos a sua criação:

<?xml version="1.0" encoding="ISO-8859-1"?>

Nessa primeira linha abrimos com a tag <?xml e posteriormente a versão utilizada do padrão XML como também a codificação
do arquivo que no caso acima é o ISO-8859-1, que não será abrangido agora.

Documentos XML são árvores:

<?xml version="1.0" encoding="ISO-8859-1"?>
<pessoas>
    <pessoa>
        <nome>Andrey Pedro Lefkum</nome>
        <email>andrey@andrey.com.br</email>
    </pessoa>
    <pessoa>
        <nome>Adelaide Silva</nome>
        <email>adelaide@adelaide.com.br</email>
    </pessoa>
</pessoas>

Obs.: Salve o documento com a extensão XML exemplo "teste.xml"

Observe que temos uma tag raiz ou também chamada de root "pessoas" e dentro dela existem várias pessoas. Podemos dizer que
cada pessoa está dentro de uma pasta chamada pessoa e por sua vez dentro da pasta pessoas, dessa forma visualizamos que
XML nada mais é do que metadados estruturados em forma de árvores

Elementos e Atributos

Elementos são conhecidos por TAGs ou metadados, ou seja, no exemplo acima <nome>, <email>, são elementos ou também chamados
de nós. 

Elemento  
<nome>

dado
Andrey Pedro Lefkum

Fim do Elemento
</nome>

Podem ocorrer casos de não conter dado em elementos, desse modo devem ser escritos da seguinte maneira:

<nome /> 

Abre e fecha a tag no mesmo instante.

Atributos são metadados adicionais aos dados, ex.:

<pessoa codigo=”3432″>
    <nome></nome>
</pessoa>

Código é um atributo do elemento pessoa.

Documento bem formatado

Além de utilizar sempre na primeira linha:
<?xml version="1.0" encoding="ISO-8859-1"?>

Documentos XML bem formatados precisam ser algumas regras:
  • Case Sensitive, ou seja se um elemento for aberto <ArQUIvo>, deve ser fechado </ArQUIvo>;
  • Ordem de abertura e fechamento, ou seja, a primeira tag que foi aberta dever ser a última a ser fechada <pessoa><nome>andrey</nome></pessoa>;
  • Todo documento XML deve ter um elemento ROOT ou raiz, nem mais nem menos.
  • Dados de atributos devem sempre estar dentro de aspas diplas: codigo=”32234″.

Validando o documento XML

Para saber se o documento está bem formatado utilizamos outro arquivo com extensão DTD ou XMLschema, que podemos chama-los de metadado dos metadados dos dados, confuso? É o cara que tira as dúvidas restantes ao ler um documento XML, desse modo se ainda há alguma dúvida referente ao dado contido dentro do elemento com esses dois arquivos acabam.

Integrando XML no HTML através do XSL

Wednesday, September 12th, 2007

Arquivos XSL (eXtemsible Stylesheet Language) são responsáveis por integrar arquivos XML dentro do HTML.

Primeiramente vamos criar nosso documento XML:
Obs.: Perceba que na segunda linha do xml temos a indicação do XSL que fará a formatação desses dados

<?xml version=”1.0″ encoding=”ISO-8859-1″ ?>
<?xml-stylesheet type=”text/xsl” href=”xonga.xsl”?>
<lista>
<aluno>
<codigo>34</codigo>
<nome>Andrey Pedro Lefkum</nome>
</aluno>
<aluno>
<codigo>23</codigo>
<nome>Thais Castro</nome>
</aluno>
</lista>

Com o XML pronto, precisamos desenvolver nosso HTML:

<?xml version=”1.0″ encoding=”ISO-8859-1″?>
<xsl:stylesheet version=”1.0″ xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>
<xsl:template match=”/”>
<html>
<head>
<title>Xonga</title>
</head>
<body>
<table width=”100%” border=”1″>
<tr>
<td>Código</td>
<td>Nome</td>
</tr>
<xsl:for-each select=”lista/aluno”>
<tr>
<td><xsl:value-of select=”codigo” /></td>
<td><xsl:value-of select=”nome” /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

Abra o Arquivo XML e veja o resultado.

Faça o download do exemplo abaixo:

Download: Exemplo


This is a free Wordpress template provided by Mathew Browne | Web Design | SEO