estudo Exemplo: Como transformar XML em XHTML usando XSLT?
Os detalhes deste exemplo será explicado no próximo capítulo.
Declaração Style Sheet correta
O elemento de raiz que declara o documento a ser uma folha de estilo XSL é <xsl:stylesheet> ou <xsl:transform> .
Note: <xsl:stylesheet> e <xsl:transform> são completamente sinônimos e qualquer um pode ser usado!
A forma correcta para declarar uma folha de estilo XSL de acordo com a recomendação de W3C XSLT é:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
ou:
<xsl:transform version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
Para ter acesso aos XSLT elementos, atributos e características que deve declarar o namespace XSLT no topo do documento.
O xmlns: xsl = "http://www.w3.org/1999/XSL/Transform" aponta para o espaço de nomes oficial W3C XSLT. Se você usar este espaço para nome, você também deve incluir a versão atributo = "1.0".
Comece com um documento Raw XML
Queremos transform o seguinte documento XML ("cdcatalog.xml") em XHTML:
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
</catalog>
Viewing XML Files in IE, Chrome, Firefox, Safari, and Opera: Abra o arquivo XML (clique no link abaixo) - O documento XML será exibido com raiz com código de cores e elementos filhos (except in Safari) . Muitas vezes, há um plus (+) ou sinal de menos (-) à esquerda dos elementos que podem ser clicados para expandir ou reduzir a estrutura do elemento. Dica: Para visualizar a fonte XML cru, clique com o botão direito no arquivo XML e selecione "View Source"!
Criar uma folha de estilos XSL
Em seguida, você criar uma folha de estilos XSL ("cdcatalog.xsl") com um modelo de transformação:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Ligar a folha de estilos XSL para o documento XML
Adicione a referência de folha de estilo XSL ao seu documento XML ("cdcatalog.xml") :
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
</catalog>
Se você tem um navegador compatível com XSLT que vai muito bem transform seu XML em XHTML.
Os detalhes do exemplo acima será explicado nos próximos capítulos.