|
Subject: Re: [xsl] current() From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx> Date: Fri, 5 Jan 2001 18:24:57 +0000 |
Hi Matthew,
> As you can see, I'm trying to sort Month names in correct
> (sequential) order, but Xalan 1.2.2 (newest) tells me "The current()
> function is not allowed in a match pattern!". I assume this is
> simply a bug in Xalan as versions prior to 1.2.1 sort correctly, any
> ideas? Any work-around suggestions?
As others have pointed out, it's a bug in Xalan. Here's a possible
work-around:
<!-- collect all the unique person/date elements into a variable -->
<xsl:variable name="dates"
select="person/date
[generate-id(.)=
generate-id(key('myKey',
concat( account, '::', .))[1])]" />
<!-- iterate over the months -->
<xsl:for-each select="$months">
<!-- sorting them according to descending @value
(could use position() instead) -->
<xsl:sort select="@value" data-type="number" order="descending" />
<!-- iterate over each of the dates in $dates whose @name
starts with the current month -->
<xsl:for-each select="$dates[starts-with(., current()/@name)]">
...
</xsl:for-each>
</xsl:for-each>
I hope that helps,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] current(), Matthew Cordes | Thread | [xsl] Re: current(), Dimitre Novatchev |
| Re: [xsl] Sample of grouping and so, Jeni Tennison | Date | Re: [xsl] How to create XSL for CAL, Jeni Tennison |
| Month |