This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

current()


Hello all, 

Is the current() function allowed in this syntax?


XML:

	<person>
		<account>12345</account>
		<date>December</date>
		<date>March</date>
		<date>March</date>
		<date>July</date>
		<date>March</date>
		<date>June</date>
		<date>April</date>
	</person>


XSL:


<m:month name="Jan" value="0"/>
<m:month name="Feb" value="1"/>
<m:month name="Mar" value="2"/>
<m:month name="Apr" value="3"/>
<m:month name="May" value="4"/>
<m:month name="Jun" value="5"/>
<m:month name="Jul" value="6"/>
<m:month name="Aug" value="7"/>
<m:month name="Sep" value="8"/>
<m:month name="Oct" value="9"/>
<m:month name="Nov" value="10"/>
<m:month name="Dec" value="11"/>


<xsl:variable name="months" select="document('')//m:month"/>

<xsl:for-each 
	select="person/date[generate-id(.)=generate-id(key('myKey', concat( account, '::', .))[1])]">

	<xsl:sort select="$months[ starts-with( current(),  @name ) ]/@value"
		data-type="number" order="descending"/>

</xsl:for-each>		


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?

-matt


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]