Re: Word/OpenOffice automatic TOC; not the one created by the DocBook XSL stylesheets. How?

Hussein Shafie <[email protected]> Thu, 19 Dec 2019 11:42:50 +0100
Newsgroups gmane.text.xml.xfc.general
Message-ID <[email protected]>
Maxime B. wrote:
>
> We would like to contribute a customization of DocBook FO XSL for XFC
> using styles and outline (attached).

XMLmind Software is not the owner/author/maintainer of the free, open 
source, DocBook XSL stylesheets. Therefore we cannot accept 
contributions for it.

Please note that the DocBook XSL stylesheets do not support XFC 
extensions like they support XEP, FOP, Antenna House, etc, extensions. 
Therefore I doubt that the maintainers of the DocBook XSL stylesheets 
would accept your contribution.

Sorry for that.



>
> I tested it with xfc_pro_java-6_1_0, docbook-xsl-ns-1.79.1,
> docbook-xsl-ns-1.75.2, Word 2007 and LibreOffice 6.0.7.3.

Your ".xfc" style specification attachments contain a number of styles 
looking like:
---
   <numbering name="Parties">
     <level format="Partie&#160;%{upper-roman}." />
   </numbering>

   ...

   <!-- Parts -->
   <paragraph-style name="Titre 1"
		   font-family="sans-serif"
		   font-size="25pt"
		   font-weight="bold"
		   keep-with-next="always"
		   text-align="center"
		   space-before="19pt"
		   outline-level="1"
		   numbering-level="1"
		   numbering="Parties" />
---

This is 100% correct, but this also implies that you'll have to modify 
the huge, complex, DocBook XSL stylesheets in order to add 
"xfc:user-style" extension attributes to all XSL-FO objects to be styled 
in Word or OpenOffice/LibreOffice.

This task is so daunting and so error-prone that we, XMLmind Software,
never dared giving it a shot.

In practice, our XSL-FO extension for generating named styles is used 
mainly by banks, insurances, health companies implementing database 
publishing using their own, small, in-house XSLT stylesheets.

Our XSL-FO extension for generating named styles is not meant to be 
retrofitted into existing large, complex, XSLT stylesheets like 
DocBook's or DITA's.

References:

* 6. XSL-FO extension for generating named styles, 
https://www.xmlmind.com/foconverter/_distrib/doc/user/user_styles.html

* 6. XSL-FO extension for generating named styles, 2. How it works,
https://www.xmlmind.com/foconverter/_distrib/doc/user/user_styles_quickstart.html

* 6. XSL-FO extension for generating named styles, 5. Adding named 
styles support to an existing XSLT stylesheet,
https://www.xmlmind.com/foconverter/_distrib/doc/user/user_styles_and_xslt.html



>
> I would have liked to add a Word or OpenOffice automatic table of
> contents instead of the one from the DocBook XSL. Is such a thing possible ?
>

No. This is not possible simply because there is no way to express 
"automatically generate a native TOC here" in standard XSL-FO.

The only thing you can do is to modify the DocBook XSL stylesheets in 
order to add "xfc:outline-level" extension attributes to all the 
fo:blocks acting as headings. By doing this, the user of Word or 
OpenOffice/LibreOffice can quickly and easily generate an automatic TOC 
from within the word processor. (A single button click suffices.)

We did this, without using named styles, in our in-house DITA 
(https://www.xmlmind.com/ditac/) and XHTML 
(https://www.xmlmind.com/ebookc/) stylesheets that generate XSL-FO and 
it works great.

References:

* 4.4.1. The "xfc:outline-level" extension attribute
https://www.xmlmind.com/foconverter/_distrib/doc/user/implementation.html#xfc_outline-level

--
XMLmind FO Converter Support List
[email protected]
https://www.xmlmind.com/mailman/listinfo/xfc-support