Στοιχείο <xsl:apply-templates> του XSLT
Ορισμός και χρήση
Το στοιχείο <xsl:apply-templates> μπορεί να εφαρμόσει το μοτίβο στο τρέχον στοιχείο ή τα υποστοιχεία του τρέχοντος στοιχείου.
Αν προσθέσουμε την ιδιότητα select στο στοιχείο <xsl:apply-templates>, θα επεξεργαστεί μόνο τα υποστοιχεία που ταιριάζουν στην αξία αυτής της ιδιότητας. Μπορούμε να χρησιμοποιήσουμε την ιδιότητα select για να καθορίσουμε τη σειρά επεξεργασίας των υπομέσων.
Γραμματική
<xsl:apply-templates select="expression" mode="name"> <!-- Περιεχόμενο: (xsl:sort|xsl:with-param)* --> </xsl:apply-templates>
Ατрибούτο
Ατрибούτο | Αξία | Περιγραφή |
---|---|---|
select | Έκφραση | Οπション. Ορίζει το κόμβο που πρέπει να επεξεργαστεί. Ο αστεριάς επιλέγει την ολόκληρη συλλογή κόμβων. Αν παραλείψετε αυτό το χαρακτηριστικό, θα επιλεγούν όλοι οι υποκόμβοι του τρέχοντος κόμβου. |
mode | Όνομα | Οプション. Αν υπάρχουν πολλαπλές μεθόδους επεξεργασίας για το ίδιο στοιχείο, μπορείτε να χρησιμοποιήσετε το mode για να τα διακρίνετε. |
Παράδειγμα
Παράδειγμα 1
με τον ελκυσμό του στοιχείου h1 περιβάλλει κάθε στοιχείο title του έγγραφου:
<?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>
Παράδειγμα 2
Εντάξτε το στοιχείο h1 σε όλα τα στοιχεία title που ανήκουν στο message:
<?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>
Παράδειγμα 3
Εντάξτε το στοιχείο h1 στο όλο το message που έχει το mode ρυθμισμένο σε "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>