xslt padrão para xtensible stylesheet language, e é uma linguagem de folha de estilos para...

38
XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Upload: yago-fontes

Post on 07-Apr-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT

Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha

de estilos para dcoumentos XML

Page 2: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSL = Style Sheets for XML

• XSL descreve como um documento XML deve ser exibido.

• XSL é mais que uma folha de estilo:– XSL é uma linguagem para transformar

documentos XML– XPATH uma linguagem que permite navegar

entre documentos XML– XSL-FO, uma linguagem para formatar

documentos XML.

Page 3: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT

• XSLT é uma linguagem para transformar documentos XML em documentos HTML ou para outros documentos XML.

• XSLT é a parte mais importante da XSL.• XSLT é uma recomendação da W3C.

Page 4: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT = XSL Transformations

• XSLT é a mais importante parte da XSL.• XSLT é utilizada para transformar um

documento XML em outro documento XML ou em outro tipo de documento que possa ser reconhecido por um navegador, como HMTL ou XHTML.

• Normalmente isso é realizado pela transformação de cada elemento XML em um elemento (X)HTML.

Page 5: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT usa XPATH

• XSLT utiliza XPATH para encontrar informações em um documento XML.

• XPATH é utilizado para navegar através dos elementos e atributos XML.

• No processo de transformação XSLT usa XPATH para encontrar dados pré definidos em um template.

Page 6: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

NAVEGADORES XSLT

• Mozilla Firefox • Internet Explorer 6 • Google Chrome• Opera• Apple Safari

Page 7: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT - Transformação

• Declaração de estilo, de acordo com a recomendação 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">

Page 8: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Exemplo

• Crie um xml para catalogar coleções de uma loja de CD, com os elementos catalogo (raiz), cd, titulo, artista, país, gravadora, preço, ano.

• Insira pelo menos 5 artistas e seus dados.• Salve como catalogo_cd.xml• Teste seu novo xml.

Page 9: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

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

<cd><titulo> </titulo><artista> </artista><pais> </pais><gravadora> </gravadora><preco> </preco><ano> </ano></cd><cd>

..........</cd>

</catalogo>Exemplo em www.ezmail.com.br/xml/catalogo.zip

Page 10: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <tr> <td>.</td> <td>.</td> </tr> </table> </body> </html></xsl:template></xsl:stylesheet>

Salve como catalogo.xsl

Page 11: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:template>O elemento <xsl:stylesheet> define que odocumento é um folha de estilos XSLT,sua versão e o atributo namespace doXSLT.<?xml version="1.0" encoding="ISO-8859-1"?>

<xsl:stylesheet version="1.0"<xsl:stylesheet version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/"> <html> <body> <h2>Minha coleção</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <tr> <td>.</td> <td>.</td> </tr> </table> </body> </html></xsl:template></xsl:stylesheet>

Page 12: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:template>• Um folha de estilos XSL consiste em um ou mais conjunto

de regras que são chamados de TEMPLATES.• Um template contem regras a serem aplicados quando um

nó especificado é encontrado.• O elemento <xsl:template> é utilizado para construir um

template.<?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template <xsl:template match="/"> <html> <body> <h2>Minha coleção</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <tr> <td>.</td> <td>.</td> </tr> </table> </body> </html></xsl:template></xsl:stylesheet>

Page 13: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<xsl:template match="/">

• O elemento <xsl:template define um template e match=“/” associa o atributo ao template com a raiz da fonte XML.

• O conteúdo dentro do atributo<?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="/"> match="/"> <html> <body> <h2>Minha coleção</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <tr> <td>.</td> <td>.</td> </tr> </table> </body> </html></xsl:template></xsl:stylesheet>

Page 14: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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><html> <body><body> <h2>Minha coleção</h2><h2>Minha coleção</h2> <table border="1"><table border="1"> <tr bgcolor="#9acd32"><tr bgcolor="#9acd32"> <th>Titulo</th><th>Titulo</th> <th>Artista</th><th>Artista</th> </tr></tr> <tr> <td>.</td> <td>.</td> </tr> </table> </body> </html></xsl:template></xsl:stylesheet>

Page 15: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção de CDs</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <xsl:for-each select="catalogo/cd"><xsl:for-each select="catalogo/cd"> <tr><tr> <td><xsl:value-of select="titulo"/></td><td><xsl:value-of select="titulo"/></td> <td><xsl:value-of select="artista"/></td><td><xsl:value-of select="artista"/></td> </tr></tr> </xsl:for-each></xsl:for-each> </table> </body> </html></xsl:template></xsl:stylesheet>

O elemento <xsl:value-of> extrai o O elemento <xsl:value-of> extrai o valor de um nó selecionado. valor de um nó selecionado.

O valor do atributo select contém uma O valor do atributo select contém uma expressão XPath. Ela funciona como a expressão XPath. Ela funciona como a navegação num sistema de arquivos navegação num sistema de arquivos onde uma barra à frente (/) seleciona onde uma barra à frente (/) seleciona subdiretórios. subdiretórios.

Page 16: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Juntando xsl ao xml

• Abra o catalogo.xml e adcione:<?xml version="1.0" encoding="ISO-8859-

1"?>

<?xml-stylesheet type="text/xsl" <?xml-stylesheet type="text/xsl" href="catalogo.xsl"?> href="catalogo.xsl"?>

<catalogo> Salve e verifique a modificação

Page 17: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSL = Style Sheets for XML

• Recordando• XSL descreve como um documento XML deve

ser exibido.• XSL é mais que uma folha de estilo:

– XSL é uma linguagem para transformar documentos XML

– XPATH uma linguagem que permite navegar entre documentos XML

– XSL-FO, uma linguagem para formatar documentos XML.

Page 18: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:for-each>• elemento XSL <xsl:for-each> pode ser

usado para selecionar todo elemento XML de um conjunto de nós específico.

• Funciona como o laço for de uma linguagem de programação.

Page 19: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção de CDs</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr>

<xsl:for-each select="catalogo/cd"><xsl:for-each select="catalogo/cd"> <tr><tr> <td><xsl:value-of select="titulo"/></td><td><xsl:value-of select="titulo"/></td> <td><xsl:value-of select="artista"/></td><td><xsl:value-of select="artista"/></td> </tr></tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>

Page 20: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Filtrando a saída• Nós podemos filtrar a saída de um arquivo XML

adicionando um critério ao atributo select de um elemento <xsl:for-each>.

• <xsl:for-each select="catalog/cd[artist='Bob Dylan']">

• Operadores de filtragem válidos são: • = (igual) • != (diferente) • &lt; (menor que) • &gt; (maior que)

Page 21: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Exemplo<?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> <body> <h2>Minha coleção de CD</h2> <table border="1"> <tr> <th>Titulo</th> <th>Artista</th> </tr>

<xsl:for-each select="catalogo/cd[artista='Bob Dylan']"><xsl:for-each select="catalogo/cd[artista='Bob Dylan']"> <tr><tr> <td><xsl:value-of select="titulo"/></td><td><xsl:value-of select="titulo"/></td> <td><xsl:value-of select="artista"/></td><td><xsl:value-of select="artista"/></td> </tr></tr> </xsl:for-each></xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>

Page 22: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:sort>

• O elemento <xsl:sort> é usado para ordenar o resultado.

• Onde colocar a Informação de Ordenação ?• Para gerar um arquivo XML como um

arquivo XHTML, e ordená-lo ao mesmo tempo, simplesmente adicione um elemento sort dentro de um elemento for-each no seu arquivo XSL:

Page 23: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção CDs</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr> <xsl:for-each select="catalogo/cd">

<xsl:sort select="artista"/><xsl:sort select="artista"/> <tr> <td><xsl:value-of select="titulo"/></td> <td><xsl:value-of select="artista"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>

O atributo select indica qual O atributo select indica qual elemento XML a ordenar. elemento XML a ordenar.

Page 24: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:if>• O elemento <xsl:if> contém um padrão que só será

aplicado se uma condição específica for verdadeira. • Onde colocar a condição IF• Para colocar um teste condicional frente ao conteúdo de

um arquivo, simplesmente adicione um elemento <xsl:if> no documento XSL como abaixo:

• <xsl:if test="preco &gt; 10"> alguma saida... </xsl:if> • O valor do atributo obrigatório test da expressão a ser

avaliada.

Page 25: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção de CD</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr>

<xsl:for-each select="catalogo/cd"><xsl:for-each select="catalogo/cd"> <xsl:if test="preco &gt; 10"><xsl:if test="preco &gt; 10"> <tr> <td><xsl:value-of select="titulo"/></td> <td><xsl:value-of select="artista"/></td> </tr> </xsl:if> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>

Page 26: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:choose>• O elemento <xsl:choose> é usado em conjunto

com <xsl:when> e <xsl:otherwise> para expressar múltiplos testes condicionais.

• Onde colocar a condição Choose:• Para inserir o teste condicional choose frente ao

conteúdo de um arquivo XML, simplesmente adicione os elementos <xsl:choose>, <xsl:when> e <xsl:otherwise> no seu arquivo XSL como abaixo:

• <xsl:choose> <xsl:when test="price &gt; 10"> ...algum código... </xsl:when> <xsl:otherwise> ...algum código... </xsl:otherwise> </xsl:choose>

Page 27: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção de CDs</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Titulo</th> <th>Artista</th> </tr>

<xsl:for-each select="catalogo/cd"><xsl:for-each select="catalogo/cd"> <tr><tr> <td><xsl:value-of select="titulo"/></td><td><xsl:value-of select="titulo"/></td> <xsl:choose><xsl:choose> <xsl:when test="preco &gt; 10"><xsl:when test="preco &gt; 10"> <td bgcolor="FF000FF"><td bgcolor="FF000FF"> <xsl:value-of select="artista"/><xsl:value-of select="artista"/> </td></td> </xsl:when></xsl:when> <xsl:otherwise><xsl:otherwise> <td><xsl:value-of select="artista"/></td><td><xsl:value-of select="artista"/></td> </xsl:otherwise></xsl:otherwise> </xsl:choose></xsl:choose> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>

O código irá colorir o fundo da coluna artista de rosa O código irá colorir o fundo da coluna artista de rosa QUANDO (WHEN) o preço do cd for maior que 10. QUANDO (WHEN) o preço do cd for maior que 10.

Page 28: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

• <?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>• <body>• <h2>Minha Coleção de CD</h2>• <table border="1">• <tr bgcolor="#9acd32">• <th>Titulo</th>• <th>Artista</th>• </tr>

• <xsl:for-each select="catalogo/cd"><xsl:for-each select="catalogo/cd">• <tr><tr>• <td><xsl:value-of select="titulo"/></td><td><xsl:value-of select="titulo"/></td>• <xsl:choose><xsl:choose>• <xsl:when test="preco &gt; 10"><xsl:when test="preco &gt; 10">• <td bgcolor="#ff00ff"><td bgcolor="#ff00ff">• <xsl:value-of select="artista"/><xsl:value-of select="artista"/>• </td></td>• </xsl:when></xsl:when>• <xsl:when test="preco &gt; 9 and preco &lt;= 10"><xsl:when test="preco &gt; 9 and preco &lt;= 10">• <td bgcolor="#CCCCCC"><td bgcolor="#CCCCCC">• <xsl:value-of select="artista"/><xsl:value-of select="artista"/>• </td></td>• </xsl:when></xsl:when>• <xsl:otherwise><xsl:otherwise>• <td><xsl:value-of select="artista"/></td><td><xsl:value-of select="artista"/></td>• </xsl:otherwise></xsl:otherwise>• </xsl:choose></xsl:choose>• </tr></tr>• </xsl:for-each>• </table>• </body>• </html>• </xsl:template>• </xsl:stylesheet>

O código acima irá colorir o fundo coluna artista de O código acima irá colorir o fundo coluna artista de rosa QUANDO (WHEN) o preço do cd for maior que rosa QUANDO (WHEN) o preço do cd for maior que 10 e irá colorir de cinza QUANDO (WHEN) o preço 10 e irá colorir de cinza QUANDO (WHEN) o preço do cd for maior que 9 e menor ou igual a 10. do cd for maior que 9 e menor ou igual a 10.

Page 29: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O elemento <xsl:apply-templates>

• O elemento <xsl:apply-templates> aplica uma regra de molde ao elemento corrente ou aos nós filhos do elemento corrente.

• Se nós adicionarmos um atributo de seleção ao elemento <xsl:apply-templates> ele irá processar somente o elemento filho que combinar com o valor do atributo. Nós podemos usar o atributo de seleção para especificar a ordem na qual os nós filhos são processados.

Page 30: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

<?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> <body> <h2>Minha coleção de CD</h2> <xsl:apply-templates /> </body> </html>

</xsl:template></xsl:template> <xsl:template <xsl:template match="cd">match="cd"> <p><p> <xsl:apply-templates <xsl:apply-templates select="titulo" /> select="titulo" /> <xsl:apply-templates <xsl:apply-templates select="artista" /> select="artista" /> </p></p> </xsl:template></xsl:template> <xsl:template <xsl:template match="titulo">match="titulo"> Titulo: Titulo: <span<span

style="color:#ff0000">style="color:#ff0000"> <xsl:value-of select="." /> <xsl:value-of select="." /> </span></span> <br /> <br /> </xsl:template></xsl:template> <xsl:template <xsl:template match="artista">match="artista"> Artista: Artista: <span <span style="color:#00ff00">style="color:#00ff00"> <xsl:value-of select="." /> <xsl:value-of select="." /> </span></span> <br /> <br /> </xsl:template></xsl:stylesheet>

Page 31: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT - No Cliente• Se o seu browser suporta XSLT, este pode ser usado

para transformar o documento em XHTML no seu browser.

• Anteriormente foi explicado como o XSLT pode ser usado para transformar um documento de XML para XHTML. Nós adicionamos uma folha de estilos XSL ao arquivo XML e deixamos o browser fazer a transformação.

• Mesmo que isso funcione bem, nem sempre é desejável incluir uma referência a uma folha de estilos no arquivo XML (isto é, não funcionará num browser que não reconhece XSLT.)

• Uma solução mais versátil seria usar um JavaScript para fazer a transformação XML em XHTML.

Page 32: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

O JAVA SCRIPTUsando JavaScript nós podemos: • fazer testes para browsers específicos • usar diferentes folhas de estilos de acordo com o

browser e com as necessidades do usuário Essa é a beleza do XSLT. Um dos objetivos desenhados

para o XSLT era o de tornar possível transformar dados de um formato para outro, suportando browsers diferentes e necessidades de usuários diferentes.

A transformação XSLT do lado do cliente está para ser uma das maiores tarefas para os browsers no futuro, como nós veremos um crescimento no mercado de browsers especializados (Braille, browsers para deficientes auditivos, impressoras web, dispositivos handhelds, etc.)

Page 33: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Exemplo

• www.ezmail.com.br/xml/java.zip

Page 34: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

• <head>• <script>• function loadXMLDoc(fname)• {• var xmlDoc;• // code for IE• if (window.ActiveXObject)• {• xmlDoc=new ActiveXObject("Microsoft.XMLDOM");• }• // code for Mozilla, Firefox, Opera, etc.• else if (document.implementation &&

document.implementation.createDocument)• {• xmlDoc=document.implementation.createDocument("","",null);• }• else• {• alert('Your browser cannot handle this script');• }• xmlDoc.async=false;• xmlDoc.load(fname);• return(xmlDoc);• }

function displayResult(){xml=loadXMLDoc("catalogo_cd.xml");xsl=loadXMLDoc("catalogo.xsl");// code for IEif (window.ActiveXObject) { ex=xml.transformNode(xsl); document.getElementById("exemplo").innerHTML=ex; }// code for Mozilla, Firefox, Opera, etc.else if (document.implementation && document.implementation.createDocument) { xsltProcessor=new XSLTProcessor(); xsltProcessor.importStylesheet(xsl); resultDocument = xsltProcessor.transformToFragment(xml,document); document.getElementById("exemplo").appendChild(resultDocument); }}</script></head><body onload="displayResult()"><div id="exemplo" /></body></html>

Page 35: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

XSLT - No Servidor• Como nem todos os browsers suportam XSLT, uma solução é

transformar o XML em XHTML no servidor. • Para fazer os dados XML disponíveis para todo tipo de browser,

nós temos que transformar o documento XML no SERVIDOR e enviá-lo como XHTML puro para o BROWSER.

• Essa é uma outra beleza do XSLT. Um dos objetivos desenhados para o XSLT era o de tornar possível transformar dados de um formato para outro em um servidor, retornando dados legíveis para todos os tipos de browsers futuros.

• A transformação XSLT no servidor está para ser uma das maiores tarefas do Servidor de Informações de Internet (Internet Information Server) no futuro, assim como veremos um crescimento no mercado de browsers especializados (Braille, browsers para deficientes auditivos, impressoras web, dispositivos handheld, etc.)

Page 36: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Editor XML

• http://rs474.rapidshare.com/files/197187589/altxmol.zip

• Tutorial http://www.altova.com/documents/XMLSpyTutorial.pdf

• Slide da aula: • www.ezmail.com.br/xml/xls.zip

Page 37: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Próxima aula

• Revisão do conteúdo HTML/XML• Avaliação em 05/10/2009• Conteudo :• Avaliação conceitual de

XML/DTD/CSS/XSL• 10 QUESTÕES DE MULTIPLA

ESCOLHA.

Page 38: XSLT Padrão para Xtensible Stylesheet Language, e é uma linguagem de folha de estilos para dcoumentos XML

Exercicio

• Crie uma página em html que exiba uma opção para o usuário selecionar o tipo de dados que deseja ver

• 1 – Artistas por nome em ordem alfabética• 2 – Cd em ordem alfabética.• 3 – Que exiba todo o conteúdo do xml em

tabelas.• Entregue no final da aula.