• 2002

    Version 1.0 - April the 15th, 2002
    Version 1.1 - May the 15th, 2002
    Version 1.1.5 - May the 20th, 2002
    Version 1.1.6 - May the 24th, 2002
    Version 1.1.7 - May the 27th, 2002
    Version 1.1.8 - June the 5th, 2002
    Version 1.1.9 - June the 15th, 2002
    Version 1.2 - June the 27th, 2002
    Version 1.2.1 - September the 27th, 2002
    Version 1.2.2 - October the 22nd, 2002
    Version 1.2.3 - November the 27th, 2002
    Version 1.2.4 - December the 17th, 2002
  • 2003

    Version 2.0 - April the 2nd, 2003
    Version 2.0.1 - May the 15th, 2003
    Version 2.0.2 - June the 9th, 2003
    Version 2.0.3 - August the 14th, 2003
    Version 2.0.4 - September the 19th, 2003
  • 2004

    Version 3.0 - January the 14th, 2004
    Version 3.1 - February the 6th, 2004
    Version 4.0 - April the 30th, 2004
    Version 4.1 - June the 10th, 2004
    Version 4.2 - July the 15th, 2004
    Version 5.0 - October the 15th, 2004
    Version 5.1 - January the 18th, 2005
  • 2005

    Version 6.0 - May the 22nd, 2005
    Version 6.1 - July the 19th, 2005
    Version 6.2 - September the 19th, 2005
  • 2006

    Version 7.0 - January the 13th, 2006
    Version 7.1 - March the 2nd, 2006
    Version 7.2 - June the 6th, 2006
    Version 8.0 - November 20th, 2006
    Version 8.1 - January 25th, 2007
    Version 8.2 - May 7th, 2007
  • 2007

    Version 9.0 - November 2nd, 2007
    Version 9.1 - December 18, 2007
    Version 9.2 - May 9, 2008
    Version 9.3 - July 2, 2008
  • 2008

    Version 10.0 - October 23, 2008
  • 2009

    Version 11.0 - October 9, 2009
  • 2010

    Version 12.0 - September 14, 2010
  • 2011

    Version 13.0 - August 29th, 2011
  • 2012

    Version 14.0 - June 27, 2012
    Version 14.1 - October 19, 2012
    Version 14.2 - February 13, 2013
  • 2013

    Version 15.0 - June 7, 2013
    Version 15.1 - October 7, 2013
    Version 15.2 - January 22, 2014
  • 2014

    Version 16.0 - May 20, 2014
    Version 16.1 - October 7, 2014
  • 2015

    Version 17.0 - May 5th, 2015
    Version 17.1 - October 20, 2015
  • 2016

    Version 18.0 - April 21, 2016
    Version 18.1 - October 18, 2016

What Was New in oXygen XML Editor 15.0

Related Versions:

Version: 15.0

June 7, 2013

oXygen XML Editor 15.0 streamlines the development of web services with major improvements to its WSDL editing support which features intelligent search and refactoring actions, hierarchy and dependencies views, context-aware editing assistance and support for generating documentation. There are also improvements in working with XML databases and in the validation support.

When authoring XML content, you benefit from the improvements to the reviewing support, allowing you to easily find changes or annotations across all your project files. The power of XML is leveraged by providing built-in transformation from DITA and DocBook to mobile-friendly WebHelp that allows your users to access your content from their mobile devices.

There are many additions to the DITA functionality, including the integration of "The DITA Style Guide" by Tony Self, which provides immediate access to the relevant style guide topic depending on the current editing context.

As usual, oXygen XML Editor keeps you up-to-date and we updated a number of components to better support XSLT, XQuery, XPath, XProc, EPUB, SVN, DocBook, TEI and DITA standards.

There are changes in:

WSDL Support

oXygen XML Editor improves the WSDL support adding many additional features. The specialized Outline view displays WSDL and XML Schema components. You can easily insert references to components using the Content Completion Assistant. Searching and refactoring actions help you rename components or find component references or declarations.

WSDL Outline View

The Outline view is available for the WSDL editor, offering you an overview of all the WSDL and XML Schema components and the possibility to focus on a specific subset using the filter box.
read more
WSDL Outline View

Content Completion Assistant

The Content Completion Assistant offers the list of WSDL and XML Schema components that can be inserted in the current context. You can use it to easily insert references to components or to define new ones.
read more

Searching and Refactoring Actions

You have a wide range of search and refactoring actions at your disposal to help you organize your code quickly and effectively.
read more
Searching and Refactoring Actions

Master Files - Contextual Editing

WSDL validation, editing (content completion assistance and Outline view), refactoring and component search operations work by default in the context of the WSDL Master Files.
read more

Resource Hierarchy / Dependencies View

The relationship between WSDL resources and schemas can be visualized and understood with the help of the Resource Hierarchy/Dependencies view.

WSDL Documentation

The WSDL Documentation has been improved to allow you to easily generate full documentation for the WSDL and XML Schema components in HTML format, including comprehensive annotations and cross references. read more

Mobile-Friendly WebHelp

Mobile-Friendly WebHelp

oXygen XML Editor allows the publishing of DITA and DocBook content to a mobile-friendly output that is optimized for layout and navigation on mobile devices.


Search in Reviews

You can search through comments, insertions, deletions, and highlighted content over all the resources in a project or in the opened DITA Map. You can filter the search to specific authors, annotation type or a time interval.
read more

Changes by Author

The View Only Changes/Comments by option allows you to select the author whose comments and changes are displayed in the Author mode. This allows you to easily integrate the reviews made by a specific author.

Review Markers

Review markers can be presented in a vertical stripe in the left side of the editing area, next to the lines containing changes or comments.

Fast Text Searching

Automatic Indexing

When you make changes to the files from your project (add, delete, refresh, or save resources) you do not need to re-index all the resources manually, the index will be updated automatically only on the changed files.
read more

Search History

When you work on something you often search for the same or similar things. The Open/Find Resource view and the Open/Find Resource dialog box record the history of your searches thus allowing you to re-use your previous queries.
read more

Form-Based Editing in Author

Button Group Form Control

The Button Group form control displays a pop-up menu which invokes one of the several custom author actions, defined in the associated Document Type, specified by their ID.

Visible Property Support

Added the possibility to specify whether a Button form control is visible through the visible property.

CMS Integration and Connectivity

Specialized Dialog Box to Browse a SharePoint Server

The Open URL dialog box offers a specialized layout for browsing resources stored on a SharePoint server.
read more

DITA Support

User-Defined Root Map

DITA 1.2 specifies the concept of a root map that defines the editing context, providing the starting point to determine the keys and the subject scheme values. oXygen XML Editor used the current map from the DITA Maps Manager as the root map but in version 15 the root map can be also set to a specific map, thus allowing opening sub-Maps in the DITA Maps Manager while still correctly resolving keys and subject scheme values as they are defined in the selected root map.

Subject Scheme Support

A Subject Scheme Map allows you to define hierarchical sets of values and to control which values should be allowed for specific attributes. oXygen XML Editor will propose the defined values to the user and the DITA validation will check the values used in your topics against those defined values. The subject scheme values are presented also in the dialog box for setting profiling attributes.

DITA Style Guide Integration

You can quickly access Tony Self's DITA Style Guide using the Style Guide action. This action is available also from the contextual menu, in which case oXygen XML Editor will try to identify the style guide topic that is relevant to the current context. Some automatic checks were also implemented using Schematron to identify issue specified by the style guide. When such an issue is identified then the warning message will also contain a link pointing to the style guide topic that describes the identified issue.

Export DITA Map

When you work on a project with multiple resources or multiple DITA maps it is difficult to identify all the resources that are used in a specific map. You may want to identify all those resources in order to remove unused resources or in case you want to share your map with someone else. The export DITA map action allows you to easily obtain all the resources referenced from a specified DITA Map.

Enforce Business Rules and QA Checks on All Topics from a DITA Map

The action that validates and checks a DITA Map verifies all the topics referenced from a DITA Map. You have the option to specify a Schematron schema that can implement your company rules and QA checks and the DITA map validate action will apply that on all the topics.

Copy/Paste to Create Key-Based Links and Content References

You can use the "Paste Special" action to quickly transform the copied content to a link or to a content reference. There are also additional options to use the DITA 1.2 keys and transform the copied content to a key reference or to a content key reference.

Use a Profiling Condition Set in DITA Transformations

A profiling condition set allows you to define a deliverable, similar to a ditaval file. oXygen XML Editor allows you to select a specific profiling condition set when you configure a DITA OT transformation scenario to obtain the output defined by the conditions set in that profiling condition set.

Welcome Screen

Welcome Screen

You can have immediate access to projects and files you recently worked with, actions to create new files or projects, news about upcoming Webinars and conferences, recorded video presentations, our support channels, and tips for using oXygen XML Editor , in a Welcome Screen panel that is displayed at startup.

XML Visual Editing

Smart Quotes

If you prefer to use smart quotes instead of single or double quotes then oXygen XML Editor offers support to automatically replace single quotes and double quotes with the corresponding smart quotes. The smart quotes symbols can be configured in the oXygen XML Editor preferences.

Auto-Scale Large Images

To improve performance when using many large images, you have the possibility to specify the maximum width of an image beyond which oXygen XML Editor will scale the image, thus reducing the resources needed to display those images.

Move Up/Down Actions

You can move an element up or down using the special Move Up and Move Down actions.

DocBook Support

Promote and Demote Sections

You can organize the structure of your DocBook documents using the promote and demote section actions available in the DocBook toolbar and contextual menu.
Promote and Demote Sections

XML Diff

Format and Indent Both Files

To spot differences easily between files that contain long lines, or to ignore some formatting differences, you are able to format and indent both files before comparing them.

CSS Support

The oxy_getSomeText Function

Added the possibility to truncate long strings of characters using the oxy_getSomeText function.

Styles Property Support

Added the possibility to specify styles for the oxy_label() function through the styles property. The values of this property are a set of CSS properties.

XML Databases

eXist Simple Connection Wizard

Configuring a connection to an eXist XML database can be done through a wizard that automatically detects all the libraries needed to access that eXist server, thus you do not need to manually find the correct libraries for your specific eXist server.

Validating Documents

Post XInclude Processing DTD Validation

When XML documents using DTDs are assembled using XInclude, the default validation behavior is to first assemble all documents in a master document, and then validate the master document using the referenced DTD.

Validation Phase for Schematron

A Schematron schema can define multiple validation phases. oXygen XML Editor allows you to set the default phase used for Schematron validation.

Content Completion Assistant and Outline

Content Completion Assistant for JQuery

If you use JQuery in your JavaScript file oXygen XML Editor will assist by presenting JQuery functions through its content completion support. These proposals show the function documentation as well as the possible parameters.

Content Completion Assistant for File Paths

When you edit a document in Text mode, the Content Completion Assistant is able to propose local file paths when editing URI attribute values.

Improved Outline View Filtering Options

An improved option is available in the Outline view allowing you to find exact matches of the text that you are searching for.
Improved Outline View Filtering Options

Syncro SVN Client

Commit to Multiple Repositories

The SVN Client offers support to commit working copy items across multiple external definitions in one single step. No more overhead to handle external modified items one-by-one. Also, for SVN 1.7 working copies, externals from the same repository are committed together, resulting less revisions generated in the repository.
Commit to Multiple Repositories

Remove Items from Version Control

Easily remove items from version control using a dedicated option. You no longer have to take different actions to avoid erasing files from your working copy when needing to remove items only from the repository.

Improved Working Copy Items Deletion

Any item missing from a working copy can be deleted, including missing directories. The Delete action is more powerful and can help you with removing working copy items that have states raising issues and unusual behaviors.

Improved Commit

Committing working copy changes has never been easier. The Commit operation was improved to help you when committing new items in the repository (unversioned or added), by automatically collecting their ancestor directories which also need to be versioned. Also, missing directories are deleted when committing them. Finally, the Commit dialog box was redesigned to display items in a working-copy-like style and information more appropriate for this operation.

Improved File Handling on Case-Insensitive File Systems

File renames outside of the SVN client, on case-insensitive file systems, are better handled regarding the Delete and Commit operations. The situations when a file was lost after changing only letter-cases of its name were removed.

Better State Detection and Triage of Working Copy Items

The states of the working copy items are detected in a more accurate manner. Any type of changes of a working copy item are presented in the Incoming mode, allowing you to easily spot all sort of changes, including the ones which cannot be committed to the repository.

Easily Locate Files in Your File Manager

Working copy files can be easily located on your disk directly from the Working Copy view. You don't need to identify the parent directory and search through it.

Improvements and Bug Fixes

This version includes various improvements and bug fixes regarding opening and saving files from the repository, the check out operation and locks handling on commit. Memory and performance issues were addressed also.

Component Updates

Updated Saxon to Version 9.5

Version 9.5 of Saxon is included in oXygen XML Editor.

Calabash 1.0.9

XML Calabash was upgraded to version 1.0.9.

Updated EpubCheck to Version 3.0.1

Version 3.0.1 of EpubCheck is included in oXygen XML Editor.

Upgraded DITA OT to Version 1.7

The DITA Open Toolkit was upgraded to version 1.7.

DocBook XSL 1.78.1

DocBook XSL was updated to version 1.78.1.

Extended API

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

Contribute Custom Preferences Page from a Plugin

A plugin can contribute custom preference pages to the Preferences dialog box by setting OptionPage extensions in the XML configuration file.

Set Global Option from the API

The PluginWorkspace.setGlobalObjectProperty API allows you to set a global option in the application.

Show/Hide Views and Toolbars from the API

The API methods added to StandalonePluginWorkspace allow you to show/hide toolbars and views identified by an unique ID.

Trigger a Predefined Transformation Scenario from the API

The WSEditorBase.runTransformationScenarios API can be used to run transformation scenarios which are predefined for the specific editor's document type. A predefined operation called ExecuteTransformationScenariosOperation can be used directly in defined actions for adding specific buttons which trigger publishing scenarios.

Receive Callbacks Before or After an Action Was Executed

The AuthorActionsProvider.addActionPerformedListener API allows you to add a listener which gets called before and after a specific action was executed. The callback received before the execution can cancel running the action's original code.

Execute XPath 3.0 Expressions over Author Content

The additional XPath execution methods added to the AuthorDocumentController API allow you to evaluate XPath expressions or to find nodes matching a certain expression by specifying the XPath version (XPath 3.0, 2.0 or 1.0).

Specify Additional System Properties in the plugin.xml Configuration File

Additional Java system properties can be set in the XML configuration file of a plugin. Therefore, the Java implementation classes can behave differently based on the properties set in the configuration file.

Check if the DITA Map Page is Editable

The WSDITAMapEditorPage.isEditable() method allows you to check whether a DITA Map page is editable.

Get the Selected Nodes from the DITA Map Page

The WSDITAMapEditorPage.getSelectedNodes() method can be used to find the selected nodes in the DITA Map page.

Show the Insert Reference Dialog Box for a Map Opened in the DITA Maps Manager View

The DITAAccess.insertTopicref(WSDITAMapEditorPage, ...) method shows the Insert Reference dialog box for the current DITA Map.

Control DITA Keys in the Author Component Using the API

The API AuthorComponentFactory.setDITAKeyDefinitionManager() method can be used to control the list of DITA keys used in the Author Component SDK.

Contribute Subject Scheme Enumeration Definitions Using the API

The API KeyDefinitionManager.getEnumerationDefinitions(URL) method provides a fixed set of Subject Scheme enumeration definitions.

Find Out if the InputURLChooserCustomizer API is Used to Edit a Certain Element Name and Attribute

The ContextDescriptionProvider.getAttributeEditingContextDescription() API can be used to know if the custom browse action is used to edit a certain attribute value for a certain element.

Common Interface for Author\Editor and DITA Map Tree Component Providers

The ro.sync.ecss.extensions.api.component.ComponentProvider API offers common functionality shared by the DITA Map Tree and the Editor Component Providers.

Access Workspace Utilities from Author Component API

The AuthorComponentFactory.getWorkspaceUtilities() API allows access to common utility methods to be used in the Author Component.

Add a Custom Attribute Value Editor for a Specific Attribute

The ExtensionsBundle.createCustomAttributeValueEditor() API provides the means to provide a custom attribute value editor for a certain named attribute.

Filter Entities from Associated Document Type

You are able to remove entities from the Entities view, by editing a document type in Options / Preferences / Document Type Association and then going to Content Completion in the Author tab. Therefore, even if the DTDs specify a set of accepted entities, you can filter them using this feature.


Additional Frameworks Directory

Apart from the oXygen installation folder and a custom directory, you can specify additional directories from which the frameworks in oXygen are loaded.

Symbols Toolbar Action

A toolbar action dedicated to inserting special characters is now available. The Symbols toolbar action allows you to insert recently used special characters or open the Character Map dialog box for more symbols.

Version: 15.1

October 7, 2013

With the release of version 15.1, oXygen is the first XML editor to fully support right-to-left and bidirectional text in the visual editing mode. Content authors are able to create and edit XML documents in the oXygenAuthor mode in languages such as Arabic, Hebrew, Persian and others.

This version of oXygen XML makes a leap forward in working with XML modules. Using the Master Files support, oXygen assists you while editing an XML document that belongs to a set of assembled modules, and provides you features such as module validation, in-context Content Completion Assistant, ID referencing or module connection overview.

The integration of the entire DITA for Publishers plugins suite enables oXygen users to produce Kindle output from DITA maps.

The Eclipse version (4.3) is now supported by the oXygen XML Eclipse plugin. Also, to keep you up-to-date, we bundled the latest third-party components such as Saxon Enterprise Edition, TEI Schemas (2.5.0), TEI Stylesheets (7.1.0), DITA for Publishers 0.9.18, and Calabash 1.0.13.

There are changes in:

Working with Modular XML Files in the Master Files Context

oXygen helps you edit XML modules referenced using XInclude or external entities. By customizing the XML Master File, oXygen provides a context to address module validation, ID referencing, understanding how modules are connected to each other, or using the Content Completion Assistant to edit content.

XML Module Validation   [read more...]

When you validate an XML document, oXygen automatically determines the Master Files that reference that module and validates the entire hierarchy of the assembled modules. This is especially useful, for example, when a module references IDs that are declared in another part of this hierarchy.

XML Module Editing   [read more...]

The Content Completion Assistant uses the schema declarations from the Master Files and only proposes elements and attributes that are valid in a particular editing context.

Search/Refactor Support for ID/IDREFS   [read more...]

The Master Files defined for the current module determines the scope of search and refactoring actions for ID/IDREFS values and for updating references when renaming or moving a resource. oXygen performs search and refactoring actions in the context that is determined by the Master Files, improving the execution speed.

Search/Refactor Support for ID/IDREFS

Module Connections Overview   [read more...]

The Resource Hierarchy/Dependencies view allows you to visualize and understand the relationship between XML resources that are referenced using XInclude and external entity mechanisms.

Modules Connections Overview

Renaming or Moving an XML Module Updates its References   [read more...]

oXygen automatically updates all the references to a module when the module is renamed or moved in the Project or Resource Hierarchy/Dependencies view.

XML Visual Editing

Bidirectional Text Support in Author Editing Mode   [read more...]

oXygen is the first XML editor to offer complete support for languages that require right to left writing. This means that content authors editing documents in the oXygenAuthor mode are able to create and edit XML content in Arabic, Hebrew, Persian, Urdu and other right to left languages.

Table and List Sorting   [read more...]

The advanced sorting support in oXygen allows you to sort the content of tables and list items. The dedicated Sort dialog box lets you sort an entire table or list, or a selection of rows or list items. You can also use the Sort dialog box to perform a sorting operation based on multiple criteria.

Tracked Changes Displayed in Read-Only Fragments

oXygen renders tracked changes in fragments that are referenced using DITA content references (XInclude or external entity mechanisms).

Track Attribute Changes

The Track Changes feature is able to keep track of changes made to XML attributes.

Character Map Improvements

Improved Search Capabilities

Added search capabilities by character description in the Character Map dialog box.
Character Map Improvements

Author API and Extensibility

Form-Based Editing in Author - Tooltip Property

The "tooltip" property lets you set a tooltip for the entire form control.

XPath Extension Functions

When defining the activation expression of an author action you can use the following two XPath functions:
  • oxy:allows-child-element('child_name')
  • oxy:current-selected-element('element_name')
One is to test that the current element (the one containing the cursor) accepts a child element, and another one is to test that the element covered by the selection has a certain name.

Sharing the Classloader Between a Framework and a Plugin

A framework and a plugin that are part of the same solution can share the same JAVA libraries.

DITA Support

Additional Output Formats

Added support to convert DITA Maps to the Kindle format. Also, you can convert Microsoft OOXML documents to DITA projects.

Support for DITA For Publishers Specializations

Creating, editing and validating DITA content based on the specializations included in the DITA For Publishers Project are now supported out of the box.

Redesigned Dialog Boxes for Inserting DITA Cross References and Content References

By redesigning the dialog boxes used for inserting DITA xref links or content references, oXygen allows easier searching for target elements in topics containing many reusable components (dictionary-like content).

DocBook Support

EPUB 3 Output

An experimental transformation scenario that produces EPUB 3 output from DocBook 4 and DocBook 5 resources has been added.

CMS Integration and Connectivity

SharePoint Filtering Support   [read more...]

You can filter the content stored on a SharePoint Repository depending on the columns available for the current library. oXygen allows you to apply multiple filters at the same time to display the items you are interested in.

Project View Enhancements

Update References to Moved or Renamed Resources

When you move or rename a resource, oXygen gives you the option to update its references in a customizable scope. This operation is available for XML, XSLT, XML Schema, Relax NG, and WSDL resources.

MarkLogic Support

Ready for MarkLogic 7

oXygen is compatible with the development version of MarkLogic 7.

MarkLogic XQuery Editing Support

When editing MarkLogic XQuery modules, the Content Completion Assistant displays the latest built-in XQuery functions in accordance with the server version.

Fast XDBC Application Server Selection

The XDBC server, used to execute XQuery expressions, can be selected quickly using the Use it to execute queries action from the Data Source Explorer view.

Setting a Specific Content Database

You can set a specific content database over which the XQuery expressions are executed.

Eclipse Plugin

Support for Eclipse 4.3

The oXygen XML Eclipse plugin now supports Eclipse 4.3 in addition to the previously supported versions of Eclipse (3.4 - 3.7).

Syncro SVN Client

Repair Items Copied, Moved, or Renamed Outside of an SVN Client

Items that were copied, moved, or renamed without using an SVN client can be repaired to maintain their history, making SVN aware of all the changes.

Improved Copying of Repository Items

Repository items can be copied from revisions other than the latest one, allowing you to recover any previous version you might need. This is allowed even if you are browsing older revisions in the Repositories view.

Extended Support for Copying Repository Items

Any version of a repository item can be retrieved directly when browsing its history either in the History view, Directory Change Set view, or Revision Graph view.

Recover Items Deleted from the Repository

Even if an item does not exist in the latest revision of the repository, its history is still preserved. Syncro SVN Client can resurrect any item presented as deleted in the History view, Directory Change Set view, or Revision Graph view.

Component Updates

ODF 1.2

oXygen offers support for ODF 1.2.

Calabash 1.0.13

XML Calabash was upgraded to version 1.0.13

Updated Saxon to Version

Version of Saxon is included in oXygen XML Editor.

HTTP Client 4.2.5

The Apache HTTP Client libraries were updated to version 4.2.5.

DITA for Publishers 0.9.18

DITA for Publishers was updated to version 0.9.18.


TEI Schema was updated to version 2.5.0. TEI XSL was updated to version 7.1.0.

Version: 15.2

January 22, 2014

Version 15.2 of oXygen XML Editor improves the support for developing Schematron and XML Schema schemas and adds support for working with modules to the Eclipse plugin.

Editing XML documents visually is a lot easier in oXygen XML Author version 15.2 with the intelligent content completion assistance and paste functionality while additional CSS 3 and CSS 4 features allow for creating more interactive and user-friendly interfaces.

This version features updated components, debuts the DITA 1.3 support by introducing the troubleshooting specialization and makes available a large number of API additions in response to feedback provided by our partners which integrated the oXygen XML authoring technology into their solutions.

There are changes in:

Editing Schematron Schemas

Improved Schematron Validation and Accurate Error Locations

Validating Schematron schemas is a complex process that involves multiple steps, thus it is not easy to trace errors that can appear at later stages in this complex process back to the initial schema files. oXygen improved the error checking by validating the entire schema hierarchy, resolving included schemas and it is the only XML editor that can locate the errors from any processing stage, including errors in the XPath expressions, highlighting them in the editing area.
Editing Schematron Schemas

The Content Completion Assistant Proposes Components from the Schema Hierarchy

The Content Completion Assistant proposes Schematron components in accordance with the editing context, collected from the entire schema hierarchy. For example, when you edit the active pattern of a phase, the Content Completion Assistant displays all the defined patterns, even if these are defined in an included schema.

Editing Schematron Modules in Master Files Context

The Master Files support allows oXygen to provide better support when working with modules that are referenced from the defined Master Files. This support includes not only Schematron schemas, oXygen allowing to easily determine the Master Files (top level Schematron files) from a set of files. Once defined the Schematron Master Files allow you to edit a Schematron module in context, improves validation, content completion assistance, provides the scope for search and refactoring actions, updating references of moved or renamed resources.

Hierarchy/Dependencies View

The relationships between Schematron modules can be viewed and analyzed with the help of the Hierarchy/Dependencies view.

Renaming or Moving a Schematron Module Updates Its References

When you rename or move a Schematron resource, oXygen automatically updates the references to that module. The changes about to be made can be reviewed in the Preview dialog box.

Search and Refactoring Actions for Schematron Components

oXygen allows you to search and modify the names of Schematron components such as patterns, phases or diagnostics, the change being applied in all places where those components are referenced. When the cursor is placed within a Schematron component, that component declaration and its references are highlighted in the editor and location markers are displayed in the overview ruler at the right of the editor. You can navigate to the declaration of a component using the CTRL/CMD + Click navigation feature - holding the CTRL (CMD on Mac) the component names become links that can be clicked to navigate to the components definitions.
Search and Refactoring Actions for Schematron Components

Handle Subject Attribute

The default location for an error reported when a Schematron check fails is the context of the Schematron rule that contains that check. However, sometimes that context is different than the actual error location and Schematron provides a way to point to the actual location of the issue, through the subject attribute that specifies an XPath relative to the context node. oXygen takes into account the subject attribute available on Schematron assert or report elements when the location of the Schematron message is computed.

Custom Schematron Code Templates

Code templates or abbreviations allow you to type a short name and expand that to a code fragment. Schematron specific code templates covering the most frequent code fragments were added so you can take immediate advantage of this functionality to quickly enter Schematron constructs. The templates are displayed by the Content Completion Assistant where you can see the list of specific Schematron code templates, filter them by typing a prefix and select them to get the expanded code fragments.
Custom Schematron Code Templates

Default Validation Scenarios for XML Schema or Relax NG with Embedded Schematron Rules

When you work with XML Schema or Relax NG documents that have embedded Schematron rules, oXygen provides two built-in validation scenarios: 'Validate XML Schema with embedded Schematron' for XML schema, and 'Validate Relax NG with embedded Schematron' for Relax NG. You can use one of these scenarios to validate also the embedded Schematron rules.

Custom Icons for Schematron Outline

The Outline view helps you find Schematron components easily by decorating them with distinct icons.
Custom Icons for Schematron Outline

XML Visual Editing

Support for the CALS colsep and rowsep Attributes

The defined row and column separators are rendered in oXygen for the cells in CALS tables (a table model used by DocBook, DITA and other XML frameworks) so you can see immediately how the table will be rendered when the document is published. You can also easily edit the values for columns using two checkboxes that appear in the column specification area.
Support for the CALS colsep and rowsep Attributes

Text Area Form Control

To be able to create user-friendly interfaces for editing XML, oXygen provides support for binding text or attribute values to form controls such as drop-down lists, checkboxes, lists, etc. A text area form control is available starting with version 15.2. This is useful for editing larger attribute or element values and you can also benefit from syntax highlight capabilities.
Text Area Form Control

Intelligent Schema-Aware Paste

When you paste content oXygen checks if that is valid at the cursor position and if that fails then recovery strategies are proposed in order to keep the document valid. Version 15.2 includes a strategy that automatically analyzes nearby positions to determine a valid location for that content.

Content Completion Assistant Flexible Insert Location

You can choose to insert an element that is not valid at the current position and oXygen will trigger automatically recovery strategies to place that element in a valid location. This removes the requirement to position the cursor in the exact location where an element is accepted, you can insert it also if the cursor is positioned in a near-by location.

PDF Images Support

The Author editing mode in oXygen offers support for rendering PDF images by installing a third-party library.
read more

JPEG with Embedded CMYK Support

The Author editing mode in oXygen can properly render JPEG images that have an embedded CMYK profile.
read more

TIFF Images Support

The Author editing mode in oXygen offers support for rendering TIFF images.
read more

CSS Support

Support for CSS Level 3 Structural Pseudo-Classes

All the CSS Level 3 structural pseudo-classes are supported (:root, :last-child, :first-child, :nth-child, :nth-of-type, :not(), :empty, etc.)

Support for the Experimental CSS Level 4 Subject Selector

The experimental subject selector from CSS Level 4 is now supported. It can match an element by taking into account its children (for instance, "chapter! > title" will match any chapter that contains at least a title).

Support for :hover and :focus CSS Pseudo-Classes

You can style your XML documents depending on the mouse and cursor position over the document by using the :hover and :focus CSS pseudo-classes.

Localize Static Content in CSS

You can use constructs such as ${i18n(key.name)} directly in the CSS content of a 'before:' or 'after:' pseudo-element to reference keys which can be translated to multiple languages through the built-in oXygen internationalization support.
read more

Pass CSS References Through XML Catalog

Import instructions from CSS documents are passed through the XML catalog URI mappings.
read more

Add a Custom CSS to the Predefined Ones Using XML Catalog Mappings

By adding a URI mapping to map a specific URI to a CSS file you can contribute a CSS to be used when rendering any XML document in the Author editing mode. This allows you to enforce some specific styles on any XML file without the need to modify the CSS documents which come with existing document type configurations.
read more

CSS Content Properties: -oxy-append-content and -oxy-prepend-content

The content used for the ":before" and ":after" pseudo-elements can be created incrementally from the content specified by these properties. This reduces the complexity of selectors when the content depends on multiple conditions.
read more

Properties for the oxy_button Form Control

Two additional boolean properties are available allowing to display the associated action's text and/or icon on the button form control (showText and showIcon).

In-Place Actions Can be Executed Preserving the Current Context

Using the actionContext property, available on the oxy_button and oxy_button_group form controls, the author actions associated with these form controls can be executed either in the context of the element that contains the form controls or in current context, if that is included in the element that contains the form control. For example, this allows you to place element specific actions on an element and execute them to perform actions at the cursor position (if the cursor is inside that element).

Form Controls Can Edit Attributes from a Specified Namespaces

If the attribute edited through a form control is from a specific namespace then you can specify it in the edit property as a QName. The CSS must contain a namespace declaration mapping the QName prefix to the attribute namespace.

XML Schema

Control the XML Schema Version at XML Schema Document Level

Now that XML Schema 1.1 is a W3C Recommendation, people started to use both XML Schema version 1.0 and XML Schema version 1.1. While oXygen provides a default XML Schema version as an option it is useful to be able to control also what version will be used for each XML Schema file. oXygen 15.2 supports the use of vc:minVersion and vc:maxVersion attributes on the schema root element, allowing you to set the XML Schema version for that XML Schema document. New document templates are also provided so you can easily create XML Schema 1.0 or XML Schema 1.1 documents.
read more
Control the XML Schema Version at XML Schema Document Level

Flatten XML Schema

The Flatten Schema operation allows you to flatten an entire hierarchy of XML schemas. Starting with the main XML schema, oXygen calculates the schema hierarchy by processing the "xs:include" and "xs:import" statements and then it generates one schema file for each different namespace.
Flatten XML Schema

Text Mode

Refactoring Highlighted Content

You can easily manage the occurrences of the text found through executing an XPath expression or a find operation, using actions that act on all highlights. You have the option to remove all highlighted content, modify, or surround the content with a specific tag.

Select Attribute in Text Mode

You are able to quickly select an attribute and its value using triple click on the attribute's name in the oXygen stand-alone, and double-click right before the attributes name in the oXygen Eclipse plugin.

Automatically Comment a Matching Tag

oXygen automatically applies the same action on the matching end tag when you comment a start tag. You can comment one or more start tags and their matching end tags are also commented so the document remains "well-formed".

DITA Support

Syntax Highlight in Published Code Blocks Sections

You can add syntax highlight to the codeblock and pre sections from your published PDF and XHTML-based outputs by setting specific programming language values to the outputclass attribute.

Generate Index Page in PDF Using Apache FOP

If you are using index terms in your DITA content, the PDF output generated with the default bundled PDF processor (Apache FOP) will also contain the index page at the end of the PDF.

DITA 1.3: Troubleshooting Specialization

You can create new troubleshooting topics based on the included experimental DITA 1.3 Troubleshooting DTD specialization plugin.

Edit codeblock Sections with Syntax Highlight Support

An alternate CSS was introduced, so you can now edit codeblock sections using the Text Area form control. Thus, you benefit from syntax highlight for a variety of document types.

DocBook 5 Support

Edit Program Listings with Syntax Highlight Support

An alternate CSS was introduced, so you can now edit program listings using the Text Area form control. Thus, you benefit from syntax highlight for a variety of document types.

CMS Integration and Connectivity

Accessing Microsoft Office 365 Documents

You can access documents stored on a SharePoint site from your Office 365 account using the "Open URL" action from oXygen.
CMS Integration and Connectivity

Integrating the Author Applet on a SharePoint Site

The Author Component can be embedded in a SharePoint site as a Java applet. This is a simple and convenient way for you to retrieve, open, and save XML and XML-related documents stored on your company's SharePoint server, directly from your web browser. You can embed the applet either on a site that is located on a standalone SharePoint server, or on your company's Microsoft Office 365 account.

MarkLogic Support

MarkLogic 7

oXygen offers support for MarkLogic 7.

Eclipse Plugin

Master Files Support in the Eclipse Plugin

To deal with difficult tasks developers split complex files into multiple modules. Sometimes these modules taken as standalone files are invalid and to be able to work with them you need to take into account the entry point, the Master File that includes the modules. oXygen allows defining the entry points or Master Files and automatically provides support for editing modules referenced from those Master Files. Starting with version 15.2, the oXygen Eclipse plugin offers full support to work with modular XML, XSLT, XML Schema, WSDL, Schematron and Relax NG files, providing module editing, validation, search and refactoring actions, modules connections overview, etc., (all of these in the context of the defined Master Files).

Syncro SVN Client

Support for SVN 1.8 Servers

Subversion 1.8 repositories are now supported, excepting FSFS-backed repositories accessed through the "file://" protocol. Working copies having SVN 1.8 format are not yet supported.

Copy/Move Operation Improvements

The SVN Client does its best to copy/move items within the working copy. In cases when the operation would not normally work in Subversion, a simple file system copy/move operation is performed. Also, valid destination directories are detected automatically and presented to you.

Drag-and-Drop Improvements in the Working Copy View

The Drag ad Drop support was extended to all the Working Copy view modes. Also, compatibility between the SVN Client and external applications was improved for dragging and dropping items from one to another.

Drag-and-Drop Support in the Repositories View

Copying and moving repository items is made easy through the drag-and-drop support added in the Repositories view.

Component Updates

Calabash 1.0.16

The Calabash XProc engine was updated to version 1.0.16.

TEI XSL Update

TEI XSL was updated to version 7.7.0.


The bundled Saxon Enterprise Edition XSLT processor from Saxonica was updated to version


Bundled Java 7 JRE in the Mac OS X Installation Kit

The oXygen installation kit for mac OS X (10.7, 10.8, and 10.9) includes Java 7.

Improved Layouts

You can choose to keep a separate layout for each project, thus when you move between projects you get not only the last opened files specific to that project restored, but also the exact layout of views, editors, and toolbars. Therefore, when you come back to a project you continue exactly from the state in which you left that project.

Maven 4.0 Framework

A new document type configuration is available allowing to create and edit Maven 4.0 POM documents.

Distinct Sounds Depending on the Status of the Current Operation

Success and failure of the validation or transformation actions can be signaled also with a sound. The beep signal has a higher audio frequency when the operation is successful, and a lower audio frequency when the operation fails.

Extended API

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

Support for Setting Custom Pseudo-Classes

You can set your custom CSS pseudo-classes on the nodes from the AuthorDocument. These are similar to the normal XML attributes, with the important difference that they are not serialized, and by changing them the document does not create undo and redo edits - the document is considered unmodified. You can use custom pseudo-classes for changing the style of an element (and its children) without altering the document.
read more

Additional Calls to the Custom URI Resolvers

The custom URI resolvers set with the pre-existing API XMLUtilAccess.addPriorityURIResolver(URIResolver) are now called to resolve image and content references even if the resources are placed on the local drive. This is useful for indirecting the application to resolve resources in other places.

Obtain an Existing AuthorDocumentFilter Implementation

If you have both a plugin and a framework which need to set an AuthorDocumentFilter, you can obtain the existing filter implementation and wrap it in your own filter implementation using the API AuthorDocumentController.getDocumentFilter().

Refresh References in Document Controller

Added the API method AuthorDocumentController.refreshNodeReferences(AuthorNode) to refresh references on a certain node for developers who implement a custom AuthorContentReferencesResolver.

Actions Provider Access from DITA Map Editor Page

Added the API method WSDITAMapEditorPage.getActionsProvider() to obtain actions defined in the DITA Map Editor Page and mount them to custom controls.

Obtain the Existing Unique Attributes Processor

You can obtain in your extension Java operations the current unique attributes processor in order to check if certain attributes should be removed when copying content using the API AuthorDocumentController.getUniqueAttributesProcessor().

API to Show Multiple Files Chooser

The API method WorkspaceUtilities.chooseFiles(File, String, String[], String) allows you to show a file chooser having multiple selection enabled.

API to Create Input Stream over Editor's Content

The API method WSEditorBase.createContentInputStream() allows you to create an input stream over the contents of the editor. The implementation will take care of using the proper character encoding.

Create CSS Alternatives Toolbar in the Author Component

The CSS Alternatives drop-down button defined in the document type can be added to the toolbar of an Author Component application using the API WSAuthorComponentEditorPage.createCSSAlternativesToolbar().

Save Global Preferences

Usually the application saves its global preferences when it is closed. You can force save the global options to their storage location by calling this API: PluginWorkspace.saveGlobalOptions().

More Context Information for Editing Attribute Values

When the custom InputURLChooserCustomizer gets called to edit an attribute value you can find out more details about the current element and the current edited attribute: AttributeEditingContextDescription.getElementContext().

Open an Editor with an Imposed Content Type

If a URL does not have an extension but the developer knows beforehand the type of resource (XML, DITA Map, etc.) in order to avoid the application asking the end-user what type of resource is being opened this API can be used instead: ro.sync.exml.workspace.api.Workspace.open(URL, String, String).

DITA Map Content Type for a URL Connection

If a DITA Map URL does not have an extension and a custom URL Connection is implemented for it in the application the method URLConnection.getContentType() can return the value application/ditamap to identify it as such.

Better Integration for Form Controls with Custom Edit

If a custom form control performs a custom edit, it can pass the Runnable containing the edit to the application in order to integrate better in the editing flow using the API EditingEvent.customEdit.

Operation Capable of Running a Sequence of Other Actions

The ExecuteMultipleActionsOperation can execute a sequence of actions, defined as a list of IDs. The actions must be defined by the corresponding framework, or one of the common actions for all frameworks supplied by oXygen. ExecuteMultipleActionsOperation.