02 - Apresentação de dados em XML com XSL e HTML

115 visualizações

Publicada em

Apresentar aos alunos o conceito de folhas de estilo e formatação dinâmica de dados.

Demonstrar as possibilidades formatação com a utilização HTML e métodos em XSLT.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
115
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

02 - Apresentação de dados em XML com XSL e HTML

  1. 1. César Augusto Pessôa
  2. 2. Sumário  Objetivos  O que são folhas de estilo  O que é XSL  Apresentando os dados de um XML  Dúvidas
  3. 3. Objetivos  Apresentar aos alunos o conceito de folhas de estilo e formatação dinâmica de dados.  Demonstrar as possibilidades formatação com a utilização HTML e métodos em XSLT.
  4. 4. O que é XSL  eXtensible Stylesheet Language:  Foi criada para permitir a aplicação de folhas de estilos a documentos XML. Ela portanto, ao contrário do XML, não carrega informações sobre os dados, mas sim, sobre sua apresentação.  eXtensible Stylesheet Language Transformer:  É a linguagem de programação utilizada para transformar um documento XML em outro tipo de documento baseado em uma linguagem de programação para web (XHTML ou HTML5 por exemplo).
  5. 5. Considere o arquivo XML abaixo <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="combustivel.xsl"?> <abastecimentos> <abastecimento id="1"> <dia>22</dia> <mes>05</mes> <ano>2007</ano> </abastecimento> <abastecimento id="2"> <dia>10</dia> <mes>06</mes> <ano>2008</ano> </abastecimento> <abastecimento id="3"> <dia>10</dia> <mes>06</mes> <ano>2008</ano> </abastecimento> </abastecimentos>
  6. 6. Exemplo de arquivo XSL <?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> <h1>Abastecimentos</h1> <table border="1"> <tr bgcolor="red"> <th align="left">Dia</th> <th align="left">Mês</th> <th align="left">Ano</th> </tr> <xsl:for-each select="abastecimentos/abastecimento"> <tr> <td><xsl:value-of select="dia"/></td> <td><xsl:value-of select="mes"/></td> <td><xsl:value-of select="ano"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> Cabeçalho padrão do Arquivo xsl O template (modelo) será Aplicado a todo arquivo Toda TAG aberta deve ser fechada Código mesclado com HTML
  7. 7. Elementos da XSLT  <xsl:template match=”XPath”>  Define o caminho para o qual o modelo será aplicado, a variável XPath deve ser substituída por este valor. Caso o modelo seja aplicado ao elemento raiz e todos os seus filhos, utiliza-se o símbolo “/”.  Lembrando que a TAG xsl:template deve ser fechada no final do arquivo.  <xsl:value-of select=”XPath”>  Indica um elemento (nó) do arquivo XML que deverá ser extraído e apresentado.  Dentro desta TAG é definida a forma de apresentação destes dados, por exemplo utilizando uma lista ou tabela.
  8. 8. Elementos da XSLT  xsl:for-each select=”XPath”  É utilizado para criar loops de repetição, como o PARA no portugol (VisualG).  Irá extrair todos os valores dos elementos xsl:value-of (do inglês valor de).  Além disso o operador for-each aceita os seguintes operadores lógicos: Operador Significado = Igual a != Diferente de &lt; Menor que &gt; Maior que
  9. 9. Elementos da XSLT  Exemplos:  Igual: extrai somente os elementos que possuem exatamente um valor pré-definido.  Não igual: extrai somente os elementos que não possuem um valor pré-definido.  Menor que: extrai somente os elementos que possuem um valor menor que determinada condição.  Maior que: extrai somente os elementos que possuem um valor maior que determinada condição.
  10. 10. Elementos da XSLT  Exemplos:  Igual: selecionar somente os alunos que possuem o atributo nome igual a “César”.  Não igual: selecionar somente os alunos que possuem o atributo nome diferente de “ “ (vazio).  Menor que: selecionar somente os alunos com o atributo idade menor que 18.  Maior que: selecionar somente os alunos com o atributo idade maior que 16.
  11. 11. Elementos da XSLT  <xsl:sort select=”XPath”>  Deve ser colocado dentro de um elemento for-each.  Determina a ordenação com que os elementos devem ser apresentados.  Exemplo: <xsl:for-each select=“abastecimentos/abastecimento"> <xsl:sort select=”ano”> <tr> <td><xsl:value-of select="dia"/></td> <td><xsl:value-of select=“mes"/></td> <td><xsl:value-of select=“ano"/></td> </tr> </xsl:for-each>
  12. 12. Elementos da XSLT  <xsl:IF test=”expressão de teste”>  Deve ser colocado dentro de um elemento for-each.  Realiza testes condicionais, equiavele ao SE e ENTÃO.  Exemplo: <xsl:for-each select=“abastecimentos/abastecimento"> <xsl:if test=”ano &gt; 2000”> <tr> <td><xsl:value-of select="dia"/></td> <td><xsl:value-of select=“mes"/></td> <td><xsl:value-of select=“ano"/></td> </tr> </xsl:if> </xsl:for-each>
  13. 13. Elementos da XSLT  <xsl:choose>, <xsl:when>, <xsl:otherwise>  São utilizados para realizar diversos testes condicionais, equivale ao ESCOLHA e CASO.  Exemplo: <xsl:choose> <xsl:when test="expression"> ... algum código ... </xsl:when> <xsl:otherwise> ... algum código .... </xsl:otherwise> </xsl:choose>
  14. 14. Dúvidas?
  15. 15. César Augusto Pessôa capfg@hotmail.com

×