What's New in oXygen XML Editor 18.1

Related Versions: 18.018.1

October 18, 2016

Although oXygen XML Editor version 18.1 is a maintenance release that focuses on performance and usability improvements, it also adds a variety of powerful new features, making it similar to a major release.

Audio and video content in DITA is now fully supported. oXygen XML Editor 18.1 allows you to insert media objects, play audio, and display video directly in the Author visual editing mode and includes updates to the publishing workflow to handle video and audio objects in the output.

A new Markdown editor allows you to easily write, preview, and convert Markdown content into HTML or DITA and you can use Markdown-encoded topics in DITA maps. When validating a DITA map, oXygen is also able to validate Markdown documents and transform them in the publishing stage.

Checking for and merging changes is made easier with the new 3-way directories comparison tool and the addition of more syntax-aware diff algorithms.

You can publish the tracked changes and comments made in DITA documents to PDF output, thus allowing you to have the review information that is captured in oXygen also available as PDF.

The responsive WebHelp system received numerous updates, including new skins, support for expanding/collapsing components (sections, tables, etc.), automatic image scaling, support for DITA 1.3-specific context sensitive help information, and control over what is indexed for searches.

Content completion for XPath and XQuery was improved with new proposals from XPath 3.0 and XQuery 3.0 specifications.

The add-on for working with Saxon 9.7 was updated to provide an action to obtain a compiled stylesheet that can be used with the new Saxon-JS (the JavaScript version of Saxon that provides XSLT 3.0 in the browser).

As usual, oXygen also added many new API and component updates for this release.

There are changes in:

Visual XML Editing

New Form Controls for Rendering and Playing Video and Audio Media

Three powerful new form controls were added that allow you to render and play media in Author mode. The oxy_video form control can be used to play video files, the oxy_browser form control can be used to render an HTML page or SVG file, and the oxy_audio form control can play audio clips.

Convert Paragraphs to List Items and Change List Item Type

When editing DITA, DocBook, XHTML, or TEI documents, you can easily convert selected paragraphs to list items by using the various Insert List Item actions on the toolbar. You can also change selected list items to another type (for example, change an unordered list to an ordered list).
Convert Paragraphs to List Items and Change List Item Type

Convert Selected Content to a Table

When editing DITA, DocBook, XHTML, or TEI documents, you can easily convert selected paragraphs, lists, and inline content into a table by using the Insert Table actions on the toolbar. It opens a dialog box that allows you to configure the table and inserts the selected content in the first column and first row after the header.
Convert Selected Content to a Table

Smart Paste Handles Internal Links in Office Documents

The Smart Paste feature has been improved to preserve links to other parts of the same document, when pasting content from Office documents into Author mode. Links are converted to cross references for the particular document type that you are working with.

Improvements to Paste Strategies in Tables

The strategies for the behavior of the paste mechanism when pasting content in table cells has been improved. Now, copied cells are pasted while preserving their initial order and spacing. For more information, see Copy/Cut and Paste in Tables.


Support for Video and Audio Media Objects

oXygen now includes actions to easily insert video or audio content within DITA topics. The oXygen visual editing Author mode will not only display the media content, but also allow you to play it in-place. On the publishing side, oXygen comes with a DITA-OT plugin that will enable the multimedia content to appear in HTML and PDF output.

Embed Video and Audio Media in DITA to WebHelp Output

You can insert references to video and audio media resources (such as YouTube videos) in your DITA topics and publish them to WebHelp output. The embedded video and audio objects can be played directly in all HTML5-based outputs, including WebHelp systems.

New Action for Duplicating Topics

There is now a new contextual menu action in the DITA Maps Manager view called Duplicate that creates a copy of the selected topic and inserts it as a sibling. It is helpful for quickly creating a new DITA topic that is similar to an existing topic.
New Action for Duplicating Topics

Lightweight DITA Improvements

The Lightweight DITA DTDs were updated for DITA 1.3. Also, you can now use the new Insert Media action to insert references to video or audio resources when editing Lightweight DITA documents.

Tracked Changes and Comments Can Be Displayed in PDF Output

You now have the ability to display tracked changes and comments in DITA to PDF output. This can be done by simply setting the show.changes.and.comments parameter to yes in the transformation scenario.
Tracked Changes and Comments Can Be Displayed in PDF Output

Validate and Check for Completeness Command Line Tool

A new command line tool was added that executes a Validate and Check for Completeness operation on a specified DITA map. The results are displayed in the command console (for example, whether or not the validation was successful, the number of errors or warnings, or you can even specify to display the entire report). The tool requires an oXygen XML Scripting license.

Markdown Editor

New Markdown Editor

oXygen now includes a built-in Markdown editor that allows you to write and edit documents using Markdown and then converts the syntax to HTML or DITA. The specialized multi-pane editor includes a preview panel to help you visualize the final output. The editor includes a variety of helpful actions, automatic validation, syntax highlighting to make it easier to read and write, and specialized syntax rules that combine popular features from several specifications.

Convert Markdown Documents to DITA Topics

The Markdown editing support includes unique features that allow you to create Markdown documents directly in DITA maps (from the DITA Maps Manager) and the transformation process will convert them the same as other DITA topics. You can also use a new action (in the DITA Maps Manager) to manually convert Markdown documents to DITA topics.
Markdown Convert

Comparison Tools

Directory Comparison: Support for Three-Way Directory Comparison

A new feature was added that allows you to perform three-way comparisons on directories to help you identify and merge changes between multiple modifications of the same directory structure. It is especially helpful for teams that have multiple authors contributing documents to the same directory system. It offers information about conflicts and changes, and includes actions to easily merge, accept, overwrite, or ignore changes to the directory system.

File Comparison: More Accurate Second Level Comparisons on XML Nodes

When using the XML Fast and XML Accurate algorithms for two-way or three-way comparisons, the second level comparison is now processed using a syntax-aware comparison that splits the files or fragments into sequences of tokens and computes the differences between them. This results in a more accurate second level comparison.

File Comparison: Improvements to the Format and Indent Action

The Format and Indent action in the File Comparison tool now works on more file types. You can now use the action on the following types of files: XQuery, CSS, JavaScript, JSON, RNC, XSD, RNG, NVDL, XML, ANT, DITAMap, WSDL, SVG, Schematron, XProc, XSL, and HTML.

Content Completion

Improved Content Completion Configuration Support

oXygen allows you to set a configuration file to control the content completion proposals for elements presented in the Content Completion Assistant. Now, you can identify more precisely the elements you want to control, by being able to set conditions that include attributes and attribute values.

Improved Content Completion for XPath and XQuery

The Content Completion Assistant for XPath and XQuery was updated to take into account the latest additions in XPath 3.0 and XQuery 3.0. For example, new functions are now offered through content completion, such as empty-sequence, document-node, item, comment, namespace-node, and processing-instruction - just to name a few.


New Skins Added to the WebHelp Responsive System

Some creative new skins were added to the WebHelp Responsive system for both tree and tile variants of the templates. For example, there are new skins called Aqua Marine, Ashes, Hightech, and Sky that were added to the growing list of predefined skins.

Added Expand/Collapse Functionality in the WebHelp Responsive Output

The HTML content generated for the DITA sections, tables, topics, or other components is now collapsible or expandable, allowing you to easily navigate through the DITA topic content.

XSLT Extension Points for the DITA-OT WebHelp Plugin

The DITA-OT WebHelp plugin exposes two XSLT extension points that allow you to override the XSLT stylesheets that generates the WebHelp HTML pages. This allows you to customize the WebHelp output without changing the resources within the WebHelp plugin.

Context Sensitive WebHelp was Updated for DITA 1.3

The Context Sensitive WebHelp system was updated to support the new changes from DITA 1.3 specifications. For example, you can now associate a topic with an application by using the @appid and @appname attributes available on the resourceid element.

New Template Components Were Added for WebHelp Responsive DITA Output

The WebHelp Responsive template mechanism received two new components. One for related links and another for child links. This improvement allows you to hide or move these components anywhere in the layout.

Exclude Content from the WebHelp Search Indexer

The WebHelp Search Indexer can now be customized to exclude topics from the indexing process through various methods. You can do so by using a WebHelp transformation parameter or in the DITA map by setting the @search attribute to "no".

Images are Automatically Scaled in WebHelp Responsive Output

Improvements were made to image rendering in the output of WebHelp Responsive layouts. The width of images in topic pages now automatically adapt to the size of the screen.


A detailed list of all changes to the Java API can be found here.

Start File Comparison Tool in 3-Way Mode

The new StandalonePluginWorkspace.openDiffFilesApplication method allows you to open the Files Comparison tool in the three-way comparison mode.

Start 3-Way Directory Comparison Merge Tool

The new StandalonePluginWorkspace.openMergeApplication method allows you to open a Merge application for comparing directories in a three-way mode. It helps you identify and merge changes between multiple modifications of the same directory structure.

Control Titles Computation in the DITA Maps Manager

The WSDITAMapEditorPage.addNodeRendererCustomizer(DITAMapNodeRendererCustomizer) method allows you to control the computation of titles presented in the DITA Maps Manager, the icons or tooltip texts.

Retrieve an Icon to be Displayed for a File Type

The ImageUtilitiesSpecificProvider interface allows you to load an image from a specified URL or to retrieve an icon for a particular URL file type that can be used in your custom local or remote resources explorer view.

Provide Set of Attributes Defined on Each Key

The KeyDefinitionInfo.setAttribute(String, String) API method allows the key definition manager implementer to also provide the set of attributes which were defined on a key definition, set of attributes which may be used by the application to filter the list of proposed keys in various ways.

Listener for Replace All in Files Operations

The PluginWorkspace.addBatchOperationsListener() API method can be used to add a listener for Replace All in Files operations in standalone distributions of oXygen. The listener is notified when the operation starts, before and after each resource is modified and after the operation ends and can be used by CMS plugin implementers to automatically lock/unlock resources.

Internationalization Support for Plugins

If a plugin has an i18n folder with a specific translation.xml configuration file containing translations in various languages, the StandalonePluginWorkspace.getResourceBundle() API method provides access to translations of messages in the current language set in the application.

Create Editing Component to Use in Your Own Custom Container

The StandalonePluginWorkspace.createEditorComponentProvider() API method allows you to create a small editing component with various edit modes (Text, Grid, Author) that you can use in your own custom dialog boxes to edit XML content.

Filter Drop-Down Menu Items in Eclipse

When you want to add or remove items from a drop-down button added by the oXygen Eclipse plugin in its internal toolbars, you can cast them to com.oxygenxml.editor.editors.xml.IDropDownToolItem and add a filter to them.

Import Custom Options File While Resetting All Other Options

The GlobalOptionsStorage.importGlobalOptions(File, boolean) API method allows you to import a custom XML options file while resetting all other options to their default value.

Customize Actions in the Review View

The ReviewActionsProvider.customizeHoverActions API method allows you to customize actions that appear when hovering over comments or tracked changes in the Review view.

Customize Contextual Menu for the Outline View

The ActionBarContributorCustomizer.customizeAuthorOutlinePopUpMenu API method allows you to customize the contextual menu of the Outline view in Eclipse when editing in the Author mode. Similarly, the MenusAndToolbarsContributorCustomizer.customizeAuthorOutlinePopUpMenu method was added for the same purpose in standalone distributions of oXygen.

Customize Contextual Menu of the Breadcrumb

The ActionBarContributorCustomizer.customizeAuthorBreadcrumbPopUpMenu API method allows you to customize the contextual menu of the Breadcrumb in Eclipse in the Author editing mode. Similarly, the MenusAndToolbarsContributorCustomizer.customizeAuthorBreadcrumbPopUpMenu method was added for the same purpose in standalone distributions of oXygen.

Register Custom Editor Variables

The EditorVariablesResolver.getCustomResolverEditorVariableDescriptions() API method allows plugins to contribute names and descriptions for the custom editor variables that they can expand.

Filter Attributes in Insert Reference and Edit Properties Dialog Boxes

A new method, AuthorAttributesDisplayFilter.shouldFilterAttribute(CIElement, String, int), and a new value, SOURCE_INSERT_REFERENCE, were added to the AuthorAttributesDisplayFilter API to allow for the filtering of attributes in the Insert Reference dialog box. The SOURCE_EDIT_PROPERTIES value was also added to allow you to filter attributes in the Edit Properties dialog box.

Execute a Command Line Operation

The WorkspaceUtilities.startProcess(String, File, String, boolean) method was added that can be used to execute a given operation from the command line.

Customize Attributes in Edit Properties and Insert Reference Dialog Box

The createCustomAttributeValueEditor(boolean forEclipsePlugin) method from the ExtensionsBundle class can now be used to customize the attribute editors in the Edit Properties and Insert Reference dialog boxes available for DITA Maps.

Create Custom Form Controls Based on JavaFX

You can now use JavaFX components in your custom form controls. The new saHeavyFormControlClassName parameter implements the ro.sync.ecss.extensions.api.editor.InplaceHeavyEditor interface and allows for more complex form controls (such as JavaFX-based form controls).


Saxon 9.7 Add-on Includes an Action to Compile Stylesheets

The Saxon 9.7 add-on includes an action on the toolbar that allows you to compile stylesheets and it can then be used with the new Saxon-JS - the JavaScript version of Saxon that provides XSLT 3.0 support in web browsers.

Debugging Output Views Are Now Dockable

The output views in the Debugger are now dockable to allow for a more convenient debugging experience. For example, you can now move certain views to a second screen so that the main debugging area is not as crowded and more information can be displayed.

Japanese Content Now Supported in Open/Find Resource Mechanism

The Open/Find Resource mechanism now supports Japanese content and other languages. You can specify the content language in the Open/Find Resource preferences page and the search engine will use stop words and analyzers tuned for that specific language.

Support Added for BITS Documents

Support was added for BITS (Book Interchange Tag Suite) documents in the JATS (NISO Journal Article Tag Suite) framework. This includes an NLM Book 2.0 new document template and BITS 2.0 XSD schemas.

Improvements to the XLIFF Editing Experience

Various improvements have been added for editing XLIFF documents. For example, in Author mode you can now select between different styles to see various views of the XLIFF documents. Also, oXygen now supports setting the @approved attribute on trans-unit elements to make it easier to proofread translations directly in Author mode.

New Shortcuts to Move XML Nodes Up or Down in Text Mode

New shortcuts were added to move XML elements or XSLT variables up or down in Text mode. Ctrl + Alt + Up (Command + Alt + Up on OS X) moves the node up one line while Ctrl + Alt + Down (Command + Alt + Down on OS X) moves the node down one line.

Use Saxon XSLT Java Extensions When Validating XML Documents Against Schematron

Now you can use Java extensions when validating Schematron, XSD/RNG with embedded Schematron, XML documents against Schematron, or XML documents against XSD/RNG with embedded Schematron. When creating a validation unit, the extensions can be added by using a new Extensions button.

Component Updates

Saxon Add-on Updated to

The Saxon 9.7 add-on now comes bundled with version

Eclipse 4.6

The Eclipse plugin version of oXygen works now also with Eclipse version 4.6.

DITA For Publishers Plugins Updated to 1.0.0RC25

The DITA For Publishers Open Toolkit plugins (used to generate EPUB output and convert MS Word documents to DITA) have been updated to version 1.0.0RC25.

DITA OT 2.3.3

oXygen now comes bundled with DITA OT version 2.3.3.

Rhino Library Updated to

The Mozilla Rhino library was updated to version

Calabash 1.1.9-96

The bundled Calabash XProc engine has been updated to version 1.1.9-96.