Elemen <xsl:apply-templates> XSLT
Definisi dan penggunaan
Elemen <xsl:apply-templates> dapat menerapkan template ke elemen saat ini atau anak elemen saat ini.
Jika kita menambahkan atribut select ke elemen <xsl:apply-templates>, maka ia hanya akan mengolah anak elemen yang cocok dengan nilai atribut ini. Kita dapat menggunakan atribut select untuk menentukan urutan pengolahan anak elemen.
Sintaksis
<xsl:apply-templates select="ekspresi" mode="nama"> <!-- Content:(xsl:sort|xsl:with-param)* --> </xsl:apply-templates>
Atribut
Atribut | Nilai | Deskripsi |
---|---|---|
select | Ekspresi | Pilihan. Tentukan node yang akan diproses. Bintang memilih seluruh kumpulan node. Jika atribut ini dilewati, maka semua node anak node saat ini akan dipilih. |
Mode | Nama | Pilihan. Jika ada beberapa metode pengolahan yang ditentukan untuk elemen yang sama, maka mode dapat membedakannya. |
Contoh
Contoh 1
Dengan menggunakan elemen h1 melingkari setiap elemen title dalam dokumen:
<?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>
Contoh 2
Dikelilingi elemen h1 semua elemen title yang termasuk anak dari message dalam dokumen:
<?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>
Contoh 3
Dikelilingi elemen h1 semua anak node message yang mode disetel menjadi "big" dalam dokumen:
<?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>