XML Author

  • Visually edit XML documents
  • Publish in a variety of formats
  • Use DITA, DocBook or other frameworks
  • Collaborate with team members
  • Connect to CMSes, WebDAV and FTP
  • Validate and transform XML files

Visual XML Editing

Visual XML Editing

The Author mode of the oXygen XML Editor demonstrates a new productive way of authoring XML documents, similar to a word processor.

The visual layout is CSS driven and the set of editing actions is fully customizable.

XML Single Source Publishing

XML Single Source Publishing

oXygen is the most efficient solution for implementing XML single source publishing and content reuse.

The main XML publishing formats are supported out-of-the-box: DITA, DocBook, TEI, XHTML.



The content can be stored and accessed on a SVN Repository or a WebDAV enabled CMS.

Third party connectors to CMSes are also available: RSuite, Astoria, XDocs, Vasont

Collaboration tools include:

  • Change tracking
  • SVN client
  • XML diff and merge

XML Publishing Frameworks

XML Publishing Frameworks

Besides the bundled frameworks, oXygen can be customized to handle any XML format.

The customization developers can package CSS files, XML schemas, catalogs and Java implementations of the oXygen API into new XML editing frameworks.



Authors can enhance the built-in XML publishing frameworks provided by oXygen or create their own frameworks and use them throughout their organization.

Once a configuration is created it can be deployed to other oXygen installations to impose a standard editing environment for an organization.

XML Database Connectivity

XML Database Connectivity

oXygen can browse and open resources from a variety of XML data sources including:
  • eXist
  • MarkLogic
  • Oracle Berkeley DB XML
  • Documentum xDB
  • Microsoft SQL Server
  • Oracle Database
  • IBM DB2 Pure XML

Features What's New
<oXygen/> XML Author
XML Authoring for Everyone!

The latest oXygen XML Author sets new standards among content authoring tools, introducing many friendly authoring features and providing an easy-to-use interface. Taking advantage of XML technologies has never been easier. With oXygen you have access to XML based standard frameworks, preset transformation scenarios and unmatched extensibility and connectivity.

Key features

Single Source Publishing

Preset and configurable scenarios are one click away, allowing you to produce outputs in PDF, ePUB, HTML and many other formats using the same source.

Structured Editing

The most intuitive XML editing features and a friendly interface come to your help, improving the results of your work.

XML Publishing Frameworks

<oXygen/> comes with ready-to-use support for DITA, DocBook, XHML and TEI frameworks.


Take advantage of unmatched extensibility support and enhance the built-in XML publishing frameworks or even create your own frameworks.


Powerful connectivity support allows you to interact with the majority of XML databases, content management systems and WebDAV.


Collaborate with other authors more efficient than ever using our tracking tools, subversion repository client, and compare and merge solutions.

What's new in <oXygen/> XML Author 15.2

Related Versions:

January 22, 2014

Editing XML documents visually is a lot easier in <oXygen/> XML Author version 15.2 with the intelligent content completion and paste functionality while new CSS 3 and CSS 4 features allow for creating more interactive and user friendly interfaces. The new version features updated components and debuts the DITA 1.3 support by introducing the troubleshooting specialization.

There are changes in:

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 check boxes that appear in the column specification area.

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 like drop downs, check boxes, lists, etc. A new text area form control is available starting with version 15.2. This is useful for editing larger attribute or element values and you can benefit also of syntax highlight capabilities.
Text Area Form Control

Intelligent Schema-aware Paste

When you paste content <oXygen/> checks if that is valid at the caret position and if that fails then recovery strategies are proposed in order to keep the document valid. Version 15.2 comes with a new strategy that automatically analyses nearby positions to determine a valid location for that content.

Content Completion 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 caret in the exact location where an element is accepted, you can insert it also if the caret 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 now 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 caret position over the document by using the ":hover" and ":focus" CSS pseudo-classes.

Localize Static Content in CSS

You can use constructs like ${i18n(key.name)} directly in the CSS content of a "before:" or "after:" pseudo-element to refer to 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

New 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 new properties. This reduces the complexity of selectors when the content depends on multiple conditions.
read more

New Properties for the "oxy_button" Form Control

Two new 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 new 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. This allows for example placing element specific actions on an element and executing them to perform actions at the caret position, if the care 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.

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 the new 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 new 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 programlistings using the new 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/>.

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.

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 referred from those master files. Starting with version 15.2, the <oXygen/> Eclipse plugin offers full support to work with modular XML providing module editing, validation, search and refactoring actions, modules connections overview, etc. - all 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 new <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. In this way 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 new 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 new 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 Alternates Drop-Down in the Author Component

The CSS alternates drop-down button defined in the document type can now 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 new 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 an 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 new API can be used instead: ro.sync.exml.workspace.api.Workspace.open(URL, String, String).

DITA Map Content Type for an URLConnection

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 new 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.