xsl-list
[Top] [All Lists]

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

2003-07-02 01:09:29

I'd like to add a comment to my question;
instead of


<xsl:template match="A">
    <xsl:for-each select="*">
      <xsl:choose>
          <xsl:when test="if this node is a B"> <--- this is what I can't 
figure out
              apply-templates for B

              ...
          <xsl:otherwise>
              do something else for C
    ...


I also thought about using:

<xsl:template match="A">
    <xsl:for-each select="B">
        apply-templates for B
    </xsl:for-each>
    <xsl:for-each select="select all nodes that are not Bs">
    ....

But I couldn't figure that out either:  "not(B)", for instance, is a 
boolean and not a node set.

( Note that in my actual application, it's not A -> (B|C)*, it's 
A -> (B|....many alternatives here...)*,
so it's not practical to list them all in their own select() clauses. )

        - Godmar


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