RE: [xsl] Wildcard problem

Subject: RE: [xsl] Wildcard problem
From: "Khorasani, Houman" <houman_khorasani@xxxxxxxxxxxxxx>
Date: Thu, 6 Oct 2005 12:16:34 +0100
HI David,

muenchian grouping; I have to read and learn more about it.  However I
can imagine what the index is supposed to do; to prevent the counting of
doubles in my case.

I don't get an error with your code. However I get a count of 10 when I
should have gotten 2.

<WAAUX03MeterPulse action="add">
<WAAUX03WithholdNumber action="add">
<WAAUX01MeterPulse action="add">
<WAAUX01Bar141 action="add">
<WAAUX01CallBarring action="add">
<WAAUX01Line action="add">
<WAAUX03ICB action="add">
<WAAUX01OCBE action="add">
<WAAUX03OCB action="add">
<WAAUX03Line action="add">

It still counts everything with WAAUX following two digits, which are
10.

As I said, I am very new to muenchian grouping. However could it be that
this is wrong:

<xsl:key name="WAAUX" match="*[starts-with(name(),'WAAUX')]"
use="name()"/>

Because not each element that starts with WAAUX needs a unique index.
But each element that starts with WAAUX AND a two number digits needs a
unique index, right?  But how is this possible? The Translate won't help
in this situation. Unless the problem is somewhere else...

Many thanks
Houman




-----Original Message-----
From: David Carlisle [mailto:davidc@xxxxxxxxx]
Sent: 06 October 2005 10:38
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Wildcard problem


> However the translate() funcation eliminates this differences.
> Is that possible or too complicated for XSLT?

You just need to do the de-duplication before the translate.
eg using keys (muenchian grouping)

<xsl:key name="WAAUX" match="*[starts-with(name(),'WAAUX')]"
use="name()"/>


<xsl:value-of select="count(*
[generate-id()=generate-id(key('WAAUX',name())[1])]
[starts-with(translate(name(),'123456789','000000000'),'WAAUX00')])"/>

Current Thread