xsl-list
[Top] [All Lists]

RE: [xsl] XSLT to remove characters and whitespaces

2006-07-10 07:16:17
As you point out your solution is similar to the "identity template"
at Michaels "XSLT2.0", Page 243, which i didn't mentioned 
before. I wonder why he uses "@*|node()" instead of "*" for 
the matching. If it matches an attribute (@*) what would the 
template do with it? Your solution using "*" seems to me more 
logical and does the job too. The question is: why?

There are two variants of the identity template in common use. This version:

<xsl:template match="*">
  <xsl:copy>
  <xsl:copy-of select="@*"/>
  <xsl:apply-templates/>
  </xsl:copy>
</xsl:template>

processes all *elements* by copying them, and can be overridden for
individual elements.

This version:

<xsl:template match="node()|@*">
  <xsl:copy>
  <xsl:apply-templates select="@*|node()"/>
  </xsl:copy>
</xsl:template>

processes all *nodes* by copying them, and can be overridden for individual
elements, attributes, comments, processing instructions, or text nodes.

Michael Kay
http://www.saxonica.com/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>