|
Subject: Re: Number of node in list from stylesheet From: Jeni Tennison <Jeni.Tennison@xxxxxxxxxxxxxxxx> Date: Tue, 23 May 2000 14:16:49 +0100 |
Sebastian Rahtz wrote:
> > number, so January = 01, May = 05 and so on. So I defined the months in
> > order within the stylesheet itself:
> >
> > <foo:months>
> > <foo:month name="January" abbr="Jan" />
> > <foo:month name="February" abbr="Feb" />
>
>wouldn't it be easier to just say
>
><foo:month name="February" abbr="Feb" number="02"/>
That's what I did in the end.
However, thank you for your reply because thinking about examples to show
that it's not a good solution in situations where you want to add things to
list at random and still be able to number them gave me the following
solution:
<xsl:variable name="monthNumber">
<xsl:value-of
<xsl:value-of
select="format-number(count(document('')//foo:month[following-sibling::foo:m
onth[@name = $monthName]) + 1, '00')" />
</xsl:variable>
which works, but is a little ugly.
I also found another way that works by using xsl:number. Within the
template have:
<xsl:variable name="monthNumber">
<xsl:apply-templates select="document('')//foo:month" mode="getNumber">
<xsl:with-param name="monthName" select="$monthName" />
</xsl:apply-templates>
</xsl:variable>
and then create a template:
<xsl:template match="foo:month" mode="getNumber">
<xsl:param name="monthName" />
<xsl:if test="@name = $monthName">
<xsl:number format="01" />
</xsl:if>
</xsl:template>
This design pattern is useful when you (e.g.) want to number things in a
different document from your input XML.
Cheers,
Jeni
Dr Jeni Tennison
Epistemics Ltd, Strelley Hall, Nottingham, NG8 6PE
Telephone 0115 9061301 ? Fax 0115 9061304 ? Email
jeni.tennison@xxxxxxxxxxxxxxxx
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: Number of node in list from sty, Sebastian Rahtz | Thread | Re: Number of node in list from sty, Sebastian Rahtz |
| RE: Netscape Support for XSL - clie, Heather Lindsay | Date | Re: How to use compiled stylesheet , Scott Boag/CAM/Lotus |
| Month |