What's New in Oxygen XML Developer 22.1

May 19, 2020

Related version: 22.0    

Version 22.1 of the Oxygen XML Developer brings you more productivity improvements for the JSON and HTML editing support, some of the most popular add-ons were improved and new ones made available, better search and replace functionality, and as usual, this release comes with various API additions, bug fixes, and component updates.

There are changes in:


Validate HTML Documents Using Schematron

It is now possible to validate HTML documents against a Schematron schema. Besides the default HTML validator, Oxygen now also includes a built-in HTML Schematron Validator engine. This can be done by specifying the Schematron in a validation scenario, using the Validate with action (in the Validation drop-down menu on the toolbar), or you can batch validate multiple HTML documents using the Validate with schema contextual menu action from the Project view.
Validate HTML Documents Using Schematron

Action to Make HTML Documents XML Well-formed

A new HTML to XML Well-formed action is available in the contextual menu when editing HTML documents. It makes the currently edited HTML document to be XML well-formed. This is helpful if, for example, you use XSLT stylesheets while applying transformations on HTML documents (since the transformation will require the HTML document to be XML well-formed).
Action to Make HTML Documents XML Well-formed

Format and Indent HTML Elements

Support was added to format and indent the content of the current HTML element. After the action is performed, the structure of the document will be preserved as is (including, for example, unclosed elements or missing attribute quotes).


Emmet Plug-in Works on CSS/LESS Files

The Oxygen Emmet add-on provides high-speed coding and editing via a content assistance mechanism. It was already supported for HTML, XSL, and XML formats, and now it can be used also for CSS and LESS files. For details, see: Oxygen Emmet Plugin.
Oxygen Emmet Plugin Improvements


Improved XSD to JSON Schema Conversion

The XSD to JSON Schema Converter tool was improved to handle better name conversions. For example, improved naming conversions when underscores or camel-case names are used.

JSON Improvements

Various other improvements were added for JSON support. Noteworthy items are:
  • Better indentation when generating JSON content.
  • The Generate Sample JSON Files action provides better support for date-time, time, email, and ipv6 formats.
  • JSON Schema draft-08 declarations are handled, allowing users to edit and validate them in draft-07 compatibility mode.


Oxygen provides access to a variety of default add-ons that extend the functionality of the application.

Generate Java Classes from XSD

Oxygen now includes a very handy tool for generating Java classes from an XML Schema (XSD) file. The Generate Java classes from XSD action is found in the Tools menu and it will generate the Java class files inside a new package located in a specified output folder. This functionality is provided as an add-on and it is installed automatically the first time you invoke the action.
Generate Java Classes from XSD

Oxygen Emmet Plugin Improvements

The Emmet Plugin is now installed automatically the first time you invoke the Emmet action. To help make expanding the abbreviations easier, you can now use the Ctrl+Space keyboard shortcut. Also, the Wrap with Abbreviation action now displays an in-place field where you can type the abbreviation.

Improved Filtering Comment Mapping for Oxygen Feedback Plugin

The Feedback Comments Manager view can filter comments by site, version, and status. This makes it easier for you to focus on particular comments (e.g. unresolved comments, or a particular version or site). The mapping of the comments to DITA topics was improved to support DITA-specific features such as branch filtering and chunking.

Install on First Use for the Git Client

The Git Client plugin now offers the Git Staging view that acts as a basic Git client integrated directly into Oxygen. It provides support for committing changes to a Git repository, comparing and merging changes, and other Git-specific commands. This view is now listed in the Window->Show View menu and the Tools menu even when the Git Client add-on is not installed, making it easier to perform the installation, as that is triggered automatically when one of these actions is invoked.

Install on First Use for the Batch Document Converter

The Batch Converter add-on contributes numerous actions in a Batch Converter submenu located in the Tools menu and the contextual menu of resources in the Project view. These actions allow for batch conversions between various formats (MS Word, MS Excel, HTML, JSON, and Markdown documents to DITA, DocBook, XHTML, or XML). If the add-on is not already installed, selecting Batch Converter will trigger the installation process for this plugin.

XSpec Add-on Updated to Support XSpec Version 1.6.0

The XSpec add-on was updated to include XSpec version 1.6.0, which is the same version that is now bundled with Oxygen.

Saxon Transformer Add-on for Saxon 10.0

The Saxon transformer add-on now supports Saxon version 10.0.


Movable Results View

The Results view that displays messages generated from various operations like validations, transformations, or search can now be moved to your desired UI location alongside other side views and you can also set it to be hidden automatically when not focused.

Validation Status Details

When a validation operation is processed, information about the validation scenario is displayed in the stripe at the very bottom of the application. If you hover over the information, a tooltip is presented with even more information. You can also click the More details button to open the Information view where further details about the validation are displayed.
Validation Status Details

Locate Find/Replace in Files Matches in the Author Visual Editing Mode

The Find/Replace in Files dialog box now has a new option (Always open selected results in Text mode):
  • If unselected (the default state), double-clicking the resulted matches will open the documents in whatever editing mode is specified as the default for that document type. For example, DITA documents will open by default in Author mode.
  • If selected, double-clicking the resulted matches will always open the documents in Text mode (even if the particular document type is set to open in Author mode by default).
Locate Find/Replace in Files Matches in the Author Visual Editing Mode

Ignore Extra Whitespaces Option Added to the Find/Replace Dialog Box

The Ignore extra whitespaces option was added in the Find/Replace dialog box. It is helpful when searching for space-separated words because enabling this option means that line-breaks and indentation between words will not affect the results.

Hide Editor Tabs

If you want full focus on the current file, or during some presentations, you may find it useful that now it is possible to hide all the file tabs to only display the currently open file. This does not close the other tabs, just hides them. You can still navigate between tabs using keyboard shortcuts (Ctrl+Tab, Ctrl+Shift+Tab, Ctrl+F6, Ctrl+Shift+F6).

New Option to Specify an External Application for Editing MathML

A new option was added in the MathML preferences page where you can specify an external MathML application for editing MathML equations. For example, the following command could be used to edit MathML equations with a Libre Office application in Windows: "C:\Program Files\LibreOffice 5\program\smath.exe" "${cf}".
New Option to Specify an External Application for Editing MathML


Get Names of Pseudo-Classes Set for an Element

The AuthorElement.getPseudoClassNames() method was added and it can be used to retrieve the names of the pseudo-classes set on an element.

Customize Link Tooltip Text in Author Mode

The ExtensionsBundle.customizeLinkTooltipDescription() method was added and it can be used to customize the tooltip description that is displayed when hovering over a link in the Author editing mode.

Load XML Content and Use the Author API to Make Changes

The PluginWorkspace.createAuthorDocumentProvider(URL, Reader) API can be used to create a provider for a given resource specified by a URL and/or Reader. The provider creates a structure of AuthorNodes and allows it to be manipulated via an AuthorDocumentController interface. This API is useful if, for example, you want to load XML content and use the Author API to make changes to it.

Run Validation Scenarios from Custom Author Actions

Two new APIs were added that can be used to run validation scenarios in particular situations. The ExecuteValidationScenariosOperation API can be used to run a validation scenario on an Author Action file, while the ValidationScenarioInvoker API can be used to run a validation scenario from a plugin or framework customization.

Contribute Code Templates for Fast Structure Insertions

A new WSTextEditorPage.addExternalContentCompletionProvide API can be used to display additional code template proposals in the content completion assistant.

Change the Tooltips for Filters in the File Comparison Merge Tool

A new DiffAndMergeTools.openMergeApplication API can be used to control the text presented in a tooltip when you hover over the filtering options in the file comparison merge tool.

Component Updates

DITA Open Toolkit 3.4.1

The DITA Open Toolkit version bundled with Oxygen was updated to 3.4.1.

DITA Open Toolkit Plugin for DITA-to-Word 1.4.0

The DITA Open Toolkit plugin for DITA-to-Word conversions was updated to version 1.4.0.


Updated the Saxon library that is distributed with Oxygen to version

Xerces 2.12.1

Updated the Apache Xerces library to version 2.12.1.

Everit 1.12.1

The Everit library was updated to version 1.12.1.

MarkLogic 10

Oxygen has been tested and is officially compatible with the MarkLogic 10 server.

TEI Schemas 4.0.0 and TEI Stylesheets 7.49

Updated the bundled TEI schemas to version 4.0.0 and the TEI stylesheets to version 7.49.

focheck 0.7.6

The bundled focheck framework that is used for enhanced XSL-FO validation was updated to version 0.7.6.

Log4j 2.13

Updated the log4j library to version 2.13.

Rhino 1.7.12

The Rhino library was updated to version 1.7.12.

Eclipse 4.15

Updated the Eclipse plugin to support version 4.15. Note that starting with Oxygen version 23, Eclipse versions earlier than 4.4 will no longer be supported.

XSpec 1.6.0

Updated the XSpec library to version 1.6.