docbookを使用してドキュメントを生成します。メイン ドキュメントの構造は、さまざまなモジュールにxincludeを使用してモジュール化されています。
私の問題は、xinclude を介してメイン ドキュメントに含まれる逐語的な要素 (重要な空白を含む要素) に関するものです。
メイン ドキュメントでリテラル レイアウトを直接使用すると、出力は期待どおりになり、空白が保持されます。
リテラルレイアウト要素を含むセクションを含むインクルード ファイルを使用したいと考えています。インクルードされたファイルを使用してドキュメントを生成すると、出力から空白が取り除かれます。
リテラルレイアウトやプログラムリストなどの逐語的な要素で空白を保持する方法を教えてもらえますか?
ファイル 1.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<section id="someid">
<title>section title</title>
<para>
<literallayout>
This shall show a small picure with '0':
0
000
00000
</literallayout>
</para>
</section>
スタンドアロン ドキュメントとして生成すると、出力は期待どおりになります。
0
000
00000
次のように使用する場合: File2.xml:
<?xml version="1.0" encoding="ISO-8859-15"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<book>
<bookinfo>
...minimum input here
</bookinfo>
<chapter id="First_Chapter">
<title>Introduction</title>
<section id="First_Section">
<title>literallayout and programlisting in the main xml file</title>
<para><literallayout>This should look like a triangle built out of the character '0'
0
000
00000
</para>
</section>
<xi:include href="File1.xml"
xmlns:xi="http://www.w3.org/2001/XInclude" />
</chapter>
</book>
このドキュメントを生成すると、最初のセクションは期待どおりになります (ピラミッドとして)
ただし、xinclude でインクルードされるセクションでは、すべて '0' が 1 行 0 000 00000 に出力されます。