Skip to content

Software we use: Oxygen XML Editor

Michaela Iorga edited this page Feb 2, 2024 · 1 revision

Oxygen XML Editor

Oxygen XML Editor is a tool for XML authoring and development. Tailored for beginners to experts, it's versatile, compatible across platforms, and available as a standalone app or Eclipse plug-in. Boasting robust support for XML technologies, it offers tools for easy creation, editing, and publishing.

Useful Plugins

  • Java Classes Generator
  • JSON Schema Documentation Generator
  • OpenAPI Tester
  • Oxygen Emmet Plugin
  • Oxygen Emmet Plugin
  • XSD to JSON Schema converter
  • XSpec Framework
  • XSpec Helper Viewer
Note: Plugins in Oxygen can be installed automatically or manually

Scenario Transformation Setup

This is an opinionated view, but Oxygen has a variety of configuration options for setting up a scenario for applying one or more XSLT transformations against a source document, a scenario for executing a XProc pipeline, and many more.

Below is how some of us use Editor Variables and other configuration elements. As a rule, some of us will use a variable for the source document and hard-code the path to the transform or XProc pipeline when running the scenarios interactively.

  1. Open the XSLT stylesheet you will use for the transform, for example nist-metaschema-COMPOSE.xsl.
  2. Open an input file for transforms in a XSLT stylesheet, like the oscal_ssp_metaschema.xml Metaschema module.
  3. Open the scenario menu or click the Ctrl+Shift+C keyboard shortcut.
  4. In the scenario menu, provide an appropriate name like nist-metaschema-COMPOSE.
  5. For the XML URL for the input file, use the variable ${currentFileURL}.
  6. For the XSL URL for the stylesheet, do not use a variable, but hard-code the path toe transform on the workstation like /path/to/code/repos/oscal/branches/origin/develop/build/metaschema/toolchains/xslt-M4/nist-metaschema-COMPOSE.xsl

image

This configuration will allow you to switch different inputs for testing while using the same stylesheet.

Clone this wiki locally