On 01/06/07, Steve Odlind <[EMAIL PROTECTED]> wrote: >> The problem seems to be that I am using a custom DTD. If I change the >> DOCTYPE in the source XML file to point to the Apache Forrest >> document-v20.dtd (rather than my own custom DTD) and remove "a" from the >> "link" template, then the <a> elements are indeed converted to <link> >> elements in the internal XML file. >> >> When the DOCTYPE of the source XML file points to my own custom DTD, and >> I add "a" to the "link" template, the "basic-link" elements in the .fo >> file do contain the appropriate >> "internal-destination"/"external-destination" attribute. So it seems to >> be a spurious error message.
>In my experience these errors are on spat out in the case of genuine >errors. I suspect you missed something in your fo file that was empty. >> Any ideas what to try next? >You say you are using a custom DTD, so you should have a >transformation converting your source format to XDoc. I'm guessing you >don't have such a thing and this is why you see errors. If you do have >such a transformation then it's output is not a valid XDoc - perhaps >you are missing the doctype declaration? I have added the relevant code to my sitemap.xmap, pointing to my custom XSL (if that is what you suggested I do). I have followed the example provided at http://forrest.apache.org/docs_0_80/your-project.html, and now get the error message: "linkmap.html BROKEN: C:\Forrest0_8\apache-forrest-0.8\main\webapp\. (Access is denied)" I have also checked every instance of the "basic-link" element in all the .fo files in my site, and they all contain non-empty "internal-destination" and "external-destination" attributes. So is the problem with sitemap.xmap? Thanks for any help. Steve Ross > > Thanks for your help, > > Steve > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > On Behalf Of Ross Gardler > Sent: 01 June 2007 09:12 > To: user@forrest.apache.org > Subject: Re: Broken linkmap.pdf > > On 31/05/07, Steve Odlind <[EMAIL PROTECTED]> wrote: > > > > My 0.7 docs contained numerous external <a href="http://www..."> and > > internal <a href="#..."> references, which were not included in > site.xml. > > > > When I upgraded to 0.8, I noticed that these links were ignored in > PDFs. > > Looking at document-to-fo.xsl, it seems that there is no <template > > match="a">, only a <template match="link|fork|jump">. When I change > this > > template to <template match="a|link|fork|jump">, the build breaks with > the > > following error message: > > > > "linkmap.pdf BROKEN: internal-destination or external-destination > must be > > specified in basic-link" > > > > The PDFs are then generated with working links, so this is not so much > of a > > problem, as the only thing affected is linkmap.pdf. But it would be > nice to > > have a successful build. > > > > Does anyone know what I have to do to get rid of this error message, > and > > still have links that work in PDF? Do I have to change all my <a > href=""> > > references to <link href="">? > > You are using the v2.0 DTD, so no, do not change your links. > > > The version 0.8 document-v20.mod does not contain entries for "link", > "fork" > > or "jump", but they are inlcuded in document-to-fo.xsl? Whereas "a" is > > included in document-v20.mod, but not in document-to-fo.xsl. Is this > an > > oversight, or have I missed something? > > There is no match for "a" elements since that element is only valid in > our XDoc 2.0. internally Forrest uses XDoc 1.3, which only supports > "link|fork|jump". The conversion from 2.0 to 1.3 is done prior to the > use of document-to-fo.xsl. > > This was also the case in Forrest 0.7, it has not changed in the 0.8 > release. > > --- > > Given that the error you describe is not affected by any known change > that I can think of it sounds like it is either a strange side effect > in your site, or it is an error in your content. > > Here's a few debugging steps we can try: > > using your original source files and an unmodified document-to-fo.xsl > file request http://localhost:8888/testpage.xml > > This will give you the internal XML that will be fed into the > document-to-fo.xsl stylesheet. > > Inspect this file for anything strange, you should see that it is now > using the 1.3 version of the DTD and that all links have been > converted from "a" to "link|fork|jump" as appropriate. > > Now request http://localhost:8888/testpage.fo this will give you the > formatting objects file used to create the PDF. > > Inspect this file paying particular attention to the links that you > expect to see. > > If this doesn't highlight any specific problems then post snippets of > the source, internal xml and FO files. It may trigger a thought in > someones mind. > > Ross > > ______________________________________________________________________ > This email has been scanned by the MessageLabs Email Security System. > For more information please visit http://www.messagelabs.com/email > ______________________________________________________________________ > > ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________