xsl-list
[Top] [All Lists]

RE: how to test for the element type of the current node

2003-07-02 02:57:28
<xsl:template match="A">
    <xsl:for-each select="B">
      apply-templates for B
    </xsl:for-each>

You don't need to put for-each around apply-templates; it processes each
node in the selected node-set automatically.

    <xsl:for-each select="select all nodes that are not Bs">

You can do select="*[not(self::B)]", or you can do the apply-templates
with mode="not-B" and write a template rule

<xsl:template match="B" mode="not-B"/>

that does nothing.

In XPath 2.0, select="* except B" selects all the nodes except the Bs.

Michael Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list