JSON Editor

These features are also available in the Oxygen JSON Editor!

Oxygen provides a specialized JSON editor with a variety of editing features and helper views. These features include a Text editing mode, a Grid editing mode that displays JSON documents as a structured layout of nested tables, and a visual Author editing mode that converts JSON documents to proper XML structure. Also, the JSON editing support includes a dedicated Outline view along with an intelligent Content Completion Assistant

JSON Text Editing Mode

The OxygenText mode provides a simple editor where you can work with JSON documents, providing standard editing capabilities such as undo/redo, copy/paste, find/replace, and drag/drop, as well as more complex features, such as content completion, format and indent, and structure validation.

JSON Editor Text Mode

Syntax Highlights

Oxygen supports Syntax Highlighting for JSON documents and provides default configurations for the JSON set of tokens. You can customize the foreground color, background color, and the font style for each JSON token type.

Structure Folding

In a large JSON document, the data enclosed between left and right brace characters can be collapsed so that only the needed data remains in focus, or expanded to show more content.

New Document Templates

Oxygen includes some predefined document templates to help you get started creating JSON documents and JSON Schemas. There are also a few XSLT stylesheet templates that you can use for transforming JSON documents to XML or HTML.

Content Completion Assistant

The JSON editing support provides a variety of specialized features to assist you with creating and editing JSON documents. Working with JSON documents has never been so easy.

Intelligent Editing

Context-Sensitive

The intelligent Content Completion Assistant offers a list of proposed JSON constructs that are valid at the current editing location. This feature is driven by the associated JSON Schema and the types of proposals include properties, values, arrays, and objects. Annotations are also provided in an adjacent window to offer more information about the current proposal.

JSON Content Completion

Show Recent History in Content Completion

The proposals that have previously been used are promoted at the top of the content completion list. This makes it easier to find frequently used proposals the next time you want to use them.

Code Templates

The content completion list of proposals includes a set of built-in code templates for JSON documents to make it very efficient to insert common JSON constructs. You also have the ability to define your own code templates that will appear in the content completion. For example, you can define a custom JSON code construct that is not already present in the content completion list.

JSON Outline View

The JSON support in Oxygen includes a dedicated Outline view that displays JSON components (such as objects, arrays, properties, and values) and helps you visualize, navigate, and work with the node structure of a JSON document.

JSON Outline View

Document Overview

The JSON Outline view displays a general overview of the node structure within the current JSON document and shows the hierarchical dependencies between the JSON components. You can quickly navigate through the document by selecting nodes and you can move components by dragging them to a new position in the tree structure.

JSON Outline View

Synchronization

The Outline view is synchronized with the main editor area, so when you make a selection in the editor, the corresponding nodes are highlighted in the Outline view, and vice versa.

Filtering

A text filter at the top of the view makes it easy to focus on a particular subset of components. There are also some filtering options in the settings drop-down menu accessed from the top-right corner of the view.

Error Markers

Validation errors and warnings in JSON documents are marked in the Outline view with an icon that is colored according to the type of issue.

JSON Grid Editing Mode

Oxygen offers the ability to view and edit JSON documents in the Grid editing mode. The JSON content is represented in Grid mode as a compound layout of nested tables where the JSON data and structure can be easily manipulated with table-specific operations or drag-and-drop operations. You can also customize the JSON grid appearance according to your preferences. For example, you can change the font, cell background, foreground, or even the colors from the table headers.

JSON Editor Grid Mode

JSON Visual Author Editing Mode

You can edit JSON files in the visual Author editing mode and you have access to the various features and actions that are available when editing XML documents in this visual mode. When a JSON document is opened in Author mode, it is automatically converted to proper XML structure using the built-in JSON to XML Converter.

JSON Editor Author Mode

You can also create your own custom JSON framework, similar to the process for creating custom XML frameworks. For example, to create a document type association (framework) for JSON documents, you could:

  • Add a rule to match the "JSON" as the root local name.
  • Add a rule to match the topProperties attribute that contains a value that is the name of the properties from the first level of the JSON document.
  • Add a rule to match the schema attribute that contains a value that is the associated schema from the $schema property.