What's New in Oxygen XML Developer 25.1

March 16, 2023

Related version: 25.0    

Oxygen XML Developer version 25.1 is a minor release of the industry-leading bundle of tools for developers. This release offers both enhancements to existing functionality as well as some brand new features that were requested by the community.

JSON schema designers can look forward to more functionality to help them in Design mode as well as upgrades to some of the JSON tools and support for editing JSON Lines documents. YAML developers will be happy to see that the YAML editing support was bolstered to a level similar to our JSON support. Many of our popular add-ons were updated with new options, visual improvements, performance enhancements, and ease-of-use features. The scripting community now has access to some ready-to-use GitHub project templates and GitHub actions that allow users to automate scripts and some of the existing scripts were improved, while some new ones were added. This release also provides various important component updates, bug fixes, and security enhancements.

There are changes in:

JSON Schema

New Action to Flatten Schema in JSON Schema Editor

In some cases, it is more useful to have a single file with all the schema definitions instead of working with multiple files separately. For this specific case, Oxygen now provides you with the new Flatten Schema action (available in the Editor contextual menu) that can be used to flatten an entire hierarchy of JSON Schemas, by recursively adding the components of all referenced schemas into the main one, and by updating all the $ref keys accordingly. For more details, see Flatten JSON Schema.
New Action to Flatten Schema in JSON Schema Editor

Extract Definition Action Improved

The existing refactoring actions that extract definitions (Extract definition in current file or Extract definition in another file) now work on multiple definitions so that you can just select all the definitions you want to extract into the definition group and only have to invoke the corresponding action once.
Extract Definition Action Improved

Search Functionality Extended in the JSON Schema Design Mode

The functionality of search actions (Search References, Search References in, and Search Occurrences in File) in the JSON Schema Design mode was extended so that they now can be used on the Schema type component (the root of the schema diagram) to search for references/occurrences of the schema name.

Performance Improvements When Renaming Components

Performance improvements were implemented for the Rename Component action so that the operation is processed faster, especially when there are a lot of changes in large documents.

XSD to JSON Schema Conversion Improved

The conversion of XSD to JSON Schema was improved to correctly generate the keywords when JSON Schema version 2019-09 or 2020-12 is selected. This ensures that the generated JSON schema is accurate and compatible with the selected JSON schema version.

JSON Schema Documentation Generator Improvements

The following improvements are now included when generating JSON Schema documentation:

  • The time it takes to generate the documentation has been reduced significantly, especially for large schemas.
  • Text content will wrap on multiple lines to avoid exceeding the cell margins.
  • Schema definitions are now presented even if they are not referenced.
  • Some rendering problems were fixed regarding the linking of the diagrams with the components from the documentation.
  • Various performance and bug fixes were implemented, including some broken links and encoding issues.

JSON

Support for JSON Lines Documents

Oxygen offers basic text editing support for JSON Lines documents (a convenient format for storing structured data that may be processed one record at a time). Validation and content completion features are available if a JSON Schema is associated through a validation scenario.
JSON Lines Support

Property Names Now Displayed After Ending Brackets in Text Mode

When editing JSON documents in the Text editing mode, property names are now displayed after the ending bracket to make the JSON code more readable. This default behavior can be disabled by deselecting the new Show property name after ending bracket option in the JSON section of the Editor->Edit Modes->Text preferences page.
Property Names Now Displayed After Ending Bracket in Text Mode

Format and Indent JSON and JSON-LD in HTML Scripts

The format and indent action in HTML documents will now also format the JSON and JSON-LD content from the HTML script element.

YAML

New YAML Outline View

The Outline view is now available for YAML documents. It displays the list of all the components of the current YAML document in a hierarchical (tree-like) representation. It is synchronized with the main editor so you can use it to navigate to specific parts of the document and move or delete components.
New YAML Outline View

Content Completion Now Available in YAML

The content completion mechanism is now available when working with YAML documents. The content completion in YAML is generated automatically from the associated JSON schema. You can also control the inserted content with a new set of options (located in the Options->Preferences->Editor->Content Completion->YAML preferences page). You can specify whether or not required content, optional content, and additional content should be generated.
Generate Default Content in YAML Content Completion

Generate Default Content in YAML Content Completion

A new option (Property value) was added in the Options->Preferences->Editor->Content Completion->YAML preferences page. It allows you to choose how Oxygen will generate a property value when you use the content completion assistant. You can choose between the default, random, or empty values.

Toggle Line Comments Action

The Toggle Line Comments action is now available for YAML documents. The action can be triggered from the contextual menu (or by using the Ctrl + ForwardSlash keyboard shortcut) and it comments or uncomments the current selection (or the current line if no content is selected) in the YAML document.

Copy JSON Pointer and Copy XPath Actions

The Copy JSON Pointer and Copy XPath actions are now available for YAML documents. The actions copy the JSON Pointer or XPath expression from the cursor position to the system clipboard.

XML Refactoring

All XML Refactoring Operations Now Available in the Find Action Dialog Box

XML Refactoring actions in special categories (including the DITA-specific ones) are now available to be selected and executed directly from the Find Action dialog box.

Move/Rename Resource Actions Now Available for Folders in the Project View

You can now use the Move resource and Rename resource actions on both files and folders within the Project view's contextual menu (under the Refactoring submenu). Previously, these actions were only available for files.

Add-ons

A variety of add-ons are available that can be used to extend the functionality of Oxygen.

JSON Schema Documentation Generator Improvements

Various improvements were added to the JSON Schema Documentation Generator add-on:
  • The time it takes to generate the documentation has been reduced significantly, especially for large schemas.
  • Text content will wrap on multiple lines to avoid exceeding the cell margins.
  • Schema definitions are now presented even if they are not referenced.
  • Some rendering problems were fixed regarding the linking of the diagrams with the components from the documentation.
  • Various performance and bug fixes were implemented, including some broken links and encoding issues.

OpenAPI Documentation Generator Improvements

The following improvements were added to the OpenAPI Documentation Generator add-on:
  • You now have the option to include hyperlinks for the diagrams displayed for each JSON schema component. The hyperlink navigates to the definition of that component.
  • The OpenAPI Documentation action is now properly aligned in the Generate Documentation menu on macOS distributions.
  • Links from the Source code section are now functional.
  • Various layout and rendering improvements were implemented.

Git Client Improvements

Some improvements were made to the Git Client add-on:
  • A new options page was added for SSH connections to control SSH agent usage.
  • The Oxygen project change detection mechanism was improved. It is now faster and the Git Staging view no longer needs to be displayed.
  • The presentation of the labels associated with a commit in the Git History view has been improved to avoid truncating names when it is not necessary.
  • The commit dot in the Git History graph associated with the head of the current branch is now painted differently to make it easier to be seen.
  • Various bug fixes and performance improvements were implemented.

For a complete list of updates added in the Git Client, see https://github.com/oxygenxml/oxygen-git-plugin/releases.

Saxon XSLT and XQuery Transformer Add-on is Now Available for Saxon Version 12

A new Saxon XSLT and XQuery transformer add-on is now available for Saxon version 12. The add-on integrates the latest major release of Saxon (version 12.0 of the engine).

Updated Saxon XSLT and XQuery Transformer Add-on for Saxon 11

A new version for the Saxon XSLT and XQuery transformer 11 add-on is now available. The new version integrates Saxon 11.5, the latest maintenance release of the Saxon 11 engine.

Live Tutorials Add-on

The new Live Tutorials add-on allows you to create live tutorials for people who want to learn various editing functions for a certain vocabulary using the application. The add-on comes bundled with small tutorials for learning how to perform various DITA-related editing tasks in Oxygen. For example, there are tutorials that contain various missions for learning some basic DITA editing tasks, learning how to work with tables, learning how to edit and insert images, and more.
Live Tutorial Add-on

Fluenta DITA Translation Add-on

Fluenta is a tool designed to simplify the translation of DITA projects. The new Fluenta DITA Translation add-on allows you to manage a Fluenta translation workflow directly from within Oxygen. The Fluenta DITA Translation add-on provides access to the following features:
  • A Fluenta menu is added to the contextual menu in the DITA Maps Manager and it includes a Create project action that opens a dialog box where you can create and configure a Fluenta project.
  • Once you are ready to send a project to translators, you can use the Generate XLIFF action (available in the Fluenta menu) to open a dialog box where you can select the languages and other options and then generate an XLIFF file for each selected language. You could then send the XLIFF file(s) to a translation service provider.
  • Once you receive the XLIFF back from the translator, you can use the Import XLIFF action (available in the Fluenta menu) to generate a translated version of your project.
  • You can edit previously created Fluenta projects by using the Edit project action (available in the Fluenta menu).
Fluenta DITA Translation Add-on

Batch Documents Converter Improvements

Various improvements were made to the Batch Documents Converter add-on:
  • The processing of table captions was improved when converting Word to XHTML or DITA. The table is now obtained with a caption child in HTML or with a title in DITA.
  • The width of table columns is now preserved when converting Word to XHTML or DITA.
  • The processing of figure captions was improved when converting Word to XHTML or DITA. For XHTML, a <figure> element is obtained with a <figcaption> child element. For DITA, a <fig> element is obtained with a <title> child element.

Terminology Checker Improvements

Two new extra plugins were added to the Terminology Checker add-on:
  • The ASD Simplified Technical English Specification (ASD-STE100) Rules plugin contributes ASD Simplified Technical English Specification rules to the Terminology Checker.
  • The MS Writing Style Guide Vale Rules plugin contributes a set of Vale-compatible rules based on the Microsoft Writing Style Guide to the Terminology Checker.

Scripting

The All Platforms distribution of Oxygen is bundled with a scripts sub-folder that contains scripts for automating and running various utilities from a command line interface. To run any of these scripts, you need to purchase a scripting license.

Ready-to-use GitHub Project Templates Available to Help You Explore Oxygen Scripting

Now you have access to some ready-to-use GitHub project templates and GitHub actions that allow you to automate scripts that will be triggered every time you push changes to your repository. The following templates are available for you to use for inspiration and learning:

Validation Script Improvements

Framework validation scenarios are automatically detected for OpenAPI, AsyncAPI, and JSON-LD. When these types of documents are validated, the validation scenarios that are associated with the document type are now automatically detected and used for the validation by default.

New Script for Generating JSON Schema Documentation

A new script (jsonSchemaDocGen.sh) is available to generate documentation from a JSON schema file using the command line. For more details, see Scripting Oxygen: JSON Schema Documentation.

New Script for Generating OpenAPI Documentation

A new script (openApiDocGen.sh) is available to generate documentation from an OpenAPI file using the command line. For more details, see Scripting Oxygen: OpenAPI Documentation.

Other

Impose a Content Type for an Element when Configuring Content Completion

When configuring the content completion proposals at framework level using the cc_config.xml configuration file, you can now force an element to have a content type imposed. This is done by using the new contentType attribute on the elementProposals and its possible values are: elementOnly, mixed, and empty.

Basic Editing Support and Syntax Highlights Added for Dockerfile Documents

Basic editing support and syntax highlights are now provided for working with Dockerfile documents.

Relative Paths in Framework Extension Script Files are Automatically Resolved

When using a Framework Extension Script file to customize a framework, relative paths listed in the script file are now automatically resolved relative to the location of the script file.

XQuery Trace Functions Now Presented in Results View

The output of the XQuery trace() functions that are used in XML refactoring actions for debugging purposes is now presented in the Results view at the bottom of the application.

Performance Improvements for XML Refactoring Operations

When processing XML refactoring actions that use the document function to load additional resources, the access to schemas that are referenced in the loaded documents is now cached to speed up the refactoring process.
Performance Improvements for XML Refactoring Operations

Component Updates

Apache Batik 1.16

Updated the Apache Batik toolkit to version 1.16.

Apache FOP 2.8

Updated the Apache FOP library to version 2.8.

Calabash 1.5.3-110

Updated the Calabash engine to version 1.5.3-110.

CSS Validator 20220105

Updated the W3C CSS Validator library to version 20220105.

DITA OT 3.7.4

The bundled DITA Open Toolkit version was updated to version 3.7.4.

Eclipse 4.27

Updated the Eclipse plugin to support version 4.27.

EPUBCheck 5.0.0

Updated the EPUBCheck tool used to validate EPUB resources to version 5.0.0. Also updated the schemas used to validate and provide content completion for XHTM5 documents using the latest schemas distributes with the EPUBCheck library version 5.0.0.

eXist 6.2.0

Oxygen has been tested against the latest eXist 6.2.0 server.

JSON-Java Package 20230227

Updated the JSON-Java (org.json) package to version 20230227.

macOS 13 (Ventura)

Oxygen has been fully tested on macOS 13 (Ventura) and it is now officially supported.

OpenJDK 17.0.6

The version of OpenJDK that is bundled with the installation kits for providing the Java Runtime Environment was updated to version 17.0.6 from Eclipse Adoptium.

SnakeYAML 1.33

Updated the SnakeYAML library to version 1.33.

TEI Schemas 4.5.0

Updated the bundled TEI schemas to version 4.5.0.

TEI Stylesheets 7.54.0

Updated the bundled TEI XSLT stylesheets to version 7.54.0.

Help System

Offline Help No Longer Available

The installation kits no longer include an offline user manual (only the online version of the manual can be accessed from the application). A new action is now available in the Help menu that opens the appropriate HTML page for downloading the User Manual. It is useful when your work environment restricts internet access and you need to view the User Manual.