Subject: Re: [xsl] xsl formating string From: Brian Chrisman <incubus@xxxxxxxxxxxxxx> Date: Tue, 5 Apr 2005 12:55:41 -0700 |
On Tue, Apr 05, 2005 at 12:12:44PM -0700, josh higgins wrote: > Ok, I have come up with the following code but it does > not like it. Does not like the fo:block in the > choose. I tried to add the <span> </span> block but > it didn't like that either. Said it was no allowed > there. Ideas? > > > > <xsl:template name="detail"> > <xsl:for-each select="/invoice/detail/row"> > <fo:block font-size="8pt" > > <xsl:apply-templates select="transaction_detail"/> > <xsl:value-of select="amount"/> > </fo:block> > </xsl:for-each> > </xsl:template> > > <xsl:template match="transaction_detail"> > <xsl:choose> > <xsl:when > test="/invoice/detail/row/format_control='C1'"/> > <fo:block color="blue"> > <xsl:value-of select="."/> > </fo:block> > </xsl:when> > <xsl:when > test="/invoice/detail/row/format_control='U1'"/> > <fo:block font-style="underline"> > <xsl:value-of select="."/> > </fo:block> > </xsl:choose> this should be </xsl:when> your stylesheet should be getting rejected as invalid XML... > </xsl:choose> > </xsl:template> > > > > --- JBryant@xxxxxxxxx wrote: > > > Ah, so. In that case: > > > > <xsl:template match="transaction_detail"> > > <xsl:choose> > > <xsl:when test="../format_control='C1'"> > > <!-- Apply the C1 format --> > > </xsl:when> > > <xsl:when test="../format_control='.0'"> > > <!-- Apply the .0 format --> > > </xsl:when> > > <!-- and so on --> > > </xsl:choose> > > </xsl:template> > > > > Jay Bryant > > Bryant Communication Services > > (presently consulting at Synergistic Solution > > Technologies) > > > > > > > > > > josh higgins <doopsterus@xxxxxxxxx> > > 04/05/2005 01:44 PM > > Please respond to > > xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > > > > > To > > xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > cc > > > > Subject > > Re: [xsl] xsl formating string > > > > > > > > > > > > > > Sorry my xml is not like that... Here is a sample of > > my xml > > > > <row> > > <line_sequence>3</line_sequence> > > > > <transaction_detail> > > Transaction > > Activity</transaction_detail> > > <format_control>C1</format_control> > > > > <group_no>1</group_no> > > </row> > > > > format_control determines the format of > > transaction_detail > > > > > > --- JBryant@xxxxxxxxx wrote: > > > Hi, Josh, > > > > > > For the sake of this dicussion, I assume that the > > > strings are contained in > > > elements and that the elements have format > > > attributes, thus: > > > <someElement format="C1">Some String</someElement> > > > > > > In that case, you can do this: > > > <xsl:template match="someElement"> > > > <xsl:choose> > > > <xsl:when test="@format='C1'"> > > > <span style="color:#0000FF"><xsl:value-of > > > select="."/></span> > > > </xsl:when> > > > <xsl:when test="@format='.0'"> > > > <xsl:value-of select="concat(., '.0')"/> > > > </xsl:when> > > > <xsl:when test="somethingElse"> > > > And so on... > > > </xsl:when> > > > <xsl:otherwise> > > > <xsl:message>Ruh Roh! No > > format!</xsl:message> > > > </xsl:otherwise> > > > </xsl:choose> > > > </xsl:template> > > > > > > If the source document contains the strings and > > > format values in some > > > other structure, you'll have to adjust, but I hope > > > you get the idea. If > > > you can't figure it out, post a sample of your > > > source document's > > > structure. > > > > > > Jay Bryant > > > Bryant Communication Services > > > (presently consulting at Synergistic Solution > > > Technologies) > > > > > > > > > > > > > > > josh higgins <doopsterus@xxxxxxxxx> > > > 04/05/2005 01:06 PM > > > Please respond to > > > xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > > > > > > > > To > > > xsl <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> > > > cc > > > > > > Subject > > > [xsl] xsl formating string > > > > > > > > > > > > > > > > > > > > > I have a xml file that I has strings in it. I > > want > > > to > > > do so sort of if logic that says if it is "C1" > > > format > > > with blue text if it is "U1" format it with > > > underline. > > > Then if it is "0" I want to concatenate a .0 on > > the > > > end of that how can that be done? How can I do > > > these > > > things. I know that I will probably use an xsl:if > > > > > but I am not sure what the snytax is with > > comparing > > > strings. Can someone give me a sample code of how > > > this would be done? Thanks! > > > > > > Josh > > > > > > __________________________________________________ > > > Do You Yahoo!? > > > Tired of spam? Yahoo! Mail has the best spam > > > protection around > > > http://mail.yahoo.com > > > > > > > > > > > > > > __________________________________ > > Do you Yahoo!? > > Yahoo! Personals - Better first dates. More second > > dates. > > http://personals.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] xsl formating string, Jon Gorman | Thread | RE: [xsl] xsl formating string, JBryant |
[xsl] Passing sort parameter as a h, Maria Amuchastegui | Date | Re: [xsl] xsl formating string, JBryant |
Month |