Re: [xsl] Creating nested output from <xsl:if>'s

Subject: Re: [xsl] Creating nested output from <xsl:if>'s
From: Paul Giannaros <ceruleanblaze@xxxxxxxxx>
Date: Sat, 4 Dec 2004 17:59:25 +0000
On Saturday 04 December 2004 14:02, George Cristian Bina wrote:
> Hi Paul,
>
> You can also do this with a chain of named templates, each performs one
> check and delegates to the next:
>
> <xsl:template name="checkPitch">
>      <xsl:if test="@pitch='x-high'">
>          <xsl:text>&lt;PITCH BASE="70%"&gt;</xsl:text>
>          <xsl:call-template name="checkRate"/>
>          <xsl:text>&lt;/PITCH&gt;</xsl:text>
>      </xsl:if>
> </xsl:template>
> <xsl:template name="checkRate">
>      <xsl:if test="@rate='slow'">
>          <xsl:text>&lt;RATE SPEED="-40%"&gt;</xsl:text>
>          <xsl:apply-templates/>
>          <xsl:text>&lt;/RATE&gt;</xsl:text>
>      </xsl:if>
> </xsl:template>
> <xsl:template match="//prosody">
>      <xsl:call-template name="checkPitch"/>
> </xsl:template>
>
> Best Regards,
> George

Thanks again for your reply George, but would this not mean that if pitch was 
not set to x-high then checkRate would not be called? Again, this would mean 
a very huge file if I had to do this for every combination of attributes for 
the prosody element.

Current Thread