XSLT <xsl:apply-templates> element

Definition og brug

<xsl:apply-templates>-elementet kan anvende skabeloner til det aktuelle element eller underelementer af det aktuelle element.

Hvis vi tilføjer en select-attribut til <xsl:apply-templates>-elementet, vil det kun behandle underelementer, der matcher værdien af attributten. Vi kan bruge select-attributten til at bestemme rækkefølgen af behandling af underpunkter.

Syntaks

<xsl:apply-templates select="udtryk" mode="navn">
  <!-- Content:(xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>

Egenskab

Egenskab Værdi Beskrivelse
select Utryk Valgfri. Angiver den node, der skal behandles. Stjernen vælger hele nodesæt. Hvis attributten udelades, vælges alle undernoder til den aktuelle node.
mode Navn Valgfri. Hvis der er flere behandlingsmetoder defineret for samme element, kan mode bruges til at skelne mellem dem.

Eksempel

Eksempel 1

Brug h1-element til at omgøre hver title-element i dokumentet:

<?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="title">
  <h1><xsl:apply-templates/></h1>
</xsl:template>
</xsl:stylesheet>

Eksempel 2

Omslut alle title-elementer, der tilhører message, med h1-elementet i dokumentet:

<?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="message">
  <h1><xsl:apply-templates select="title"/></h1>
</xsl:template>
</xsl:stylesheet>

Eksempel 3

Omslut alle undernoder i dokumentet med mode-attributten sat til "big" med h1-elementet:

<?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="message">
  <h1><xsl:apply-templates select="*" mode="big"/></h1>
</xsl:template>
</xsl:stylesheet>