Hi All,
Norman Walsh has just released DocBook 4.4, which adds some new elements
including package, bibliolist, and biblioref.
To use DocBook 4.4 with XXE, you need to modify the DTD to add xml:space
'preserve' as a default attribute on "linespecific" elements, i.e.
literallayout, programlisting, programlistingco, screen, screenco and
screenshot. For previous versions of DockBook this was done by modifying
either docbookx.dtd or dbpoolx.mod to include the file
preservespace.ent. This doesn't work for 4.4, because in the new version
the entity xml-space.attrib has been added to linespecific.attrib,
defined as:
<!ENTITY % xml-space.attrib "xml:space (preserve) #IMPLIED">
This adds xml:space as an optional attribute to all "linespecific" elements.
My solution was to add the following at the top of dbpoolx.mod:
<!ENTITY % xml-space.attrib "xml:space (default|preserve) 'preserve'">
to make 'preserve' the default value for xml:space on the linespecific
elements.
Of course, you also need to modify catalog.xml and docbook.xxe, or
extend them in your user config directory.
Rob Smith