[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Built-in template rule for attributes
Hello all --
Section 5.8 of the XSLT Rec says that the built-in template rule for text nodes and attributes is: <xsl:template match="text()|@*"> <xsl:value-of select="."/> </xsl:template> One subtlety that's always confused me is: Why, given this built-in rule, is the value of each attribute *not* copied to the result tree? In other words, how is this rule different from one in which the match attribute's value is simply "text()" rather than "text()|@*" ? My understanding is that this built-in rule, together with the one for the root and element nodes, applies to all text or attribute nodes that are children of any element (per the <xsl:apply-templates> element in the root/element node built-in). Since XPath dictates that attributes aren't children of the elements to which they apply, I understand why attribute values wouldn't be copied. I'm just after the logic, therefore, of including the |@* in the text/attribute node built-in. [Have just re-joined XSL-List after a months-long hiatus. Very happy to be back!] ================================================================ John E. Simpson | "I spilled spot remover on my dog. http://www.flixml.org | He's gone now." (Steven Wright) simpson@xxxxxxxxxxx | XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|