# DocBook XSL Stylesheet Release Notes

### DocBook Open Repository Team

$Id: RELEASE-NOTES.html,v 1.1 2003/06/09 18:20:55 blackburst Exp $

08 May 2003

These are the release notes for the DocBook XSL Stylesheets. This file documents (mostly) changes to the public APIs. What, exactly, counts as a public API is still somewhat in question, but it includes at least the global parameters.

You may also be interested in the more detailed WhatsNew.

Release 1.61.0

Lots of bug fixes and improvements.

- Initial support for timestamp PI. From now you can use <?dbtimestamp format="Y-m-d H:M:S"?> to get current datetime in your document. Added localization support for datetime PI

- Added level 6 to test for `section` depth in section.level template so that section.title.level6.properties will be used for sections that are 6 deep or deeper. This should also cause a h6 to be created in html output.

- Don't use SVG graphics if `use.svg`=0

- Now uses number-and-title-template for sections only if `section.autolabel` is not zero.

- Added missing 'english-language-name' attribute to the l10n element, and the missing 'style' attribute to the template element so the current gentext documents will validate.

- Corrected several references to parameter `qanda.defaultlabel` that were missing the "$".

- Now accepts `admon.textlabel` parameter to turn off Note, Warning, etc. label.

- FeatReq #684561: support more XEP metadata

- Added hyphenation support. Added support for `coref`. Added `beginpage` support. (does nothing; see TDG).

- Added support for hyphenation-character, hyphenation-push-character-count, and hyphenation-remain-character-count

- Added `root.properties`, `ebnf.assignment`, and `ebnf.statement.terminator`

- Support bgcolor PI in table cells; make sure rowsep and colsep don't have any effect on the last row or column

- Handle `othercredit` on titlepage a little better

- Applied fix from Jeff Beal that fixed the bug that put secondary page numbers on primary entries. Same with tertiary page numbers on secondary entries.

- Added definition of missing variable `collection`.

- Make `footnote` formatting 'normal' even when it occurs in a context that has special formatting

- Added warning when `glossary.collection` is not blank, but it cannot open the specified file.

- Pick up the frame attribute on `table` and `informaltable`.

- `indexdiv`/`title` in non-autogenerated indexes are now picked up.

- Removed (unused) component.title.properties

- Move IDs from page-sequences down to titlepage blocks

- Use proportional-column-width(1) on more `table`s.

  Use proportional-column-width() for header/footer tables; suppress relative-align when when using FOP

- Check for `glossterm.auto.link` when linking firstterms; don't output gl. prefix on glossterm links

- Generate Part ToCs

- Support `glossary`, `bibliography`, and `index` in component ToCs.

- Refactored chunking code so that customization of chunk algorithm and chunk elements is more practical

- Support `textobject`/`phrase` on `inlinemediaobject`.

- Support 'start' PI on ordered lists

- Fixed test of $toc PI to turn on qandaset TOC.

- Added process.chunk.footnotes to sect2 through 5 to fix bug of missing footnotes when chunk level greater than 1.

- Added paramater `toc.max.depth` which controls maximal depth of ToC as requested by PHP-DOC group.

- Exempted `titleabbrev` from preamble processing in lists, and fixed variablelist preamble code to use the same syntax as the other lists.

- Added support for elements between variablelist and first varlistentry since DocBook 4.2 supports that now.

Release 1.60.1

Lots of bug fixes.

- The format of the `titlepage.templates.xml` files and the stylesheet that transforms them have been significantly changed. All of the attributes used to control the templates are now namespace qualified. So what used to be:

      <t:titlepage element="article" wrapper="fo:block">

  is now:

      <t:titlepage t:element="article" t:wrapper="fo:block">

  Attributes from other namespaces (including those that are unqualified) are now copied directly through. In practice, this means that the names that used to be “fo:” qualified:

      <title named-template="component.title"
             param:node="ancestor-or-self::article[1]"
             fo:text-align="center"
             fo:keep-with-next="always"
             fo:font-size="&hsize5;"
             fo:font-weight="bold"
             fo:font-family="{$title.font.family}"/>

  are now unqualified:

      <title t:named-template="component.title"
             param:node="ancestor-or-self::article[1]"
             text-align="center"
             keep-with-next="always"
             font-size="&hsize5;"
             font-weight="bold"
             font-family="{$title.font.family}"/>

  The `t:titlepage` and `t:titlepage-content` elements both generate wrappers now. And unqualified attributes on those elements are passed through. This means that you can now make the title font apply to ane entire titlepage and make the entire “recto” titlepage centered by specifying the font and alignment on the those elements:

      <t:titlepage t:element="article" t:wrapper="fo:block"
                   font-family="{$title.font.family}">

        <t:titlepage-content t:side="recto"
                   text-align="center">

- Support use of `titleabbrev` in running headers and footers.

- Added (experimental) `xref.with.number.and.title` parameter to enable number/title cross references even when the default would be just the number.

- Generate `part` ToCs if they're requested.

- Use proportional-column-width() in header/footer tables.

- Handle alignment correctly when `screenshot` wraps a graphic in a `figure`.

- Format `chapter` and `appendix` cross references consistently.

- Attempt to support tables with multiple `tgroup`s in FO.

- Output `fo:table-columns` in `simplelist` tables.

- Use `titlepage.templates.xml` for `indexdiv` and `glossdiv` formatting.

- Improve support for new bibliography elements.

- Added `footnote.number.format`, `table.footnote.number.format`, `footnote.number.symbols`, and `table.footnote.number.symbols` for better control of footnote markers.

- Added `glossentry.show.acronyms`.

- Suppress the draft-mode page masters when `draft-mode` is “no”.

- Make blank pages verso not recto. D'Oh!

- Improved formatting of `ulink` footnotes.

- Fixed bugs in graphic width/height calculations.

- Added class attributes to inline elements.

- Don't add “.html” to the filenames identified with the “dbhtml” PI.

- Don't force a ToC when sections contain `refentry`s.

- Make section title sizes a function of the `body.master.size`.

Release 1.59.2

The 1.59.2 fixes an FO bug in the page masters that causes FOP to fail.

- Removed the region-name from the region-body of blank pages. There's no reason to give the body of blank pages a unique name and doing so causes a mismatch that FOP detects.

- Output IDs for the first paragraphs in listitems.

- Fixed some small bugs in the handling of page numbers in double-sided mode.

- Attempt to prevent duplicated IDs from being produced when `endterm` on `xref` points to something with nested structure.

- Fix aligment problems in `equation`s.

- Output the type attribute on unordered lists (UL) in HTML only if the css.decoration parameter is true.

- Calculate the font size in formal.title.properties so that it's 1.2 times the base font size, not a fixed "12pt".

Release 1.59.1

The 1.59.1 fixes a few bugs.

- Added Bulgarian localization.

- Indexing improvements; localize book indexes to books but allow setindex to index an entire set.

- The default value for rowsep and colsep is now "1" as per CALS.

- Added support for `titleabbrev` (use them for cross references).

- Improvements to `mediaobject` for selecting print vs. online images.

- Added seperate property sets for `figure`s, `example`s, `equation`s, `tables`s, and `procedure`s.

- Make `lineannotation`s italic.

- Support `xrefstyle` attribute.

- Make `endterm` on `xref` higher priority than `xreflabel` target.

- Glossary formatting improvements.

Release 1.58.0

The 1.58.0 adds some initial support for extensions in xsltproc, adds a few features, and fixes bugs.

- This release contains the first attempt at extension support for xsltproc. The only extension available to date is the one that adjusts table column widths. Run `extensions/xsltproc/python/xslt.py`.

- Fixed bugs in calculation of adjusted column widths to correct for rounding errors.

- Support nested `refsection` elements correctly.

- Reworked `gentext.template` to take context into consideration. The name of elements in localization files is now an xpath-like context list, not just a simple name.

- Made some improvements to bibliography formatting.

- Improved graphical formatting of admonitions.

- Added support for `entrytbl`.

- Support spanning index terms.

- Support `bibliosource`.

Release 1.57.0

- The 1.57.0 release wasn't documented here. Oops.

Release 1.56.0

The 1.56.0 release fixes bugs.

- Reworked chunking. This will break all existing customizations layers that change the chunking algorithm. If you're customizing chunking, look at the new “content” parameter that's passed to `process-chunk-element` and friends.

- Support continued and inherited numeration in `orderedlist` formatting for FOs.

- Added Thai localization.

- Tweaked stylesheet documentation stylesheets to link to TDG and the parameter references.

- Allow title on tables of contents ("Table of Contents") to be optional. Added new keyword to `generate.toc`. Support tables of contents on sections.

- Made separate parameters for table borders and table cell borders: `table.frame.border.color`, `table.frame.border.style`, `table.frame.border.thickness`, `table.cell.border.color`, `table.cell.border.style`, and `table.cell.border.thickness`.

- Suppress formatting of “endofrange” `indexterm`s. This is only half-right. They should generate a range, but I haven't figured out how to do that yet.

- Support `revdescription`. (Bug #582192)

- Added `default.float.class` and fixed figure floats. (Bug #497603)

- Fixed formatting of `sbr` in FOs.

- Added context to the “missing template” error message.

- Process `arg` correctly in a `group`. (Bug #605150)

- Removed 'keep-with-next' from `formal.title.properties` attribute set now that the stylesheets support the option of putting such titles below the object. Now the $placement value determines if 'keep-with-next' or 'keep-with-previous' is used in the title block.

- Wrap “url()” around external-destinations when appropriate.

- Fixed typo in compact list spacing. (Bug #615464)

- Removed spurious hash in anchor name. (Bug #617717)

- Address is now displayed verbatim on title pages. (Bug #618600)

- The `bridgehead.in.toc` parameter is now properly supported.

- Improved effectiveness of HTML cleanup by increasing the number of places where it is used. Improve use of HTML cleanup in XHTML stylesheets.

- Support table of contents for `appendix` in `article`. (Bug #596599)

- Don't duplicate footnotes in `bibliography`s and `glossary`s. (Bug #583282)

- Added `default.image.width`. (Bug #516859)

- Totally reworked `funcsynopsis` code; it now supports a 'tabular' presentation style for 'wide' prototypes; see `funcsynopsis.tabular.threshold`. (HTML only right now, I think, FO support, uh, real soon now.)

- Reworked support for difference marking; toned down the colors a bit and added a “system.head.content” template so that the diff CSS wasn't overriding “user.head.content”. (Bug #610660)

- Added call to the “*.head.content” elements when writing out long description chunks.

- Make sure `legalnotice` link is correct even when chunking to a different `base.dir`.

- Use CSS to set viewport characteristics if `css.decoration` is non-zero, use div instead of p for making graphic a block element; make figure `title`s the default alt text for images in a `figure`.

- Added space-after to `list.block.spacing`.

- Reworked section.level template to give “correct” answer instead of being off by one.

- When processing tables, use the `tabstyle` attribute as the division class.

- Fixed bug in `html2xhtml.xsl` that was causing the XHTML chunker to output HTML instead of XHTML.

Release 1.55.0

The 1.55.0 fixes a few bugs and reorganizes some parameters.

- Added Lithuanian and Vietnamese localizations.

- Support `orientation`, `rotated-width`, and `rotated-height` on a `<?dbfo>` processing instruction to rotate table cells in FO output.

- Restart all `book`s on page 1.

- Added experimental “chunkfast” support.

- Support automatic indexes in `webpage` elements. This isn't as useful as it first sounds, because as the code stands only a single page (not an entire site) will be indexed. Also, moving this directly into the `autoidx.xsl` file may not be the best strategy. It would be better if it was somehow contained in the Website stylesheets.

- Fixed bug where `<?dbhtml>` processing instructions to specify filenames and directories were used even if they occurred in components that weren't being chunked.

- Allow `generate.toc` parameter to control ToCs in `article` `appendix`es. Suppressed by default.

- Fixed bug where the code that searches for pseudo-attributes in processing instructions would match suffixes instead of only whole attributes. (In other words, “`xxxfoo`” would match “`foo`”.)

- Left-align monospaced verbatim environments in FO.

Release 1.54.1

The 1.54.1 release fixes a couple of bugs in 1.54.0.

- Remove spurious character from `common.xsl`. This bug was a fatal error in Xalan2.

- Make sure empty cells inherit from their row.

- Actually support `refsection` in HTML.

Release 1.54.0

The 1.54.0 release fixes some bugs and adds a couple of new features.

- New option to generate back-of-book FO indexes with page-number ranges in place of sequences (e.g., 1-4 instead of 1,2,3,4) (`make.index.markup`).

- Experimental support for generating ToCs/LoTs as separate HTML chunks (`chunk.tocs.and.lots`).

- New option to generate HTML Help indexes using HHK files, allowing see-also processing & referencing of exact locations of index terms (`htmlhelp.use.hhk`).

- Olink processing tweaks.

- Improvements in graphic and table processing.

- Additions and workarounds for better compatibility with FO engines (FOP, PassiveTeX, XEP).

- Bug fixes for FO profiling, indexing of Refentrys.

Release 1.53.0

The 1.53.0 release fixes some bugs, refactors page masters, and adds some new parameters.

- Reworked page headers and footers.

- Support numbered bibliography styles.

- Added new property set for inline monospaced elements.

- Added menuchoice separator parameter.

- Added property sets for each section level heading to remove hard coded font sizes.

- Make table headers bold by default in FO.

- Use basic initial-page-number property instead of extended force-page-count property to get components to start on odd pages in double.sided mode.

- Added format.page.number template to set the page number format for all page sequences

- Don't include equations without titles in the LoT for equations.

- Added support for `para.propagates.style`.

- Added cell padding and spacing parameters for HTML.

- Added tr.attributes named template (for odd-row coloring and such).

Release 1.52.0

The 1.52.0 release contains a lot of significant changes. Make sure you read the ChangeLog as well.

- Created a complete and consistent set of chunking parameters: `chunker.output.cdata-section-elements` `chunker.output.doctype-public` `chunker.output.doctype-system` `chunker.output.encoding` `chunker.output.indent` `chunker.output.media-type` `chunker.output.method` `chunker.output.omit-xml-declaration` `chunker.output.standalone`. Removed `default.encoding` (use `chunker.output.encoding` instead); removed `output.method` (use `chunker.output.method` instead).

- Added a large number of HTML Help parameters: `htmlhelp.button.back`, `htmlhelp.button.forward`, `htmlhelp.button.hideshow`, `htmlhelp.button.home.url`, `htmlhelp.button.home`, `htmlhelp.button.jump1.title`, `htmlhelp.button.jump1.url`, `htmlhelp.button.jump1`, `htmlhelp.button.jump2.title`, `htmlhelp.button.jump2.url`, `htmlhelp.button.jump2`, `htmlhelp.button.locate`, `htmlhelp.button.next`, `htmlhelp.button.options`, `htmlhelp.button.prev`, `htmlhelp.button.print`, `htmlhelp.button.refresh`, `htmlhelp.button.stop`, `htmlhelp.button.zoom`, `htmlhelp.hhc.binary`, `htmlhelp.hhk`, `htmlhelp.hhp.window`, `htmlhelp.show.advanced.search`, `htmlhelp.show.favorities`, `htmlhelp.show.menu.xml`, and `htmlhelp.only`.

- Support for new style OLinks. Added `target.database.document`, `use.local.olink.style`, `current.docid`, and `olink.doctitle`.

- Added experimental support for xref styles. Added `use.role.as.xrefstyle`.

- Completely reworked page master/page sequence configuration.

- Support cross-references to paragraphs by using the nearest containing section title as the cross-reference text. Is this a good idea?

- Removed unused `chunk.datafile`.

- Added header/footer parameters: `footer.rule`, `footers.on.blank.pages`, `header.rule`, and `headers.on.blank.pages`.

- Added column parameters: `column.count.back`, `column.count.body`, `column.count.front`, `column.count.index`, `column.count.lot`, `column.count.of.index`, `column.count.titlepage`, and `column.count`.

- Added `draft.mode`.

- Added `glossary.as.blocks`, `glosslist.as.blocks`, `glossterm.separation`, `glossterm.width`.

- Added `suppress.footer.navigation` and `suppress.header.navigation`.

- Added `make.graphic.viewport`, `nominal.image.depth`, `nominal.image.width`, and `use.embed.for.svg`

- Added `refentry.title.properties` and `section.title.properties`

- Added `use.embed.for.svg`

- Added generate.meta.abstract.xml

Release 1.51.0

- Added an extension function to determine the intrinsic size of an image. Works for the image formats supported by the Java Image class and or PostScript-derived formats.

- Added callout bullets 11-15.

- Removed obsolete `using.chunker` parameter.

- Added `points.per.em` parameter.

- Added `generate.manifest` parameter.

- Added `manifest` parameter.

- Added `compact.list.item.spacing` parameter.

- Added `html.extra.head.links` parameter.

- Added `use.svg` parameter; support SVG in HTML.

- Convert the library code to a literate programming style with xweb.

- Support `xref` to any element that has a title (at least when it has a title).

- Pass MathML through unchanged.

- Completely reworked support for graphic attributes in HTML.

- Add additional `LINK` elements to the HTML `HEAD` (for site navigation as in Mozilla---note, however, that Mozilla has disabled this recently for the 1.0 release).

- Support `shade.verbatim` parameter in FO.

- Support compact list spacing in FO.

Release 1.50.0

- This release introduces a new version numbering scheme. Version numbers are now three part: major.middle.minor. Changes to the middle version number indicate a change in the public API. Changes in only the minor number indicate simply a new release.

- The `generate.`*`.toc` and `generate.`*`.lot` parameters have been replaced by a single structured parameter, `generate.toc`.

  It's likely that the HTML and FO stylesheets do not handle ToC generation in exactly the same way, but they should.

- Added `strip-attributes.xsl` to the profiling stylesheets. This allows one to strip off, for example, profiling attributes after a document has been profiled.

- Improved numeration of footnotes and table footnotes. Made table footnotes render “properly” in FOs.

- Added a `formal.title.placement` parameter, allowing users to select placement of formal object titles either above or below the object.

- Improved control over delimiters for TeX equations.

- Support `classsynopsis` and friends in FOs.

- Changed HTML stylesheets to use `em` instead of `i` for `emphasis`.

- Added `chunk.quietly` parameter.

- Improved profiling code to support the full range of profiling attributes and to support one-pass profiling (if your XSLT processor understands the EXSLT `node-set` function.