Anda di halaman 1dari 5

RESUMO XSLT

Elaborao: Vitor Almeida

INTRODUO
O XSLT um padro pertencente ao XSL (Extensible Style Sheet). XSL CSS para XML, ou seja, descreve como XML dever ser visualizado. O XSL se divide em: XSLT - Transformao de XML; XPath - Navegao em XML; XSL-FO - Formatao de XML.

O principal uso do XSLT para transformar XML em XHTML ou outro XML. Gera, a partir de uma rvore de origem (resource-tree), uma rvore de destino (result-tree). O arquivo original no modificado. Apenas um novo construdo. A transformao pode ocorrer no cliente ou no servidor. uma linguagem declarativa. a parte mais importante do XSL. Usa XPath para navegar em documentos XML. suportado pela maioria dos navegadores (IE a partir do 6). uma recomendao W3C.

USOS
Remover ou adicionar elementos ou atributos de um documento XML. Reorganizar ou ordenar elementos de um documento XML. Realizar testes ou tomar decises de um elemento dever permanecer ou no em um documento XML. Gerar PDF, PS e PNG. Converter entre diferentes XML Schemas.

TRANSFORMAO RESOURCE-TREE <?xml version="1.0" encoding="ISO-8859-1"?> <?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> XSL (EM VERMELHO, COMENTRIOS) <?xml version="1.0" encoding="ISO-8859-1"?> Declarao inicial <xsl:stylesheet version="1.0" Elemento raiz xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> Namespace do XSLT <xsl:template match="/"> Elemento que indica um local onde dados sero inseridos na result-tree <html> Elementos estticos HTML (a result-tree ser um documento 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"> Para cada element em catalog/cd <tr> <td><xsl:value-of select="title"/></td> Mostre o valor do element title <td><xsl:value-of select="artist"/></td> Mostre o valor do element artist </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> RESULT-TREE

SINTAXE <?xml version="1.0" encoding="ISO-8859-1"?> declarao inicial.


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

elemento raiz. <xsl:template match="/"> - indica um template, ou a rea onde dados da resource-tree so inseridos na result-tree. match="/" associa o template ao elemento root da resource-tree. <xsl:value-of select="catalog/cd/title"/> - seleciona o contedo do elemento XML da resource-tree descrito por XPath no atributo select. <xsl:for-each select="catalog/cd"> - iterator de um elemento da resource-tree descrito no atributo select. <xsl:for-each select="catalog/cd[artist='Bob Dylan']"> - Filtros podem ser representados entre colchetes no select. <xsl:sort select="artist"/> - ordena os subelementos do elemento. <xsl:if test="expression"> - IF. <xsl:choose> - usado com <xsl:when> e <xsl:otherwise> para expressar vrios comandos condicionais aninhados. <xsl:apply-templates select="title"/> - Aplica a template title no local onde o elemento applytemplates estiver.

PROCESSADORES XSLT

Tipo 1 Cliente: Ocorre nos navegadores. Adoo lenta devido existncia de navegadores antigos Tipo 2 Servidor: Inclui aplicativos de servidores, web browsers, frameworks e sistemas operacionais.