3

I've inherited a doc publishing process that takes DocBook and builds html and PDF output, using Apache FOP for both. This project had been started, but never completed. With lots of tweaking, I've able to get most of the doc sets to build (20+), except for a handful, and they all fail with a SEVERE code with one of these two conditions:

"fo:flow" is missing child elements. Required content model: marker*
"fo:block" is not a valid child of "fo:root"

The xml output that comes out of the docbook and the docbook-fop checks out as well-formed.

The fop error in one book, "EndecaGloss", for example, points to the end of this string:

<fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"/>

Here’s the log output in this case:

[java] SEVERE: javax.xml.transform.TransformerException: file:/scratch/publishing/hudson/jobs/build-main-endeca-documentation/workspace/serverdoc/WorkingDoc/main/publishing/build-files/../output/fo/Gloss/EndecaGloss/EndecaGloss-fo.xml:11:10410: "fo:flow" is missing child elements. Required content model: marker* (%block;)+ (See position 11:10410)
[java] Oct 16, 2014 1:30:10 PM org.apache.fop.cli.Main startFOP

For context, in the -fo.xml file it’s at the end of this antenna house thing, which I think is trying to set up a header/footer for the PDF:

<fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" 
                  xmlns:fo="somenamespace" 
                  hyphenate="false" master-reference="lot" language="en" format="i" 
                  initial-page-number="auto-odd" 
                  force-page-count="end-on-even" hyphenation-character="-" 
                  hyphenation-push-character-count="2" hyphenation-remain-character-count="2">
  <fo:static-content flow-name="xsl-region-before-first">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">

      <fo:table table-layout="fixed" width="100%" border-bottom-width="1pt" border-bottom-style="solid" border-bottom-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(0)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="before" relative-align="baseline">
              <fo:block>
            <fo:block xmlns:d="http://docbook.org/ns/docbook"/></fo:block></fo:table-cell>
            <fo:table-cell text-align="center" display-align="before" relative-align="baseline">
              <fo:block>
            <fo:block xmlns:d="http://docbook.org/ns/docbook"/></fo:block></fo:table-cell>
            <fo:table-cell text-align="right" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>

              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-before-odd">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-bottom-width="1pt" border-bottom-style="solid" border-bottom-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(0)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="right" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-before-even">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-bottom-width="1pt" border-bottom-style="solid" border-bottom-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="right" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-before-blank">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-bottom-width="1pt" border-bottom-style="solid" border-bottom-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="right" display-align="before" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-footnote-separator">
    <fo:block>
      <fo:leader color="black" leader-pattern="rule" leader-length="1in"/>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-after-first">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-top-width="1pt" border-top-style="solid" border-top-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(3)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">  Oracle Commerce Guided Search  Glossary   Version 11.1 • July 2014   
                </fo:block>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="end" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">
                  <fo:page-number/>
                </fo:block>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-after-odd">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-top-width="1pt" border-top-style="solid" border-top-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(3)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">  Oracle Commerce Guided Search  Glossary   Version 11.1 • July 2014   
                </fo:block>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="end" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">
                  <fo:page-number/>
                </fo:block>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-after-even">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-top-width="1pt" border-top-style="solid" border-top-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(3)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">
                  <fo:page-number/>
                </fo:block>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="end" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">  Oracle Commerce Guided Search  Glossary   Version 11.1 • July 2014   
                </fo:block>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:static-content flow-name="xsl-region-after-blank">
    <fo:block font-family="Myriad-Roman,Symbol,ZapfDingbats" margin-left="0pt" font-weight="bold">
      <fo:table table-layout="fixed" width="100%" border-top-width="1pt" border-top-style="solid" border-top-color="black">
        <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
        <fo:table-column column-number="2" column-width="proportional-column-width(0)"/>
        <fo:table-column column-number="3" column-width="proportional-column-width(3)"/>
        <fo:table-body>
          <fo:table-row block-progression-dimension.minimum="14pt">
            <fo:table-cell text-align="start" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">
                  <fo:page-number/>
                </fo:block>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="center" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook"/>
              </fo:block>
            </fo:table-cell>
            <fo:table-cell text-align="end" display-align="after" relative-align="baseline">
              <fo:block>
                <fo:block xmlns:d="http://docbook.org/ns/docbook">  Oracle Commerce Guided Search  Glossary   Version 11.1 • July 2014   
                </fo:block>
              </fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
      </fo:table>
    </fo:block>
  </fo:static-content>
  <fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"/>
</fo:page-sequence>

Does anyone have any idea on what’s going on here?

Marcus Rickert
  • 4,138
  • 3
  • 24
  • 29
Rob
  • 123
  • 2
  • 9

2 Answers2

3

The error message marker* (%block;)+ suggests that the flow element needs some block content while in your sample the element is empty.

Martin Honnen
  • 160,499
  • 6
  • 90
  • 110
2

Well, you say the error is this:

<fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"/>

It would most certainly be. That is am empty element with nothing inside. The content model of flow requires something inside so that is an error.So you have essentially a page with no content.

Kevin Brown
  • 8,805
  • 2
  • 20
  • 38