A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Extensible Stylesheet Language (XSL)

Apresentações semelhantes


Apresentação em tema: "Extensible Stylesheet Language (XSL)"— Transcrição da apresentação:

1 Extensible Stylesheet Language (XSL)
Renata Pontin de Mattos Fortes SCE-225 Hipermídia 2°Semestre 2003

2 Introdução XSL é a linguagem para expressar folhas de estilo.
Descreve como um documento XML deve ser apresentado. Como XML não utiliza tags pré-definidas, o significado dessas tags não são entendidos. Por exemplo, <table> poderia ser uma tabela HTML, um móvel, ou qualquer outra coisa. Um browser não sabe como apresentar um documento XML.

3 XSL Consiste de três partes:
XSLT (XSL Transformation) – uma linguagem para transformar documentos XML. XPath – uma linguagem para definir partes de um documento XML. XSL Formatting Objects – um vocabulário para formatar documentos XML.

4 Esclarecendo... Pense em XML com sendo uma linguagem que:
Pode transformar XML em XHTML. Pode filtrar e classificar dados XML. Define partes de um documento XML. Pode formatar dados XML com base nos valores dos dados, como mostrar valores negativos em vermelho. Pode exibir dados XML em diferentes dispositivos, como tela, papel ou voz.

5 XSLT e XPath XSLT será utilizada para definir as transformações XML.
XPath será utilizada para definir padrões compatíveis para as tranformações. No tutorial, maior ênfase é dada a esses dois itens.

6 XSLT É utilizada para transformar documentos XML em outros documentos XML , ou em outro tipo de documento que é reconhecido por um browser. Pode acrescentar ou remover elementos ao arquivo de saída, re-arranjar os elementos, e tomar decisões sobre quais elementos apresentar ou não.

7 XSLT – Como funciona? Utiliza a XPath para definir as partes do documento fonte que “casam” com um ou mais templates pré-definidos. XSLT transforma a parte que “casou” do documento fonte em um documento resultante. No processo de transformação, XSLT usa XPath para definir as partes do documento fonte que “casam” (match) com um ou mais templates pré-definidos. Quando um “casamento” é encontrado, a XSLT irá transformar a parte que “casou” do documento fonte em um documento resultante. As partes do documento fonte que não “casaram” não serão modificadas no documento resultante.

8 Browsers e XSL Internet Explorer (IE): Netscape:
As versões IE 5 e IE 5.5 não são 100% compatíveis com a recomendação oficial W3C da XSL. O IE 6 é completamente compatível com a recomendação oficial. Netscape: O Netscape 6 não oferece suporte completo para a recomendação oficial W3C da XSL. Quando o Internet Explorer 5 foi lançado, o padrão XSL era ainda um “Working Draft”. Assim, como a Recomendação W3C é diferente do “”Working Draft”, o IE 5 e 5.5 não são 100% compatíveis com a XSL.

9 XSL-Transformation (XSLT)
Maneiras corretas de se declarar uma folha de estilo XSL: ou

10 Tranformando um documento XML em XHTML

11 O documento XML... (cdcatalog.xml)
<?xml version=“1.0” encoding=“ISO ”?> <catalog> <cd> <title>How The West Was Won</title> <artist> Led Zeppelin </artist> <company> Warner </company> <price> 61,90 </price> <year> 2003 </year> </cd> </catalog>

12 A folha de estilo XSL... (cdcatalog.xsl)

13 Ligando a folha de estilo XSL ao documento XML
<?xml version=“1.0” encoding=“ISO ”?> <?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?> <catalog> <cd> <title>How The West Was Won</title> <artist> Led Zeppelin </artist> <company> Warner </company> <price> 61,90 </price> <year> 2003 </year> </cd> </catalog>

14 Explicando... Como a folha de estilo também é um documento XML, o documento começa com uma declaração XML. A tag <xsl:stylesheet> define o início da folha de estilo. A tag <xsl:template> define o início de umtemplate. O resto do documento contém o próprio template.

15 <xsl:template> (1/2)
Uma folha de estilo XSL consiste de um conjunto de regras chamadas templates. O elemento <xsl: template> contém regras a serem aplicadas quando um nó específico “casa”. O atributo match é utilizado para associar o template com um elemento XML. Uma folha de estilo XSL consiste de um conjunto de regras chamadas templates.

16 <xsl:template> (2/2)
match = “/” associa um template à raiz do documento XML fonte O match associa o template à raiz do documento XML fonte.

17 <xsl:value-of>
O elemento <xsl:value-of> pode ser usado para selecionar o valor de um elemento XML e o apresentar na saída da transformação. Exemplo: <xsl: value-of select=“catalog/cd/title”/> <xsl: value-of select=“catalog/cd/artist”/> O valor do atributo select requisitado contém uma expressão XPath.

18 <xsl:for-each> (1/2)
O elemento <xsl:for-each> permite realizar loops na XSL. Pode ser utilizado para selecionar todo elemento XML de um conjunto de nós específicos. Exemplo: <xsl:for-each select=“catalog/cd”> <xsl:value-of select=“title”/> <xsl:value-of select=“artist”/> </xsl:for-each>

19 <xsl:for-each> (2/2)
Pode-se filtrar a saída acrescentando um critério ao atributo selecionado no elemento <xsl:for-each>: <xsl:for-each select=“catalog/cd[artist=‘Led Zeppelin’]”> Operadores de filtro: = (igual) &lt (menor que) != (diferente) &gt (maior que)

20 <xsl:sort> O elemento <xsl:sort> é utilizado para ordenar a saída. Exemplo: <xsl:for-each select=“catalog/cd”> <xsl:sort select=“artist”/> <xsl:value-of select=“title”/> <xsl:value-of select=“artist”/> </xsl:for-each> A saída será ordenada alfabeticamente pelo nome do artista.

21 <xsl:if> O elemento <xsl:if> contém um template que será aplicado somente se uma condição específica for verdadeira. Exemplo: <xsl:for-each select=“catalog/cd”> <xsl:if test=“price > 30”/> <xsl:value-of select=“title”/> <xsl:value-of select=“artist”/> </xsl:if> </xsl:for-each>

22 <xsl:choose> (1/2)
O elemento <xsl:choose> é usado em conjunto com <xsl:when> e <xsl:otherwise> para expressar múltiplos testes condicionais.

23 <xsl:choose> (2/2)
Exemplo: <xsl:for-each select="catalog/cd"> <xsl:value-of select="title"/> <xsl:choose> <xsl:when test="price > 30"> <xsl:value-of select="artist"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="company"/> </xsl:otherwise> </xsl:choose> </xsl:for-each>

24 <xsl:apply-templates>
O elemento <xsl:apply-templates> aplica uma regra de template ao elemento atual ou aos seus nós filhos. Exemplo: Próximo slide Se um atributo select for adicionado ao elemento <xsl:apply-templates>, ele irá processar somente o elemento filho que “casar” com o valor do atributo. Pode usar o atributo select para especificar em qual ordem os nós filhos serão processados.

25


Carregar ppt "Extensible Stylesheet Language (XSL)"

Apresentações semelhantes


Anúncios Google