On 02/20/2012 09:53 PM, Jirka Kosek wrote:
>
> I have discovered that there are few problem in generated table of
> contents. It is missing entries:
>
> - for preface
>
> Expressed in .bookmap as
> <bookmap>
> ...
> <frontmatter>
> <preface href="preface.xml"/>
> </frontmatter>
> </bookmap>
>
> - for index (either explicitly included by
> <backmatter>/<booklists>/<indexlist> or generated automatically using
> appropriatr option)
>
> The same problem occurs in outline (PDF bookmarks). Preface and index is
> missing here. Also another kinds of booklists like<toc/> or
> <tablelist/> should be shown as a separate entry in PDF bookmarks.
For our point of view, this is precisely the desired behavior.
In all the books (published by a variety of publishers) we have examined
before implementing ditac, we have found that it is *not* customary to
have preface or index entries appear in the TOC. That's why this feature
has not been not implemented.
Moreover, the DITA standard does not seem to indicate that such entries
may be added to the TOC or how (i.e. which attribute? navtitle? toc?)
such entries could be added to the TOC.
This being said, once again, this feature has already been requested by
a customer and we planned to implement it (as a command-line option
and/or may be this can be specified in the map -- not sure yet) in the
next release of ditac.
>
> I understand that in order to fix these issues changes in Java part of
> ditac are needed.
No. I don't think so. In principle, the ditac_lists.ditac_list file
contains all the information needed to add the missing entries to the
TOC. (Otherwise this would be a flaw in the design of the
ditac_lists.ditac_list file.)
Excerpts from an actual map:
---
<bookmap chunk="by-document" id="xdr_manual" xml:lang="en">
<title>XMLmind Document Repository - Manual</title>
...
<frontmatter>
<booklists>
<toc chunk="to-content" copy-to="index.html"/>
<figurelist chunk="to-content"/>
<tablelist chunk="to-content"/>
</booklists>
<bookabstract chunk="to-content" href="introduction.dita"
id="intro"/>
</frontmatter>
...
<backmatter>
<booklists>
<indexlist chunk="to-content"/>
</booklists>
</backmatter>
</bookmap>
---
Excerpts from the corresponding ditac_lists.ditac_list:
---
<ditac:chunkList>
<ditac:chunk file="manual.pdf">
<ditac:titlePage/>
<ditac:toc/>
<ditac:figureList/>
<ditac:tableList/>
<ditac:topic id="introduction" number="bookabstract.1"
role="bookabstract" title="Introduction"/>
<ditac:topic id="deploying_intro" number="part.1" role="part"
title="Deploying the document repository"/>
...
<ditac:indexList/>
</ditac:chunk>
</ditac:chunkList>
---
The above ditac_lists.ditac_list shows us that the (single and only)
chunk manual.pdf contains an bookabstract having "introduction" as its
id. (a bookabstract, like preface, is also a child of frontmatter.)
It also shows us that chunk manual.pdf contains a LOF, a LOT before the
body of the document and an Index after the body of the document.
After you modify xsl/fo/ditac_figureList.xsl and
xsl/fo/ditac_indexList.xsl in order to give *fixed* ids to these
components (e.g. id="__LOF", id="__LOT", id="__IDX" -- this is
implemented like that in xsl/xhtml/*.xsl), then you'll have everything
you need to add the corresponding entries to the TOC and to the PDF outline.
See http://www.xmlmind.com/ditac/_distrib/doc/manual/howItWorks.html
> Do you think that it would be possible to obtain such
> patch before regular release of new version of ditac?
>
No. Please understand that we are a small company, that all our software
engineers are very, very busy and that we definitely cannot distract
them from their current tasks.
Here's what I suggest: [1] feel free to patch ditac v2.1.0_01 as you
want [2] send us a copy of the patched sources [3] we'll make sure that
the next release of ditac is *functionally* superior or equal to the
patched version you sent us. However, we cannot guarantee that the next
release of ditac will be 100% compatible with yours in terms of
command-line options, XSLT stylesheet parameters, etc.
We'll send you an email when we'll start working on the next release of
ditac (probably in a couple of weeks).
--
XMLmind DITA Converter Support List
[email protected]
http://www.xmlmind.com/mailman/listinfo/ditac-support