Alan
You could use the translate function to strip out the hyphens and make the
dates into integers that can then be compared numerically.
<xsl:variable name="iToday" select='translate($today,"-","")'/>
<xsl:for-each select='performance[translate(@date,"-","") >=
$iToday]'/>
But note that this is not appropriate for dates earlier than 1CE (because
these are represented as -yyyy-mm-dd).
Xpath 2.0 appears to be introduce the capability to cast a string as a date
and operator mapping so that you can perform a comparison between two dates
directly.
Regards
George
George James Software
Caché Tools, Training, Technology
www.georgejames.com
+44-1932-252568
-----Original Message-----
From: Alan Divorty [mailto:alan(_dot_)divorty(_at_)btinternet(_dot_)com]
Sent: 14 November 2004 10:14
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] expression syntax
I am trying to compare two dates, one in the xml data against
an external parameter holding today's date.
The format of each is yyyy-mm-dd
<xsl:for-each select="performance[date = $today]">
successfully processes records with today's date. However, I
want to select all records equal to or later than today, but
<xsl:for-each select="performance[date >= $today]"> does
not select any records.
Is my syntax wrong?
I'm using IE6 to process the files.
Thanks,
Alan
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--