I think I figured this out -- it does appear that the 1.72.0
stylesheets are missing some critical code. In fo/lists.xsl, the
original template for a vertical simplelist looks like:

<xsl:template match="[EMAIL PROTECTED]'vert']">
 <fo:table xsl:use-attribute-sets="normal.para.spacing">
   <xsl:call-template name="simplelist.table.columns">
...

Note that layout and width information is not being set for <fo:table>
-- both of which appear to by required by FOP 0.93.

If I duplicate the section from the horizontal simplelist and change
the template to:

<xsl:template match="[EMAIL PROTECTED]'vert']">

 <xsl:variable name="table.width">
   <xsl:choose>
     <xsl:when test="$explicit.table.width != ''">
       <xsl:value-of select="$explicit.table.width"/>
     </xsl:when>
     <xsl:when test="$default.table.width = ''">
       <xsl:text>100%</xsl:text>
     </xsl:when>
     <xsl:otherwise>
       <xsl:value-of select="$default.table.width"/>
     </xsl:otherwise>
   </xsl:choose>
 </xsl:variable>

 <fo:table xsl:use-attribute-sets="normal.para.spacing">
   <xsl:choose>
     <xsl:when test="$axf.extensions != 0 or $xep.extensions != 0">
       <xsl:attribute name="table-layout">auto</xsl:attribute>
       <xsl:if test="$explicit.table.width != ''">
         <xsl:attribute name="width"><xsl:value-of
                            select="$explicit.table.width"/></xsl:attribute>
       </xsl:if>
     </xsl:when>
     <xsl:otherwise>
       <xsl:attribute name="table-layout">fixed</xsl:attribute>
       <xsl:attribute name="width"><xsl:value-of
                                     select="$table.width"/></xsl:attribute>
     </xsl:otherwise>
   </xsl:choose>
   <xsl:call-template name="simplelist.table.columns">
...

then everything appears to work just fine. I'm not sure why the
table-layout and width attributes were set for a horizontal list but
not a vertical list since they are both implemented with tables -- but
perhaps it is just an oversight in fo/lists.xsl.

Ken

On 5/2/07, Ken Morse <[EMAIL PROTECTED]> wrote:
I'm seeing a problem where a simplelist doesn't appear to be formatted
correctly for FOP:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd";>
<book>
  <chapter id="ch1">
    <title>simplelist</title>
    <simplelist type="vert" columns="1">
      <member>List item 1</member>
      <member>List item 2</member>
      <member>List item 3</member>
    </simplelist>
  </chapter>
</book>

I run the commands:
tools\xsltproc --stringparam fop1.extensions 1 --stringparam hyphenate
false --output testsimplelist.fo xsl\1.72.0\fo\docbook.xsl
testsimplelist.xml

tools\fop\fop.bat -fo testsimplelist.fo -pdf testsimplelist.pdf

and get the output:
May 2, 2007 9:05:10 AM org.apache.fop.fo.FONode attributeWarning
WARNING: Warning(2/48408): fo:table, table-layout="auto" is currently
not supported by FOP
May 2, 2007 9:05:10 AM org.apache.fop.fo.PropertyList convertAttributeToProperty
SEVERE: Ignoring property: column-width="proportional-column-width(1)"
(file:///C:/DocBook/testsimplelist.fo:2:48408:
proportional-column-width() function may only be used when fo:table
has table-layout="fixed".; property:'column-width')

I'm using FOP 0.93 and the 1.72.0 version of the stylesheets on
Windows XP. Is this perhaps a problem with the FO stylesheets not
building a table for simplelist that FOP can deal with?

Ken


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to