xsl-list
[Top] [All Lists]

Re: [xsl] counter vs. functional counterpart

2009-07-21 04:21:25
2009/7/21 Jeff Shelley <jshelley(_at_)stuntmansoftware(_dot_)com>:
Hello.
  Does anybody know what xsl file can take this:

<rows>
  <row>
      <name>John</name>
      <otherName/>
  </row>
  <row>
      <name>Paul</name>
      <otherName/>
  </row>
  <row>
      <name>Ringo</name>
      <nickName>ClassCastException</nickName>
  </row>
  <row>
      <name>George</name>
      <otherName/>
  </row>
</rows>


and turn it into this?

       1-John
       2-Paul
       3-Ringo
       4-ClassCastException
       5-George

Basically, I need the output number to keep incrementing and be continuous.
 Everything I see about counters says "if you're implementing a counter
you're doing it wrong", but I have absolutely no idea how to do this.

You just use xsl:number.  In declarative programming, you say what you
want rather than describe the steps involved (something that doesn't
help at all when you are learning, but makes sense after :)

<xsl:template match="row">
  <xsl:number/>
  <xsl:value-of select="'-', (nickName, name)[1]" separator=""/>
</xsl:template>



-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

--~------------------------------------------------------------------
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>
--~--