XML Grid Editor

Synchronized XML Editing

The editing area in <oXygen/> consists of two tabs: the text based editing tab and the XML grid editor. The latter is available when editing files recognized as XML. By default, <oXygen/> opens the files in the text based editor.

The tabs are synchronized with each other, so you can quickly switch between them when required.

Most of the actions available in the text mode editor are available for the grid and have Undo/Redo support. You can easily identify nodes in the document using the find and replace action along with the XPath toolbar and the XPath builder.

XML Grid Editor

XML Grid Layout

The XML document is displayed in the XML Grid Editor as a structured layout of nested tables in which the text content can be modified without directly interacting the XML tags. <oXygen/> considers the child elements and attributes of the recurring elements as columns. The tables can be expanded and collapsed with a mouse click to show or hide the elements as needed. Also the document structure can be changed easily with drag and drop operations on the grid components.

XML Grid Editor Sample

There are two layouts available in the grid editor: the grid layout (tries to find and group the recurring elements in tables) and the tree layout (shows directly the structure of the XML document).

XML Grid Editor Tree Layout

Grid Operations

By grouping the recurring structures, <oXygen/> offers the possibility to manipulate the data with table specific operations:

  • Table sort. This is done by selecting a column and choosing one of actions: Sort Ascending or Sort Descending. <oXygen/> analyzes the data type of the column and decides what kind of comparison to perform: numeric or text.
  • Insert columns. The new columns become child elements or attributes in the recurring nodes.
  • Rename columns. Changing a column name renames all the elements or attributes composing that column.
  • Insert new rows. The new table row represents a new element instance similar to the repetitive ones from the table.
  • Delete or duplicate cells, rows and columns. You can also preserve a column but remove all its data content.

Other operations, available on any node, include node insertion and deletion.

The grid behaves as a form, so you can use the well known keyboard navigation: arrow keys, page up/down, etc..

Content Completion

If the edited document uses an XML Schema (or a DTD, Relax NG Schema, etc..) you can use content completion. In the image below the grid editor is used to modify an XML Schema.

XML Grid Editor Content Completion

When inserting an element whose definition indicates a required content ( either attributes, sub-elements or both) <oXygen/> automatically adds those nodes in the grid.

Find All Elements Action

The Find All Elements action is available in all the XML editor modes: Text, Author and Grid. It represents an easy way to search for XML elements by their tag names, attribute names and values.

Find All Elements Dialog

Unicode support

The XML Grid Editor fully supports Unicode. It is possible to change the text orientation when you are editing XML documents containing right to left or bidirectional text.

Grid Configuration

You can customize the grid's appearance according to your needs. For instance you can change the font, the cell background, foreground, or even the colors from the table header gradients. The default width of the columns can also be changed.

In the following image the grid has been configured to use a high contrast color schema:

Grid Editor High Contrast Color               Schema
Video Tutorials
" oXygen XML Editor is the premier text editor for XML geeks, and an indispensable tool for O'Reilly's Production group. My team uses oXygen XML Editor for everything from simple XML editing to Schema validation and XSLT transformations. The digital production staff especially loves oXygen's built-in EPUB support, which eliminates a great deal of the grunt work that is usually entailed in editing EPUB files. The more we use oXygen, the more realize what a powerful tool it can be in digital and XML-based workflows."
Adam Witwer
Director of Content and Publishing Operations
O'Reilly Media