OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: XInclude problems after upgrading docbooc-xsl


Hi,

I'm in the process of upgrading my toolchain from a somewhat dusted docbook-xsl-1.69 to 1.74. 
But it seems like it creates invalid FO with my configuration: XEP spews

[error] Element 'i' belonging to the anonymous namespace cannot occur in an XSL-FO document 
outside 'instream-foreign-object' elements.

on every external olink. Validating the FO within oxygen fails too so I think the FO is indeed invalid 
(and not my XEP too old). The invalid output looks like this:

<fo:block>Some text 
    <fo:basic-link show-destination="replace"
    external-destination="url(http://some.where/reference/my-chapter.html)"
        ><fo:inline xmlns:xlink="http://www.w3.org/1999/xlink"; font-style="italic"
        >Reference Manual</fo:inline>, 22. Chapter, <i
        xmlns:xlink="http://www.w3.org/1999/xlink";
        xmlns:xi="http://www.w3.org/2001/XInclude";>My Chapter Name</i></fo:basic-link></fo:block>
</fo:block>

It seems like this <i>-block doesn't belong there. Rendering the FO works ok if I remove it.
I traced this problem back to docbook-xsl-1.72.0, version 1.71.1 is the last one that works.

The output from 1.71.1 looks a bit different:

<fo:block>Some text
   <fo:basic-link
   external-destination="url(http://some.where/reference/my-chapter.html)"
      ><fo:inline font-style="italic">Reference Manual</fo:inline>, 22.
      Chapter, My Chapter Name </fo:basic-link></fo:block>

My olinkdb.xml looks like this:

<targetset xmlns:xi="http://www.w3.org/2001/XInclude";>
    <sitemap>
        <dir name="root">
            <document targetdoc="current">
                <xi:include href="target.db"/>
            </document>
            <document targetdoc="user-manual" baseuri="http://some.where/user/";>
                <xi:include href="user-manual-ext.db"/>
            </document>
            <document targetdoc="reference-manual" baseuri="http://some.where/reference/";>
                <xi:include href="reference-manual-ext.db"/>
            </document>
...

So I create an id-db for each manual in my collection and pull that in via XInclude. The current manual
(also part of the collection) is always found in "target.db" too. The created id databases look ok.

Does someone have an idea how to fix this?

Thank you very much.

Kind regards,

Gerd


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]