What's New in Oxygen XML Editor 25.1
Oxygen XML Editor version 25.1 is a minor release of the
industry-leading bundle of tools for content authors, developers, collaborators, and
publishers. This latest version offers both enhancements to existing functionality as well
as some brand new features that were requested by the community.
Some of the highlights of this release include various productivity improvements for
DITA authors and new possibilities for DITA publishers
who produce either CSS-based PDF or WebHelp output. 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.
DITA Authoring
Support for Branch Filtering in Validate and Check for Completeness
Operations
The Validate and Check for Completeness action that is used to
validate DITA maps was enhanced with initial support to process branch filtering
(<ditavalref>
elements) during the operation.
DITA Maps Manager's Context Drop-down Menu Reorganized
The Context map drop-down menu in the DITA Maps Manager was
reorganized to improve the grouping of the contexts from DITA-OT projects that are set as
Main Files.
Option to Hide Irrelevant Contexts in DITA Maps Manager
A new option (Only display items related to currently open maps in the
Context drop-down list) was added in the DITA / Maps
preferences page and it can be activated to hide irrelevant contexts in the
Context map drop-down menu in the DITA Maps Manager. It is especially
helpful if you are working with multiple DITA-OT projects and DITA maps set as
Main Files since it helps you narrow down the relevant
contexts.
New Action to Choose Context from Main Files
A new action (Choose context from main files) is now available
in the Choose context root map drop-down menu in the DITA Maps Manager.
It can be used to search for a context in the DITA maps and the DITA-OT project files that
are set in the Main Files folder.
DITA Map Metrics Report Improved
Oxygen includes a Generate Metrics Report action on the DITA
Maps Manager's toolbar that creates a metrics report with useful statistics for the
current DITA map. The visual appearance of the resulting report was improved to make it
easier to read, and the table of contents panel on the left side now remains stationary
allowing you to scroll through the report while keeping the TOC visible.
Better Filtering Options for the DITA Reusable Components View
A new filtering option (named Show only keys with closest relative key
scope) is available in the settings menu within the Keys and
Media tabs of the DITA Reusable Components view. It filters the
presented keys to only show the relative key references that have the closest relative key
scope path to the current context (it hides the fully qualified key scope paths). This
toggle option can be combined with any of the other filtering options.
Validate a Topic in the Current Key Scope Context
When topics are opened from the DITA Maps Manager view in a
certain key scope context, the key references and content key references within the topic
are validated according to the particular context of the key scope.
APIs to Resolve Key Reference From XSLT Stylesheets or Schematron Schemas
Some
APIs were added that retrieve information about DITA keys
that are referenced within a topic. The
APIs can be called from XSLT Stylesheets (including XML Refactoring operations)
or Schematron schemas.
Performance Improvements for Large DITA Maps
Various performance and validation improvements were implemented for situations
when editing DITA maps with peer map references used for cross-deliverable
links.
XML Refactoring Action to Change/Remove Profiling Attribute Values Now Updates
DITAVAL Files
The XML Refactoring action Change or remove profiling attribute
value now also modifies the value in DITAVAL filter files, as well as in DITA
maps and topics.
Option to Index Only Files Marked as Resource-Only in the Context DITA Map
A new setting (Only index files referenced in the context DITA map and
set as resource-only) was added in the Open/Find Resource
preferences page to only index the resources that are referenced in the context DITA map
and set as "resource-only". This setting is useful when you have a very large number of
topics, to restrict the indexing to only the resources from the main DITA map and thus to
speed up the computation of the reusable components displayed by the DITA Reusable
Components view in the Components tab.
DITA Publishing
Embed Videos in Your PDF Output (EXPERIMENTAL)
For CSS-based PDF transformations, it is now possible to embed videos
(
mov,
mp4,
m4v) that your readers can
watch directly in your published PDF documents by referencing them from within your HTML
or XML documents. For details on how to do this, see
Oxygen DITA-OT CSS
Publishing to PDF: Videos.
Display Line Numbers in Codeblocks
For CSS-based PDF transformations, it is now possible to display line numbers
in codeblocks by setting the
@outputclass
attribute on the
<codeblock>
elements to the
show-line-numbers
value. For more details, see
How to Add Line Numbering in Code Blocks.
Display Whitespace Characters in Code Blocks
For CSS-based PDF transformations, it is now possible to display a visual
representation of whitespace characters in code blocks. You can do this by setting the
@outputclass
attribute on the
<codeblock>
elements to the
show-whitespace value. For more details, see
How to Display Whitespaces in Code Blocks.
DITA-OT Project File Transformation Error Reporting Improved
The information, warning, and error messages that are presented in the
Results pane if issues are detected when publishing a DITA-OT Project
file were improved. For example, the messages now contain the ID of the
deliverable.
Control the Behavior of Footnotes
For CSS-based PDF transformations, a new transformation parameter
(args.css.param.clone-referenced-footnotes
) is available to control the
behavior of footnotes. When set to yes, footnotes that are referenced
multiple times throughout a publication are cloned and placed at the bottom of the page
for each occurrence. Otherwise, only the first footnote reference is placed at the bottom
of the page and subsequent references point back to the original footnote.
Author Visual Editing
Improved Content Completion for Element Values
A schema or an Oxygen content completion configuration file may define a set of
values for an XML element. The content completion mechanism in Author mode now
allows you to insert any number of values from that set by re-triggering the list of
content completion proposals and filtering out the proposals that were already
inserted.
Set the Default Schema Using the Framework Extension Script
If an XML document does not specify a DTD or a schema, it is still possible for
Oxygen to determine a default schema or DTD to use for validation and content completion
if it is specified by an Oxygen framework that matches the respective document. A document
framework can also be defined with an Oxygen
Framework Extension Script file and it is now possible to specify the default
schema or DTD for that framework directly in these files.
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.
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.
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.
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.
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.
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
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
Updated Saxon XSLT and XQuery Transformer Add-on for Saxon 11
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.
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).
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
New Script for Generating 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.
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 distributed 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.