<Completa XSLT elemento de referência
Definição e Uso
O <xsl:apply-templates> elemento aplica-se um modelo para o elemento atual ou para nós filhos do elemento atual.
Se adicionarmos um atributo de seleção para o <xsl:apply-templates> elemento que irá processar apenas o elemento filho que corresponde ao valor do atributo. Podemos usar o select atributo para especificar a ordem em que os nós filhos devem ser processados.
Sintaxe
<xsl:apply-templates select="expression" mode="name">
<!-- Content:(xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>
Atributos
Atributo | Valor | Descrição |
---|---|---|
select | expression | Opcional. Especifica os nós a serem processados. Um asterisco selecciona o inteiro nó-conjunto. Se este atributo for omitido, todos os nós filhos do nó atual serão selecionados |
mode | name | Opcional. Se existirem várias formas de processamento definidos para o mesmo elemento, distingue entre eles |
Exemplo 1
Enrole um único elemento h1 em torno de cada elemento título no documento:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="title">
<h1><xsl:apply-templates/></h1>
</xsl:template>
</xsl:stylesheet>
exemplo 2
Enrole um único elemento h1 em torno de todos os elementos do título que são filhos de mensagem:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="title"/></h1>
</xsl:template>
</xsl:stylesheet>
exemplo 3
Enrole um único elemento h1 em torno de todos os nós filhos de mensagem que têm o mode atributo definido como "big" :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="*" mode="big"/></h1>
</xsl:template>
</xsl:stylesheet>
<Completa XSLT elemento de referência