Re: [xsl] xsl formating string

Subject: Re: [xsl] xsl formating string
From: JBryant@xxxxxxxxx
Date: Tue, 5 Apr 2005 15:30:09 -0500
What processor are your using to turn your XML into an FO file and to turn 
your FO file into an output file (PDF?) and what is the exact error 
message?

Jay Bryant
Bryant Communication Services
(presently consulting at Synergistic Solution Technologies)




josh higgins <doopsterus@xxxxxxxxx> 
04/05/2005 02:49 PM
Please respond to
xsl-list@xxxxxxxxxxxxxxxxxxxxxx


To
xsl-list@xxxxxxxxxxxxxxxxxxxxxx
cc

Subject
Re: [xsl] xsl formating string






am I not allowed to have fo blocks inside the when
blocks b/c it always yells at me and tells me that I
am not allowed to have a fo block in that section of
the code.


--- JBryant@xxxxxxxxx wrote:

> <span> is an HTML element. I didn't realize you were
> writing FO. 
> <fo:inline> is the FO equivalent of <span>, more or
> less. In your case, 
> you can put the styling information on the blocks,
> as you have done.
> 
> To get this to work, you need to use a relative path
> identifier rather 
> than the absolute path from the root. So, you need:
> 
> <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="../format_control='C1'"/>
>       <fo:block color="blue">
>         <xsl:value-of select="."/>
>       </fo:block>
>     </xsl:when>
>     <xsl:when test="../format_control='U1'"/>
>       <fo:block font-style="underline">
>         <xsl:value-of select="."/>
>       </fo:block>
>     </xsl:when>
>   </xsl:choose>
> </xsl:template>
> 
> You also had </xsl:choose> in place of the last
> </xsl:when>. Your XML 
> parser should have complained about that.
> 
> Jay Bryant
> Bryant Communication Services
> (presently consulting at Synergistic Solution
> Technologies)
> 
> 
> 
> 
> josh higgins <doopsterus@xxxxxxxxx> 
> 04/05/2005 02:12 PM
> Please respond to
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> 
> 
> To
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> cc
> 
> Subject
> Re: [xsl] xsl formating string
> 
> 
> 
> 
> 
> 
> 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>
>                  </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>
> 
=== message truncated ===



 
__________________________________ 
Do you Yahoo!? 
Yahoo! Personals - Better first dates. More second dates. 
http://personals.yahoo.com

Current Thread