What's New in Oxygen XML Publishing Engine 25.0

October 13, 2022

Oxygen Publishing Engine version 25.0 encompasses the improvements and additions implemented in Oxygen XML WebHelp and Oxygen PDF Chemistry. This latest release offers a variety of new customization possibilities, transformation parameters, properties, component updates, and bug fixes for both WebHelp and PDF publishers.

There are changes in:

WebHelp Output

Generate Google Structured Data

You can generate Google Structured Data in the DITA WebHelp Responsive output. Google uses structured data to better understand the contents of the page and display special search results in a Google Search. For details about how to do this, see How to Generate Google Structured Data.

Display Custom Title in Search Results

It is possible to display a custom title for topics in the search results page. This can be achieved by adding the <searchtitle> element inside the particular DITA topic (or inside the topic reference within a DITA map). The <searchtitle> element is used to specify the title that is displayed by search tools that locate the topic. For more details, see How to Display Custom Title in Search Results.

Scaling in Image Maps Improved

Scaling when working with image maps was improved. Adding the @scale attribute on the <imagemap> element now scales both the image and its areas, if defined.

Replace Main Page With Your Own Custom Page

A new transformation parameter (webhelp.skip.main.page.generation) can be set to true to instruct the transformation engine to skip the default main page generation. This is helpful if you want to replace the default main page with a topic page or other custom page.

Implement Your Own Custom Search Filter

It is possible to implement a custom search filter by referencing a custom JavaScript file in an Oxygen Publishing Template. For details on how to do this, see How to Implement a Custom Search Filter.

Search Expressions are Preserved in Search Filter

The search expressions that you type in the search filter field are now preserved after you click on a search result. This makes it more efficient to refine searches since you can edit or add text to the preserved search expression instead of starting over.

Use a Custom Search Engine

A new transformation parameter (webhelp.fragment.custom.search.engine.script) can be used to specify the path to an XHTML file that contains scripts required for a custom search engine that would replace WebHelp's built-in search engine. For more details, see How to Configure a Custom Search Engine.

Change Default Operator for the Search Engine

A new transformation parameter (webhelp.search.default.operator) makes it possible to change the default operator for the search engine. If the value is set to and, multiple word queries result in the search engine only returning results for topics that contain ALL words. If the value is set to or (default value), multiple word queries result in the search engine returning results for topics that contain ANY of the words.

PDF Output

Support Added for the 'break-after', 'break-before', and 'break-inside' CSS Properties

The break-before, break-inside, and break-after CSS properties are now supported in PDF transformations. They are used to control how page, column, or region breaks behave before, inside, or after a generated box.

Make Documents PDF/A-Compliant

For CSS-based PDF transformations, a new -pdf-a transformation parameter can be used to make PDF documents archive-able. The possible values are: PDF/A-1a, PDF/A-1b, PDF/A-2a, PDF/A-2b, PDF/A-2u, PDF/A-3a, PDF/A-3b, PDF/A-3u. For more details, see Chemistry User Guide: Archiving.

Filter Glossary to Show Only Referenced Entries

For CSS-based PDF output, a new filter.unused.glossentries parameter can be set to yes to filter the glossary to only display referenced glossary entries in the output. If the parameter is set to no (the default), all glossary entries are displayed.

Support for Custom Values for the 'list-style-type' CSS Property

The CSS-based PDF processor now supports custom string values for the list-style-type CSS property defined in the CSS for list items.

Exception Elements Now Considered in Hyphenation Dictionaries

Exception elements are now taken into consideration to correct issues in hyphenation dictionaries. For information about how to define exceptions, see How to Define Hyphenation for a Specific Word.

Force or Avoid Line Breaks at Hyphens

A new -oxy-break-line-at-hyphens property can be used to control whether line breaks are forced or avoided at hyphens (you can also use auto for its value to hyphenate automatically according to the hyphenation dictionary's algorithm). This property replaces the deprecated -oxy-avoid-breaking-line-at-hyphens property (although that property can still be used). For more details, see How to Force or Avoid Line Breaks at Hyphens.

Omit the Header/Footer From Tables When Page Breaks Occur

The new -oxy-pdf-table-omit-header-at-break and -oxy-pdf-table-omit-footer-at-break properties can be set to true to omit the header or footer from tables when a page break occurs.

Scaling in Image Maps Improved

Scaling when working with image maps was improved. Adding the @scale attribute on the <imagemap> element now scales both the image and areas.

Display Images (Watermarks) in the Foreground

The new -oxy-foreground-image property can be used to display an image (raster/PNG or vector/SVG) above the text (in the foreground) of a document. An example of a common use-case is to use it to display a watermark message (e.g. Draft, Copyright, or Do not copy).

Miscellaneous

Default Validation Now Works on RNG-based Topics and Maps

By default, the publishing engine now reports errors if RNG-based topics or maps are invalid according to the associated schema.

Syntax Highlights in Codeblocks that Contain YAML Content

Syntax highlights now appear in the output when publishing DITA codeblocks that contain YAML content.

Component Updates

Apache FOP 2.7

Updated the Apache FOP library to version 2.7.

Apache Batik 1.15

Updated the Apache Batik toolkit to version 1.15.

Apache PDFBox 2.0.24

Updated the Apache PDFBox library to version 2.0.24.

DITA OT 3.7.3

The DITA Open Toolkit version that is bundled with the Oxygen Publishing Engine has been updated to version 3.7.3.

Jackson Databind 2.13.2.2

Updated the third-party Jackson library to version 2.13.2 and the jackson-databind library to version 2.13.2.2 to help prevent vulnerability issues.