This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: [docbook-apps] Unsuccessful with Saxon and Fop
- From: Bob Stayton <bobs at sco dot com>
- To: John Himpel <jwhimpel at tseinc dot com>
- Cc: docbook-apps at lists dot oasis-open dot org
- Date: Thu, 18 Sep 2003 09:43:33 -0700
- Subject: Re: [docbook-apps] Unsuccessful with Saxon and Fop
- References: <1063843929.27425.88.camel@himpel.linux.bogus>
I can duplicate this problem with xsltproc and FOP 0.20.5.
The "IPD" in the message is the inline-progression-dimension.
It turns out that this is a bug in the stylesheet.
The revhistory element generates a table that uses the
proportional-column-width() function to set the column
widths. But the table does not have an overall width
indicator. Here is what the XSL-FO spec says about it:
-----------------------
The use of the "proportional-column-width()" function is only permitted
when the fixed table layout is used.
If the use of proportional column widths are desired on a table of an
unknown explicit width, the inline-progression-dimension cannot be
specified to be "auto". Instead, the width must be specified as a
percentage. For example, setting table-layout="fixed" and
inline-progression-dimension="100%" would allow proportional column
widths while simultaneously creating a table as wide as possible in the
current context.
-----------------------
I interpret this to mean that a table cannot use
proportional columns if no horizontal dimension is
specified at all.
If I add width="100%" to the fo:table for revhistory,
there is no error. Apparently it has to be specified as
some width value. Should the revhistory table be fixed
at 100% width?
Bob Stayton 400 Encinal Street
Publications Architect Santa Cruz, CA 95060
Technical Publications voice: (831) 427-7796
The SCO Group fax: (831) 429-1887
email: bobs@sco.com
On Wed, Sep 17, 2003 at 07:11:59PM -0500, John Himpel wrote:
> Hi,
>
> I am trying to tranform a simple docbook xml file into a pdf. I am using
> Saxon
> and Fop. I keep getting the following error from Fop:
>
> [ERROR] At least one of minimum, optimum, or maximum IPD must be
> specified on table.
>
> Supporting documentation below:
>
>
> Toolset:
> saxon: 6.5.1
> xerces: 2.5.1
> fop: 0.20.5
> xml-dtd: 4.2
> xsl-stylesheets: 1.61.2
>
> .xml document is below:
>
> <?xml version='1.0' encoding='utf-8' ?>
> <!DOCTYPE chapter PUBLIC '-//OASIS//DTD DocBook XML V4.2//EN'
>
> 'http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd' >
> <chapter id='Chapter'>
> <chapterinfo>
>
> <authorgroup>
>
> <corpauthor>
> The <trademark>GPL</trademark> Project, Inc.
> </corpauthor>
>
> <author>
> <firstname>John</firstname>
> <surname>Doe</surname>
> <authorblurb>
> <para>
> <email>jdoe@GPL.Org</email>
> </para>
> </authorblurb>
> </author>
>
> <editor>
> <surname>
> The <trademark>GPL</trademark> Project, Inc. Documentation
> Team
> </surname>
> </editor>
>
> </authorgroup>
>
> <copyright>
> <year>2001</year>
> <holder>The <trademark>GPL</trademark> Project, Inc.</holder>
> </copyright>
>
> <releaseinfo>
> This documentation was released as part of
> <trademark>GPL</trademark> &relvers;
> </releaseinfo>
>
> <revhistory>
> <revision>
> <revnumber>1.0</revnumber>
> <date>2001/06/01</date>
> <authorinitials>DD</authorinitials>
> <revremark>Final LinuxDoc Version</revremark>
> </revision>
>
> <revision>
> <revnumber>1.1</revnumber>
> <date>2001/11/12</date>
> <authorinitials>
> The <trademark>GPL</trademark> Project, Inc. Documentation
> Team
> </authorinitials>
> <revremark>Conversion to DocBook</revremark>
> </revision>
> </revhistory>
>
> <productnumber>
> $id:$
> </productnumber>
>
> </chapterinfo>
>
> <title>Sample Chapter</title>
>
> <para>
> Paragraph 1.
> </para>
>
> </chapter>
>
> Script to run Saxon:
>
> SAXON_BIN=/usr/local/Saxon
> SAXON_EXTENSIONS_BIN=/home/jdoe/GPL/Devel/xml/docbook/oasis-open/docbook-xsl/extensions
> XERCES_BIN=/usr/local/Xerces/xerces-2_5_0
> CLASSPATH=${CLASSPATH}:\
> ${SAXON_BIN}/saxon.jar:\
> ${SAXON_EXTENSIONS_BIN}/saxon651.jar:\
> ${XERCES_BIN}/xercesImpl.jar:\
> ./xml
>
> export CLASSPATH
>
> /usr/java/j2sdk1.4.1_02/bin/java \
>
> -Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl \
>
> -Djax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl \
> com.icl.saxon.StyleSheet \
> -o fo/${1}.fo \
> -x org.apache.xml.resolver.tools.ResolvingXMLReader \
> -y org.apache.xml.resolver.tools.ResolvingXMLReader \
> -r org.apache.xml.resolver.tools.CatalogResolver \
> -u \
> ${1}.xml \
> xml/docbook/oasis-open/docbook-xsl/fo/docbook.xsl \
> fop.extensions=1 \
> use.extensions=1
>
> Script to run fop:
>
>
> AVALON_BIN=/usr/local/Fop/fop-0.20.5/lib
> BATIK_BIN=/usr/local/Fop/fop-0.20.5/lib
> FOP_BIN=/usr/local/Fop/fop-0.20.5/build
> JIMI_BIN=/usr/local/Fop/fop-0.20.5/lib
> XALAN_BIN=/usr/local/Xalan/xalan-j_2_5_1/bin
> XERCES_BIN=/usr/local/Xerces/xerces-2_5_0
> CLASSPATH=${CLASSPATH}:\
> ${AVALON_BIN}/avalon-framework-cvs-20020806.jar:\
> ${BATIK_BIN}/batik.jar:\
> ${FOP_BIN}/fop.jar:\
> ${XALAN_BIN}/xalan.jar:\
> ${XERCES_BIN}/xercesImpl.jar:\
> ${JIMI_BIN}/JimiProClasses.jar
> export CLASSPATH
>
> /usr/java/j2sdk1.4.1_02/bin/java \
> org.apache.fop.apps.Fop \
> -fo \
> fo/${1}.fo \
> -pdf \
> pdf/${1}.pdf
>
> The new Xerces is because when I get this to work properly, I am hoping
> to
>
> begin using the newly supported XInclude.
>
>
> Any advice would be greatly appreciated.
>
> Also, will the saxon651 extension work with only saxon 6.5.1 or will it
> work with any version of saxon 6.5.1 or later?
>
> John
>
To unsubscribe from this list, send a post to docbook-apps-unsubscribe@lists.oasis-open.org.