xsl-list
[Top] [All Lists]

RE: Trouble using recursion to make a Counter

2004-07-30 01:09:40
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(_dot_)smith(_at_)convergys(_dot_)com 
[mailto:greyson(_dot_)smith(_at_)convergys(_dot_)com] 
Sent: 29 July 2004 22:52
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] 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."


--+------------------------------------------------------------------
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>
--+--