[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Generate N elements


Subject: Re: [xsl] Generate N elements
From: "Kenny Bogoe (BogoeMD)" <kenny@xxxxxxxxx>
Date: Thu, 08 Jul 2004 15:12:23 +0200

Thanks, Mukul. Thanks, Mike.

Will it be complicated to get N=4 elements with different attribute values
in the result tree, like:

<Root>
    <info value="10"/>
    <info value="20"/>
    <info value="30"/>
    <info value="40"/>
</Root>

(attribute values are calculated on the fly as well, like)

Best regards,
Kenny



> Hi Kenny,
>   The following recursive stylesheet does this -
> 
> <?xml version="1.0"?>
> <xsl:stylesheet
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
>   
> <xsl:output method="xml" indent="yes" />
>   
> <xsl:template match="/Root">
>   <Root>
>     <xsl:call-template name="generateTag">
>       <xsl:with-param name="x" select="data" />
>     </xsl:call-template>
>   </Root>  
> </xsl:template>
>   
> <xsl:template name="generateTag">
>   <xsl:param name="x" />
>   <info/>
>   <xsl:if test="$x > 1">
>     <xsl:call-template name="generateTag">
>        <xsl:with-param name="x" select="$x - 1" />
>     </xsl:call-template>
>   </xsl:if>
> </xsl:template>
>  
> </xsl:stylesheet>
> 
> Regards,
> Mukul
> 
> --- "Kenny Bogoe (BogoeMD)" <kenny@xxxxxxxxx> wrote:
>> Hi,
>> 
>> This is probably very simple... I need to generate N
>> elements on the fly. N
>> is a number in my source xml.
>> 
>> Source xml:
>> <Root>
>>     <data>4</data>
>> </Root>
>> 
>> Result xml:
>> 
>> <Root>
>>     <info/>
>>     <info/>
>>     <info/>
>>     <info/>
>> </Root>
>> 
>> 
>> Thanks,
>> Kenny Bogoe
> 
> 
> 
> 
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail - 50x more storage than other providers!
> http://promotions.yahoo.com/new_mail


Current Thread