OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [docbook-apps] No border between multiple tgroups in a single cals table for fo output.


I think I agree with Dale's interpretation of the Cals table spec[1].  It 
says that rowsep is "Ignored for the last <row> of the <table>, where the 
frame value applies.".  It does not say the last row of each tgroup. I think 
it is a deficiency in the stylesheet to not output the rowsep for the last 
row of a tgroup that is followed by another tgroup. I think because the 
stylesheet uses an fo:table for each tgroup that it confuses tgroup with 
table in the application of the table frame attribute.  Each tgroup should 
*not* use the table.frame template blindly.

[1] http://www.oasis-open.org/specs/a502.htm

Bob Stayton
Sagehill Enterprises
bobs@sagehill.net


----- Original Message ----- 
From: "Dale Smith" <dales@vxitech.com>
To: "Mauritz Jeanson" <mj@johanneberg.com>
Cc: <docbook-apps@lists.oasis-open.org>
Sent: Friday, February 06, 2009 11:31 AM
Subject: Re: [docbook-apps] No border between multiple tgroups in a single 
cals table for fo output.


> "Mauritz Jeanson" <mj@johanneberg.com> writes:
>
>> |  -----Original Message-----
>> |  From: Dale Smith
>> |
>> |  The calsTable template in fo/table.xsl has (edited):
>> |
>> |    <xsl:for-each select="tgroup">
>> |
>> |      <fo:table xsl:use-attribute-sets="table.table.properties">
>> |        <xsl:call-template name="table.frame"/>
>> |
>> |        <xsl:if test="following-sibling::tgroup">
>> |          <xsl:attribute name="border-bottom-width">0pt</xsl:attribute>
>> |          <xsl:attribute name="border-bottom-style">none</xsl:attribute>
>> |        </xsl:if>
>> |
>> |        <xsl:if test="preceding-sibling::tgroup">
>> |          <xsl:attribute name="border-top-width">0pt</xsl:attribute>
>> |          <xsl:attribute name="border-top-style">none</xsl:attribute>
>> |        </xsl:if>
>> |
>> |        <xsl:apply-templates select="."/>
>> |      </fo:table>
>> |    </xsl:for-each>
>> |
>> |  I suspect that only *one* of those xsl:if's are needed, not
>> |  both.  And
>> |  in fact, commenting out the first xsl:if gives me borders between my
>> |  tgroups.
>>
>>
>> It's probably not very common, but anyone who wants to style the
>> border-bottom of a not-last tgroup differently from the border-top of the
>> last tgroup needs both xsl:ifs.
>>
>> Commenting out the first xsl:if makes tgroup no 1 use the border values
>> assigned in the table.frame template, including a border-bottom-style of
>> "solid" (and this value comes from the table.frame.border.style
>> attribute-set).
>>
>> Instead of commenting out, you can change the first xsl:if to use (for
>> example)
>>
>>   <xsl:attribute name="border-bottom-width">0.5pt</xsl:attribute>
>>   <xsl:attribute name="border-bottom-style">solid</xsl:attribute>
>
> Hmm.  Well, the way the code currently is there will never be any
> border at all between tgroups (unless you customize the stylesheet).
> And that even if rowsep='1' on the last row a not-last tgroup.
>
> My reading of the rowsep attribute is that it applies to the bottom of
> each row, except for the last row in a table (not last row in a
> tgroup), where the frame attribute should be used instead.
>
> -Dale
>
> -- 
> Dale P. Smith
> dales@vxitech.com
> 216-447-4059 x2018
> 216-447-8951 FAX
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>
>
> 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]