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 undermediepunkter.

Syntaks

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

Egenskab

Egenskab Værdi Beskrivelse
select Udtalelse Valgfri. Angiver de noder, der skal behandles. Stjerne 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 adskille dem.

Eksempel

Eksempel 1

Brug h1-elementet 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

Brug h1-elementet til at omgøre alle title-elementer, der tilhører alle underelementer af message 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

Brug h1-elementet til at omgøre alle undernoder af dokumentet, der har mode-attributten sat til "big":

<?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>