Hello,
I want to insert a hard page break in the XSL-FO document obtained from
a simple DocBook XML 4 document containing the processing instruction
<?hard-pagebreak?>
and transformed with the following customization layer:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:import
href="file:///E:/kit/Docbook/docbook-xsl-ns-1.74.0/fo/docbook.xsl"/>
<xsl:template match="processing-instruction('hard-pagebreak')">
<fo:block break-after='page'/>
</xsl:template>
</xsl:stylesheet>
With the namespace aware version of DocBook XSL my template that matches
on the 'hard-pagebreak' processing instruction is never fired so the
hard page break is not inserted. With the no namespace version of
DocBook XSL the template is fired by the xsl:apply-templates element on
line 350 of docbook/xsl/fo/sections.xsl. This difference between the
namespace aware and no namespace versions is in both DocBook XSL 1.73.2
and DocBook XSL 1.74.0. Can anyone figure out why there is this
difference between the namespace aware and no namespace versions or how
I could fix/work around it so that I can insert a hard page break with
the namespace aware version?
A sample DocBook 4 document for reproducing the problem (the
xsl:apply-templates on line 350 of sections.xsl is inside a template
that matches on sect1 elements):
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.docbook.org/xml/4.4/docbookx.dtd">
<article>
<title>Article Title</title>
<sect1>
<title>Preface</title>
<para>Testing hard page break</para>
</sect1>
<sect1>
<title>Chapter 1</title>
<para>There is some text in the first paragraph.</para>
<?hard-pagebreak?>
<sect2>
<title>Subchapter 1.1</title>
<para>I want this this subchapter on a new page.</para>
</sect2>
</sect1>
</article>
Thank you,
Sorin
http://www.oxygenxml.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]