Bug 162121 - Fix Valgrind documentation such that it can be translated from DocBook to PDF via Apache FOP
Summary: Fix Valgrind documentation such that it can be translated from DocBook to PDF...
Status: CONFIRMED
Alias: None
Product: valgrind
Classification: Developer tools
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR wishlist
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-05-15 12:08 UTC by Bart Van Assche
Modified: 2008-05-15 12:08 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bart Van Assche 2008-05-15 12:08:49 UTC
Version:           3.4.0.SVN (using KDE 3.5.8)
Installed from:    Compiled From Sources
Compiler:          gcc version 4.3.1 gcc version 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036] (SUSE Linux)
OS:                Linux

Apparently it's not possible to translate the Valgrind documentation with Apache's FOP from DocBook to PDF. I'm not completely sure whether this is a docbook or a Valgrind issue. But we should sort this out such that we can swicth from the obsolete pdfxmltex to FOP.

See also: http://www.nabble.com/fop-throws-a-javax.xml.transform.TransformerException-td16840978.html

How to reproduce (make sure docbook 4, fop and Sun's JRE are installed -- output below is from an OpenSUSE 11 beta system):

rpm -q docbook_4    # docbook_4-4.5-81
rpm -q jre-1.6.0_05 # jre-1.6.0_05-fcs
rpm -q fop          # fop-0.94-40
svn co svn://svn.valgrind.org/valgrind/trunk valgrind
cd valgrind
make dist
cd docs/print
export JAVA_HOME=/usr/java/jre1.6.0_05
FOP_OPTS="-Xmx400M" fop index.fo index.pdf

Error message printed by fop:

SEVERE: Exception
javax.xml.transform.TransformerException: org.apache.fop.fo.ValidationException: file:/home/bart/software/valgrind/docs/print/index.fo:4417:4879: Error(4417/4879): fo:inline is not a valid child element of fo:flow.
        at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:168)
        at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:115)
        at org.apache.fop.cli.Main.startFOP(Main.java:166)
        at org.apache.fop.cli.Main.main(Main.java:197)

---------

javax.xml.transform.TransformerException: org.apache.fop.fo.ValidationException: file:/home/bart/software/valgrind/docs/print/index.fo:4417:4879: Error(4417/4879): fo:inline is not a valid child element of fo:flow.
        at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:501)
        at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:165)
        at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:115)
        at org.apache.fop.cli.Main.startFOP(Main.java:166)
        at org.apache.fop.cli.Main.main(Main.java:197)
Caused by: org.apache.fop.fo.ValidationException: file:/home/bart/software/valgrind/docs/print/index.fo:4417:4879: Error(4417/4879): fo:inline is not a valid child element of fo:flow.
        at org.apache.fop.fo.FONode.invalidChildError(FONode.java:411)
        at org.apache.fop.fo.FONode.invalidChildError(FONode.java:396)
        at org.apache.fop.fo.pagination.Flow.validateChildNode(Flow.java:106)
        at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:302)
        at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:185)
        at org.apache.xalan.transformer.TransformerIdentityImpl.startElement(TransformerIdentityImpl.java:1072)
        at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
        at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
        ... 4 more
---------
org.apache.fop.fo.ValidationException: file:/home/bart/software/valgrind/docs/print/index.fo:4417:4879: Error(4417/4879): fo:inline is not a valid child element of fo:flow.
        at org.apache.fop.fo.FONode.invalidChildError(FONode.java:411)
        at org.apache.fop.fo.FONode.invalidChildError(FONode.java:396)
        at org.apache.fop.fo.pagination.Flow.validateChildNode(Flow.java:106)
        at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:302)
        at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:185)
        at org.apache.xalan.transformer.TransformerIdentityImpl.startElement(TransformerIdentityImpl.java:1072)
        at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
        at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
        at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:165)
        at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:115)
        at org.apache.fop.cli.Main.startFOP(Main.java:166)
        at org.apache.fop.cli.Main.main(Main.java:197)