Hi List,
I want to format a number based on condition. I wrote a template which does
1. Input parameter is a string to the template.
2. Count number of dots in the string.
for eg: if input string : 'SH-12.3.4' then number of dots = 2
3. Format the sequence attribute for that node based on the number of dots.
see the following xslt code.
<xsl:template name="NewName">
<xsl:param name="strRep" />
<xsl:variable name="nrdots" select="string-length($strRep) -
string-length(translate($strRep, '.', ''))" />
<xsl:choose>
<xsl:when test="$nrdots = 0">
<xsl:value-of
select="concat($strRep,concat('.',format-number(./@Sequence,'0')))"/>
</xsl:when>
<xsl:when test="$nrdots = 1">
<xsl:value-of
select="concat($strRep,concat('.',format-number(./@Sequence,'00')))"/>
</xsl:when>
<xsl:when test="$nrdots = 2">
<xsl:value-of
select="concat($strRep,concat('.',format-number(./@Sequence,'000')))"/>
</xsl:when>
<xsl:when test="$nrdots = 3">
<xsl:value-of
select="concat($strRep,concat('.',format-number(./@Sequence,'0000')))"/>
</xsl:when>
</xsl:choose>
</xsl:template>
4. Suppose there are 4 dots, I have to add one more when statement. I have
to add n number of conditions for n-possible values.
5. What I want is, a template which automatically formats based on the
number of dots.
Can any one send me the standard template for this.
Thanks
Ch. Laxmi Narayana Babu
--~------------------------------------------------------------------
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>
--~--