Embedding Oxygen XML Web Author Component in a CMS Page

Oxygen XML Web Author Component can be embedded in a CMS to offer editing functionality for documents stored in the CMS.

To embed Oxygen XML Web Author Component, load the main page (app/oxygen.html) in an iframe.

Security Restrictions

Oxygen XML Web Author Component uses cookies to enforce its licensing and to maintain the editing state of the opened documents. Some browsers block third-party cookies for security reasons. To avoid having the cookies blocked, Oxygen XML Web Author Component should be served from the same origin as the CMS host page.

Passing Parameters to the Editor

To control the editor, you can use URL parameters described in the options section. To pass custom parameters, you can implement a plugin for Oxygen XML Web Author Component that contains JavaScript code to interpret those parameters.

Communicating with the Editor

To communicate with the editor, you can send messages between the host CMS page and the Oxygen XML Web Author Component page.

Browsers offer the window.postMessage JavaScript API that allows messages to be sent between pages. To receive the message, create a plugin for Oxygen XML Web Author Component that contains JavaScript code that listens for the messages sent by the CMS host page and uses the Oxygen XML Web Author Component JavaScript API to implement the required functionality.

Other problems

  • We experienced problems if the iframe is hidden while loading using display: none. You can use visibility: hidden for the same purpose.
  • Some XML vocabularies (for example, DITA) support cross-document links. By default, clicking on a cross-document link will open that document in the Oxygen XML Web Author Component in another browser tab. If the editor is embedded, you may want to change this behavior using the sync.api.Editor.EventTypes.LINK_OPENED event that is triggered on the sync.api.Editor instance.

Was this helpful?