Subject: Re: [xsl] translation() function? From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx> Date: Sun, 11 Nov 2007 15:08:02 +0530 |
Probably you need something like: <xsl:template match="p"> <xsl:apply-templates /> </xsl:template> <xsl:template match="emph"> <span> <xsl:call-template name="rend"/> <xsl:apply-templates/> </span> </xsl:template> <xsl:template match="text()"> <xsl:value-of select="upper-case(.)"/> </xsl:template> <xsl:template name="rend"> <!-- some processing --> </xsl:template> On 11/11/07, Alice Ju-Hsuan Wei <ajwei@xxxxxxxxxxx> wrote: > Hi, > > I wanted to generate a whole chunk of text from a mixture of upper > and lower case letters to all upper case. The problem is that my > original text has also child elements. Here is an example: > > XML: > > <p><emph rend="bold">Upper and lower case transformations</emph> are > very easy in XSLT thanks to the translate function. An alternative > solution could be to implement the transformation and switch character > by character, but since <emph rend="bold">XSLT</emph> already gives us > a <emph rend="red bold">better</emph> solution, let's better take > advantage of it. </p> > > XSLT: > > <xsl:template match="p"> > <xsl:value-of select="upper-case(.)"/> > </xsl:template> > > <xsl:template match="emph"> > <span> > <xsl:call-template name="rend"/> > <xsl:apply-templates/> > </span> > </xsl:template> > > This code does output the upper case letters, but leaves out all other > templates that associate with the additional formatting. I tried using > <xsl:apply-templates/> inside the template, but then the text are no > longer in upper case. > > Any ideas, anyone? > > Thanks in advance. > > Alice -- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] translation() function?, Alice Ju-Hsuan Wei | Thread | [xsl] problem with creating structu, Andreas Peter |
[xsl] translation() function?, Alice Ju-Hsuan Wei | Date | Re: [xsl] Wide Finder in XSLT --> d, M. David Peterson |
Month |