Subject: RE: Trouble using recursion to make a Counter
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Fri, 30 Jul 2004 09:09:40 +0100
|
You don't need recursion here, you can get the required number using
<xsl:number level="any" count="*[contains(name(),'Desc')]"/>
However you may find this data is easier to process if you convert it into a
form that doesn't pack so much information into the tag names. Far better to
put the level number into a separate attribute than to make it part of the
element name.
Michael Kay
> -----Original Message-----
> From: greyson.smith@xxxxxxxxxxxxx
> [mailto:greyson.smith@xxxxxxxxxxxxx]
> Sent: 29 July 2004 22:52
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Trouble using recursion to make a Counter
>
>
>
>
>
> Hello! I've been struggling with something that seemed very
> simple when I
> first started looking at it, but has become frustrating. I
> have hit the
> archives and google, yet have found nothing to spark my
> imagination. All I
> need is to process my xml and for each node that I process
> increment and
> print a counter to the result file.
>
> I have data that looks like this:
>
> <level1>
> <Level1Desc>Neighborhood</Level1Desc>
> <Level1ID>1</Level1ID>
> <Level2>
> <Level2Desc>Street</Level2Desc>
> <Level2ID>100</Level2ID>
> <Level3>
> <Level2Desc>House</Level2Desc>
> <Level2ID>1000</Level2ID>
> </Level3>
> <Level3>
> <Level2Desc>Condo</Level2Desc>
> <Level2ID>1001</Level2ID>
> </Level3>
> </Level2>
> <Level2>
> <Level2Desc>Park</Level2Desc>
> <Level2ID>101</Level2ID>
> </Level2>
> </level1>
>
> There are many level 1s in my data.
>
> I have looked at using the position function, but it seems to
> be based on
> levels, so i was getting 1s 2s and 3s quite a bit. I tried looking at
> recursion, but the examples I found were not nested.
>
> I have been trying to use recursion samples that I found
> using this list
> which I shall not reprint, but can supply a copy if needed.
>
> So the end result of the processing would look something like
>
> 1 Neighborhood
> 2 Street
> 3 House
> 4 Condo
> 5 Park
>
> Which is to say that every item that I do something with I
> need a unique
> sequential number.
>
> Thank you.
> --
> "NOTICE: The information contained in this electronic mail
> transmission is
> intended by Convergys Corporation for the use of the named
> individual or
> entity to which it is directed and may contain information that is
> privileged or otherwise confidential. If you have received
> this electronic
> mail transmission in error, please delete it from your system without
> copying or forwarding it, and notify the sender of the error
> by reply email
> or by telephone (collect), so that the sender's address records can be
> corrected."
|