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: Re: [docbook-apps] Olinks in PDF missing valid destination?

Hi Bob,

What I observed with <insertOlinkPdfFrag> left undefined -- I'm assuming that means insert.olink.pdf.frag is 0 -- I was getting external-destination="url(#dest=)" in the .fo. No file name, no fragment.

I think docbkx-tools 2.0.14 is picking up version 1.76.1 stylesheets. What I didn't do is get the stylesheets and try without docbkx-tools.


On Thu, Oct 24, 2013 at 7:46 PM, Bob Stayton <bobs@sagehill.net> wrote:
Hi Mark,
Can you clarify one point for me?   When <insertOlinkPdfFrag> is not set to 1, does "not properly resolved" mean the link can open the other PDF document but not scroll to the proper location, or does it not open the other PDF at all?  I would expect the former.
I'm not a user of docbkx-tools, but I presume setting <insertOlinkPdfFrag> is the same as setting the DocBook XSL stylesheet parameter named 'insert.olink.pdf.frag', right?  That parameter's default value should probably be 1, now that all XSL-FO processors support the fragment identifiers.
Bob Stayton
Sagehill Enterprises

From: Mark Craig
Sent: Thursday, October 24, 2013 6:00 AM
Subject: Re: [docbook-apps] Olinks in PDF missing valid destination?

By the way, 

When I want to resolve olinks between PDF documents, it looks like I also need <insertOlinkPdfFrag>1</insertOlinkPdfFrag>.

Otherwise external-destinations are not properly resolved (though according to Olink debug messages they are resolved).

Again, I'm seeing this behavior with 1.76.1.


On Oct 23, 2013, at 3:38 PM, Mark Craig wrote:

Hi Nick,

Thanks very much for your help.

Following your suggestion does the trick:


As a result, the link gets resolved as an internal-destination in the .fo, and this works fine in the PDF.

<fo:basic-link internal-destination="chapter"><fo:inline>link to the next chapter</fo:inline></fo:basic-link>.


On Oct 23, 2013, at 2:35 PM, Wood Nick wrote:

I do not pretend to be an expert on this – I setup my pdf olinks using Bob’s excellent book plus some guidance you have posted in the past.  However, have you tried adding <currentDocid/> in the <configuration/> of your POM and then using the sitemap in your olinkdb.xml (as I believe this provide the location of the documents).
From: Mark Craig [mailto:mark.craig@gmail.com] 
Sent: Wednesday, October 23, 2013 10:11 AM
To: DocBook Apps
Subject: [docbook-apps] Olinks in PDF missing valid destination?
In the past I have successfully set up Olink resolution for HTML.
I have read and tried to implement
But I'm not managing to do the same for PDF.
A clickable link of the Olink is there in the PDF, but with no valid destination.
This is with docbkx-tools 2.0.14, so DocBook XSL 1.76.1 and FOP 1 (I think 1.1).
(There's only one Olink, in the para at line 20 of book.xml.)
The main part of the target database document for the test is minimal:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE targetset[
<!ENTITY book SYSTEM '../../target/target.db'>
 <document targetdoc="book" baseuri="book.pdf">&book;</document>
Although Olink debug messages make it look like the stylesheets are finding a match for the link, the .fo is missing information.
In the build output, I see:
Olink debug: cases for targetdoc='book' and targetptr='chapter' in language ''.
Olink debug: CaseA matched.
Olink debug: CaseA key is the final selection: book/chapter/
But the .fo has an external-destination with no actual destination:
<fo:basic-link show-destination="replace" external-destination="url(#dest=)"
><fo:inline>link to the next chapter</fo:inline></fo:basic-link>
If I remove the baseuri value from the <document> element in the target database document, then the external-destination attribute changes a little:
<fo:basic-link show-destination="replace" external-destination="url(#dest=chapter)"
><fo:inline>link to the next chapter</fo:inline></fo:basic-link>
What should I do differently for a valid destination to be generated?
Thanks for your advice.

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