## Changes since the 1.70.1 release

## Release: 1.71.1

The following is a list of changes that have been made since the 1.70.1 release.

### Common

The following changes have been made to the `common` code since the 1.70.1 release.

- For backward compatability autoidx-ng.xsl is invoking "kosek" indexing method again.

- Add support for Xalan generating a root xml:base like saxon.

- Fixed `olink` `database` access for Saxon and DB5.

### Extensions

The following changes have been made to the `extensions` code since the 1.70.1 release.

- Removed zero-byte .cvsignore files.

### FO

The following changes have been made to the `fo` code since the 1.70.1 release.

- Made some minor doc refinements.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

- Removed irrelevant `info` from intro for FO param `reference`.
  Closes doc request #1573888. Thanks to Mauritz Jeanson for
  reporting.

- Complete the support for the `info` element.
  Add empty templates for `titleabbrev` in the default mode.

- For backward compatability autoidx-ng.xsl is invoking "kosek" indexing method again.

- Terminate with message if processing DB5 and cannot strip the namespace.

- Add support for Xalan to add root node xml:base for db5 docs.

- Fixed bug 1566358 to add space between `orgname` and `orgdiv`.

- Made `xref` template target variables into params to fix bug #1559689.

- Empty rows aren't allowed.

- Added params to ulink and `link` templates so call-template by name works.

- Fix bug in xlink.href (should be xlink:href).

- Added support for profiling based on xml:lang and status attributes.

- Create axf attribute before adding fotex element.

- Add two-stage recursion for `hyphenate.verbatim` to fix recursion depth bug for long programlistings.

### HTML

The following changes have been made to the `html` code since the 1.70.1 release.

- Made some minor doc refinements.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

- For backward compatability autoidx-ng.xsl is invoking "kosek" indexing method again.

- Terminate with message if processing DB5 and cannot strip the namespace.

- Add support for Xalan to add root node xml:base for db5 docs.

- Fixed bug 1566358 to add space between `orgname` and `orgdiv`.

- Made `xref` template target variables into params to fix bug #1559689.

- Added params to `link` and ulink to support call-template usage.

- Added support for profiling based on xml:lang and status attributes.

- Made changes in namespace declarations to prevent xmllint's
  canonicalizer from treating them as relative namespace URIs.
  - Changed xmlns:k="java:com.isogen.saxoni18n.Saxoni18nService"
  to xmlns:k="http://www.isogen.com/functions/com.isogen.saxoni18n.Saxoni18nService";
  Saxon accepts either form
  (see http://www.saxonica.com/documentation/extensibility/functions.html);
  to Saxon, "the part of the URI before the final '/' is immaterial".
  - Changed, e.g. xmlns:xverb="com.nwalsh.xalan.Verbatim" to
  xmlns:xverb="xalan://com.nwalsh.xalan.Verbatim"; Xalan accepts
  either form
  (see http://xml.apache.org/xalan-j/extensions.html#java-namespace-declare);
  just as Saxon does, it will "simply use the string to the
  right of the rightmost forward slash as the Java class name".
  - Changed xmlns:xalanredirect="org.apache.xalan.xslt.extensions.Redirect"
  to xmlns:redirect="http://xml.apache.org/xalan/redirect", and
  adjusted associated code to make the current Xalan redirect spec.
  (see http://xml.apache.org/xalan-j/apidocs/org/apache/xalan/lib/Redirect.html)

- Added the `html.append` and `chunk.append` parameters. By default, the
  value of both is empty; but the internal DocBook XSL stylesheets
  build sets their value to "<xsl:text>&#x0a;</xsl:text>", in order
  to ensure that all files in the docbook-xsl-doc package end in a
  newline character. (Because diff and some other tools may emit
  error messages and/or not behave as expected when processing
  files that are not newline-terminated.)

### Highlighting

The following changes have been made to the `highlighting` code since the 1.70.1 release.

- Added license information

- Make sure that last byte in all xml and xsl files is a newline.

### Lib

The following changes have been made to the `lib` code since the 1.70.1 release.

- Made some minor doc refinements.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

### Manpages

The following changes have been made to the `manpages` code since the 1.70.1 release.

- Made some minor doc refinements.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

- Make sure there's always a newline before .sp macro in output from
  `simpara`.

- Changed variable from MAKE_SYNOP to HTML2ROFF. Also, made changes
  for adding newline to end of Saxon-generated output.

- Added initial support in manpages output for `footnote`, `annotation`,
  and `alt` instances. Basically, they all now get handled the same
  way ulink instances are. They are treated as a class as "note
  sources": A numbered marker is generated at the place in the main
  text flow where they occur, then their contents are displayed in
  an endnotes `section` at the end of the man page (currently titled
  REFERENCES, for English output, but will be changed to NOTES).
  This support is not yet complete. It works for most "normal"
  cases, but probably mishandles a good number of cases. More
  testing will be needed to expose the problems. It may well also
  introduce some bugs and regressions in other areas, including
  basic paragraph handling, handling of "mixed block" content,
  handling of other indented content, and handling of authorblurb
  and `personblurb` in the AUTHORS `section`.

- Make sure that person-names in AUTHORS `section` get output in
  bold. Closes bug 1557567. Thanks to Daniel Leidert.

- Updated path to html2roff.xsl.

- Moved html2roff.xsl in the xsl/builds directory.

- Make sure html-synop.xsl is newline-terminated.

- Deleted wordml/README, template/README, and manpages/README, and
  merged their contents into the main README file. Removed mention
  of doc directory from main README and created doc/README,
  doc/AUTHORS, and doc/COPYING files (because the doc distribution
  is now packaged separately).

### Params

The following changes have been made to the `params` code since the 1.70.1 release.

- Added support for profiling based on xml:lang and status attributes.

- Added initial support in manpages output for `footnote`, `annotation`,
  and `alt` instances. Basically, they all now get handled the same
  way ulink instances are. They are treated as a class as "note
  sources": A numbered marker is generated at the place in the main
  text flow where they occur, then their contents are displayed in
  an endnotes `section` at the end of the man page (currently titled
  REFERENCES, for English output, but will be changed to NOTES).
  This support is not yet complete. It works for most "normal"
  cases, but probably mishandles a good number of cases. More
  testing will be needed to expose the problems. It may well also
  introduce some bugs and regressions in other areas, including
  basic paragraph handling, handling of "mixed block" content,
  handling of other indented content, and handling of authorblurb
  and `personblurb` in the AUTHORS `section`.

- Added the `html.append` and `chunk.append` parameters. By default, the
  value of both is empty; but the internal DocBook XSL stylesheets
  build sets their value to "<xsl:text>&#x0a;</xsl:text>", in order
  to ensure that all files in the docbook-xsl-doc package end in a
  newline character. (Because diff and some other tools may emit
  error messages and/or not behave as expected when processing
  files that are not newline-terminated.)

### Profiling

The following changes have been made to the `profiling` code since the 1.70.1 release.

- Added support for profiling based on xml:lang and status attributes.

### Template

The following changes have been made to the `template` code since the 1.70.1 release.

- Removed obsolete files. (Can be restored later if we need to).

- Added the `html.append` and `chunk.append` parameters. By default, the
  value of both is empty; but the internal DocBook XSL stylesheets
  build sets their value to "<xsl:text>&#x0a;</xsl:text>", in order
  to ensure that all files in the docbook-xsl-doc package end in a
  newline character. (Because diff and some other tools may emit
  error messages and/or not behave as expected when processing
  files that are not newline-terminated.)

- Deleted wordml/README, template/README, and manpages/README, and
  merged their contents into the main README file. Removed mention
  of doc directory from main README and created doc/README,
  doc/AUTHORS, and doc/COPYING files (because the doc distribution
  is now packaged separately).

### Tools

The following changes have been made to the `tools` code since the 1.70.1 release.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

- Make sure xsl2jref.xsl stylesheet outputs document prolog with FPI
  and system ID.

- Remove template for `alt`; dblatex ignores it anyway (only looks at
  params).

- Moved html2roff.xsl in the xsl/builds directory.

- Added the `html.append` and `chunk.append` parameters. By default, the
  value of both is empty; but the internal DocBook XSL stylesheets
  build sets their value to "<xsl:text>&#x0a;</xsl:text>", in order
  to ensure that all files in the docbook-xsl-doc package end in a
  newline character. (Because diff and some other tools may emit
  error messages and/or not behave as expected when processing
  files that are not newline-terminated.)

- Use index.html files as targets (instead of zero-byte param.html
  stamp files we were using); quit doing $(RM) *.html in clean and
  instead do clean using a list of the HTML files that we know we
  have actually generated. Also add pi directory to list of
  directory to recurse and make (had been accidentally left out for
  1.71.0 build).

- Make sure that last byte in all xml and xsl files is a newline.

### WordML

The following changes have been made to the `wordml` code since the 1.70.1 release.

- Made some minor doc refinements.

- Removed param.xml and param.html targets from stylesheet makefiles
  (param.xml is now built by the doc target, and the param.html is
  obsolete).
  Also, added mechanism for appending terminal newlines to param.xsl
  files (because Saxon doesn't newline-terminate its outuput).

- Make sure that last byte in all xml and xsl files is a newline.

- Deleted wordml/README, template/README, and manpages/README, and
  merged their contents into the main README file. Removed mention
  of doc directory from main README and created doc/README,
  doc/AUTHORS, and doc/COPYING files (because the doc distribution
  is now packaged separately).