DocBook5 <step> not allowed in <sidebar>? (can't render PDF with xsltproc+fop)

79 views Asked by At

I have a DocBook5 doc which renders into chunked HTML using xsltproc just fine.

I am now trying to render to PDF, but at the fo output stage, xsltproc gives me:

Element step in namespace 'http://docbook.org/ns/docbook' encountered in sidebar, but no template matches.

If I try to render the resulting fo using fop, indeed, xsltproc seems to have left out the steps in any procedures in sidebars, because fop chokes on the first one:

...pdf/book.fo:9:1597: Error(9/1597): fo:list-block is missing child elements.
Required Content Model: marker* (list-item)+

How come xsltproc doesn't care about this when it comes to chunked HTML, but doesn't like this for fo?

Update: Seems it's the stylesheet that makes this message:

$ cat /usr/share/sgml/docbook/xsl-ns-stylesheets-1.75.2/fo/docbook.xsl | grep -B 15 "but no template matches"
<xsl:key name="id" match="*" use="@id|@xml:id"/>

<!-- ==================================================================== -->

<xsl:template match="*">
  <xsl:message>
    <xsl:text>Element </xsl:text>
    <xsl:value-of select="local-name(.)"/>
    <xsl:text> in namespace '</xsl:text>
    <xsl:value-of select="namespace-uri(.)"/>
    <xsl:text>' encountered</xsl:text>
    <xsl:if test="parent::*">
      <xsl:text> in </xsl:text>
      <xsl:value-of select="name(parent::*)"/>
    </xsl:if>
    <xsl:text>, but no template matches.</xsl:text>
0

There are 0 answers