xsl-list
[Top] [All Lists]

Re: [xsl] xpath query

2008-01-19 10:57:34
Sean Tiley wrote:

2) - Also related to the first template. Why do I need the
<xsl:template match="@* | node()"> and
<xsl:apply-templates select="@* | node()"/> in the <xsl:copy/> tag?
I would have thought in the template match "/" would have sufficed.
(When I try that, I just get the values from the nodes).

Well if you want to copy everything (the XSLT data model covers) then
  <xsl:template match="/">
    <xsl:copy-of select="/"/>
  </xsl:template>
suffices but that is not an approach where you can work in additional templates. With the identity transformation template written as
  <xsl:template match="@* | node()">
    <xsl:copy>
      <xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
  </xsl:template>
you can add templates to override the template for nodes that you want to change. So using xsl:copy for a shallow copy and xsl:apply-templates to process attributes and child elements gives additional templates a chance to be applied on each step.


--

        Martin Honnen
        http://JavaScript.FAQTs.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>