Michael,
I've got to use xslt 1.0. I was trying to adapt your examples for
cities. I thought the variable looked easier than the Muenchian
grouping.
Either way I'm not sure how to reference the 'preceding?' rolloverDate.
Regards
Jan
-----Original Message-----
From: Michael Kay [mailto:mike(_at_)saxonica(_dot_)com]
Sent: 21 May 2008 15:33
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Variable containing unique values
I don't know where you've been looking, but this code doesn't make sense
at
all. Sorting a sequence is never going to reduce the number of items in
the
sequence. (And the path expression used in xsl:sort should almost never
begin with "/", because that would typically mean that every item has
the
same sort key - or in your case, no sort key at all).
First decide whether you're using XSLT 1.0 or 2.0. This kind of thing is
MUCH easier in 2.0.
In XSLT 2.0, use xsl:for-each-group.
In XSLT 1.0, use Muenchian grouping, described at
http://www.jenitennison.com/xslt/grouping
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Hesselberth, Jan
[mailto:Jan(_dot_)Hesselberth(_at_)northernrock(_dot_)co(_dot_)uk]
Sent: 21 May 2008 15:00
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Variable containing unique values
I've read the book and looked at the examples but I can't
manage to create a variable containing unique values for my
xml. All I get is a list of all values.
I need a variable containing unique values for rolloverDate.
I've tried all sorts of rules for testing for current
rolloverDate not being equal to previous rollover dates but I
can't get it to work.
Can you help please.
Regards
Jan Hesselberth
The code I have is
<xsl:variable name="unique-dates">
<xsl:for-each
select
="REPORT/Rollover/RolloverForecast/summaryAccount/element">
<xsl:sort
select="/rolloverDate[not(preceding::rolloverDate= current())]"/>
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
The xml snippet looks like
<summaryAccount id="12345">
<isAutomatedRollover>N</isAutomatedRollover>
<element id="1">
<rolloverDate>2008-04-04</rolloverDate>
</element>
<element id="2">
<rolloverDate>2008-04-04</rolloverDate>
</element>
</summaryAccount>
<summaryAccount id="12346">
<isAutomatedRollover>Y</isAutomatedRollover>
<element id="1">
<rolloverDate>2008-04-22</rolloverDate>
</element>
</summaryAccount>
<summaryAccount id="12347">
<isAutomatedRollover>Y</isAutomatedRollover>
<element id="1">
<rolloverDate>2008-04-22</rolloverDate>
</element>
<element id="2">
<rolloverDate>2008-04-17</rolloverDate>
</element>
</summaryAccount>
LEGAL NOTICE The information contained in this e-mail and
any attachments are private and confidential. This message
is solely intended for a particular recipient, if you are not
the intended recipient you are prohibited from storing,
copying, disseminating or using the information in any way.
If you received this e-mail in error please notify the sender
immediately. E-mail transmission cannot be guaranteed to be
secure or error-free as information could be intercepted,
corrupted, lost, destroyed, arrive late or incomplete, or
contain viruses. The sender therefore does not accept
liability for any errors, viruses or omissions in the
contents of this message, which arise as a result of
transmission. This e-mail is not intended to create legally
binding commitments on behalf of Northern Rock plc, nor do
its contents reflect the corporate views or policies of
Northern Rock plc. Northern Rock plc, Registered Office
Northern Rock House Gosforth Newcastle upon Tyne NE3 4PL.
Registered in England, number 3273685. Telephone No: 0191
2857191 Northern Rock plc is authorised and regulated by the
Financial Services Authority for deposit-taking; advising on
and arranging mortgages and general insurance; and for
introducing life assurance and investments.
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit
http://www.messagelabs.com/email
______________________________________________________________________
--~------------------------------------------------------------------
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>
--~--
LEGAL NOTICE
The information contained in this e-mail and any attachments are private and
confidential.
This message is solely intended for a particular recipient, if you are not the
intended
recipient you are prohibited from storing, copying, disseminating or using the
information
in any way. If you received this e-mail in error please notify the sender
immediately.
E-mail transmission cannot be guaranteed to be secure or error-free as
information could
be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or
contain viruses.
The sender therefore does not accept liability for any errors, viruses or
omissions in the
contents of this message, which arise as a result of transmission. This e-mail
is not
intended to create legally binding commitments on behalf of Northern Rock plc,
nor do its
contents reflect the corporate views or policies of Northern Rock plc.
Northern Rock plc,
Registered Office Northern Rock House Gosforth Newcastle upon Tyne NE3 4PL.
Registered in England, number 3273685. Telephone No: 0191 2857191
Northern Rock plc is authorised and regulated by the Financial Services
Authority for
deposit-taking; advising on and arranging mortgages and general insurance; and
for
introducing life assurance and investments.
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
--~------------------------------------------------------------------
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>
--~--