Oxygen XML Editor
Oxygen XML Editor is a cross-platform XML authoring and development tool developed by SyncRO Soft SRL, a Romanian software company founded in 1998 with expertise in XML technologies and single-source publishing.[1] It serves as a comprehensive suite for editing, validating, transforming, and publishing XML documents, supporting all major XML schema languages including DTD, XML Schema, Relax NG, and Schematron.[2] Designed for users ranging from beginners to experts, it features intelligent content completion, visual editing modes (Text, Grid, and Author), and integration with frameworks like DITA, DocBook, XHTML, and TEI.[2] The software is available in multiple editions to cater to different needs: the full Oxygen XML Editor (in Enterprise, Professional, Academic, and Personal variants) for advanced editing and development; Oxygen XML Author for visual XML authoring; Oxygen XML Developer for specialized development tasks; Oxygen JSON Editor for JSON handling; and Oxygen Web Author for browser-based collaboration.[3] Key capabilities include single-source publishing to formats such as PDF, ePUB, and HTML; debugging for XSLT, XQuery, and XProc; connectivity to XML databases, CMS systems, and WebDAV; and extensibility through plugins and frameworks.[2] It runs as a standalone application, an Eclipse plugin, or in web environments, ensuring versatility across Windows, macOS, and Linux platforms.[2] Notable enhancements in recent versions, such as the 27.1 release in March 2025, include AI-powered features like the Positron Assistant for content generation and editing assistance, alongside improved support for large files and security protocols.[4] With a large customer base encompassing universities, Fortune 500 companies, and Nasdaq 100 firms, Oxygen XML Editor has established itself as an industry-leading solution for XML workflows.[1]History and Development
Founding and Early Versions
Syncro Soft SRL was founded in 1998 in Craiova, Romania, by George Bina and other developers with a primary focus on creating tools for XML technologies and single-source publishing.[1][5] The company, initially known as Syncro Soft Ltd., aimed to address the growing needs of XML developers through innovative software solutions, leveraging Romania's emerging tech ecosystem.[1] The first public release of Oxygen XML Editor, version 1.0, occurred on April 15, 2002, introducing a basic XML editor built on a Java-based architecture that ensured cross-platform compatibility with Windows, macOS, and Linux.[6][7] This initial version provided essential text-based editing capabilities along with validation against Document Type Definitions (DTDs) to check for well-formed and valid XML documents.[6] Early evolution continued with version 2.0, released on April 2, 2003, which added support for XSLT transformations, enabling users to process and style XML documents more effectively.[8] Building on this, version 3.0 launched on January 14, 2004, incorporating full Unicode support to facilitate international XML workflows and handling multilingual content robustly.[4] These updates solidified Oxygen's position as a versatile tool for XML development during the mid-2000s.[9]Release Cycle and Milestones
Oxygen XML Editor follows a structured release cycle consisting of annual major versions, typically released in October or November, followed by minor updates around March or April, and periodic maintenance builds to address bug fixes and minor improvements.[4] For example, version 27.0 was released on November 27, 2024, as the latest major release, while version 27.1 followed on March 24, 2025, providing incremental enhancements.[10][11] This pattern ensures regular delivery of significant new features in major releases, with minors focusing on refinements and compatibility updates.[4] Key milestones from 2010 onward highlight the evolution of editing capabilities. Version 9.0, released in 2007, introduced the Author view, enabling visual editing for non-technical users. Version 10, released in 2008, brought enhancements such as schema-aware debugging for XSLT 2.0 and XQuery. Version 16, launched on May 20, 2014, provided full support for DITA, including advanced table property editing and integration with the DITA Open Toolkit.[12] In 2018, version 20 on March 16 integrated JSON editing, expanding support for non-XML formats alongside XML workflows.[8] More recently, version 26 on October 11, 2023, added the AI Positron Assistant add-on, leveraging artificial intelligence for content assistance and validation.[13] Specific timeline highlights include version 24, released on October 18, 2021, which improved XQuery profiling with detailed reports for performance optimization.[14] Version 25 in October 2022 enhanced EPUB publishing tools, streamlining output generation for digital books.[15] Version 27.1 on March 24, 2025, introduced history and blame features in the DITA Maps Manager, allowing users to track changes and modifications via Git integration.[11] The end-of-life policy supports each major version for approximately three years from its general availability date, including maintenance until the end of maintenance milestone and help desk support until end of support.[16] For instance, version 24 reached end of support on November 27, 2024, after which no further technical assistance is provided, though the software remains usable.[16] This policy ensures long-term stability while encouraging upgrades to access ongoing innovations.[16]Core Editing Features
XML Editing Views
Oxygen XML Editor provides three primary editing modes for XML documents: Text, Grid, and Author views, each tailored to different user needs and workflows. These views enable users to manipulate XML content in raw code, structured tables, or visual formats, respectively, while maintaining document integrity through integrated features like validation.[17] The Text view serves as the default interface for raw XML editing, offering a syntax-highlighted code editor that color-codes elements, attributes, and text to enhance readability. It includes the Content Completion Assistant for intelligent auto-completion of tags, attributes, and values based on associated schemas, helping to ensure content remains valid during entry. Additional functionalities encompass search and replace operations across the document, code folding to collapse expandable XML sections for easier navigation of complex structures, and support for Unicode and XPath expressions, making it suitable for developers performing precise markup adjustments. In version 27.1 and later, AI-powered actions such as Annotate Code allow automatic addition of XML comments to documents like XSLT, Schematron, and XSD files using the Positron Assistant.[18][4] In contrast, the Grid view presents XML in a table-based layout resembling a spreadsheet, ideal for editing repetitive or structured data without directly interacting with markup. This schema-aware mode displays elements as nested, expandable tables, with drag-and-drop support for reorganizing nodes and cell-level validation to enforce schema constraints in real time. Users can insert, delete, or sort rows and columns efficiently, and the view integrates with the Content Completion Assistant to suggest required elements automatically, streamlining data entry for large datasets.[19] The Author view offers a WYSIWYG (What You See Is What You Get) editing experience, rendering XML content visually with CSS styling to mimic the final output, which is particularly beneficial for non-technical users focused on content creation rather than code. It supports drag-and-drop insertion of elements, smart paste mechanisms that adapt content to the schema, and content templates via the Content Completion Assistant to guide structured authoring. In version 27.1, the Content Completion Assistant in Author mode has been enhanced for better support of required content insertion, and new AI features include the Formula/Equation action, which generates MathML equations using the Positron Assistant based on natural language descriptions. Features like image maps, media embedding, and tag visibility controls allow for intuitive manipulation, while preset and alternate CSS styles ensure consistent presentation across edits. The Positron Assistant provides AI-powered editing assistance, such as content generation and review of proposed changes before saving.[20][4] Seamless switching between Text, Grid, and Author views occurs via dedicated tabs at the bottom of the editing pane, with actions like undo/redo shared across modes for consistent workflow management. The Outline view complements these interfaces by providing a hierarchical overview of the XML structure, synchronizing in real time with edits in any mode—such as highlighting selected nodes or updating on content changes—to facilitate quick navigation and structural modifications. Validation feedback, including error highlights and tooltips, integrates across views to alert users to issues during editing.[19][21]Schema-Driven Editing and Validation
Oxygen XML Editor provides schema-driven editing and validation to ensure XML documents conform to defined structures, leveraging various schema languages for robust enforcement during authoring. It supports validation against Document Type Definitions (DTD), XML Schema Definition (XSD), Relax NG (RNG), Schematron, and NVDL schemas, enabling comprehensive checks for syntax, structure, and business rules directly within the editing environment.[3][7] A key feature is as-you-type validation, which performs real-time error detection and highlighting as users edit XML content, marking invalid elements or attributes with visual cues such as red underlines or borders to indicate non-conformance with schema constraints. This is complemented by a schema-driven Content Completion Assistant that proposes valid elements, attributes, and values based on the associated DTD, XSD, Relax NG, or NVDL schema, including required items and documentation hints to guide accurate input. Quick fixes are integrated to resolve common issues, such as adding missing attributes or correcting invalid references, accessible via tooltips, contextual menus, or keyboard shortcuts like Alt+1, with proposals dynamically updating after document changes. In version 27.1, a new Fix Validation Problems action uses AI to suggest and apply fixes for validation issues via the Positron Assistant.[22][23][24][4] For schema development, Oxygen includes dedicated editors for XSD and Relax NG files, featuring graphical diagram views that synchronize with the source code for visual design and analysis. The XSD editor offers Full Model and Logical Model diagrams, allowing in-place editing, component expansion, and highlighting of references, while the Relax NG editor provides a side-by-side source-diagram interface with intuitive symbols for patterns. Refactoring tools support renaming components across files or projects with impact previews and flattening schemas to consolidate imports, enhancing maintainability without manual propagation of changes.[25][26] Advanced validation capabilities extend beyond real-time checks, including batch validation of multiple documents or entire projects via the Document > Validate menu, which compiles all errors in the dedicated Errors tab for systematic review. Custom validation rules can be implemented using Schematron, allowing assertion-based checks for complex business logic integrated with XSD or Relax NG schemas. Oxygen also handles XInclude for modular documents, resolving inclusions during validation to ensure consistency across referenced files without disrupting the editing workflow. In version 27.1, validation has been improved with better XProc error messaging and support for XProc 3.1 schemas in content completion and validation.[27][28][29][4] These mechanisms are particularly evident in schema-aware views like the Grid editing mode, where input fields and structures are dynamically generated from the schema to enforce constraints visually.Specialized Content Support
XML Frameworks and Formats
Oxygen XML Editor provides built-in frameworks for several industry-standard XML vocabularies, enabling specialized editing, validation, and transformation capabilities tailored to each format. These frameworks leverage the editor's Author mode for visual, WYSIWYG-like editing, along with schema-driven content completion and contextual actions to streamline authoring workflows.[30] For DITA (Darwin Information Typing Architecture), Oxygen offers comprehensive support for topic-based authoring, including full editing of maps, topics, and ditamaps. Key features include conref (content reference) management, which allows reusable content modules via direct or indirect references, with the Reusable Components view facilitating easy insertion and updates.[31] The editor integrates the DITA Open Toolkit (OT) for validation, building, and publishing projects, detecting connections between DITA resources and supporting conditional processing through profiling attributes to filter content based on audience, product, or platform.[32] Authors can push content updates via conref push mechanisms and use keys for conkeyref to reference elements across topics.[33][34] DocBook support in Oxygen includes WYSIWYG editing in Author mode, driven by CSS stylesheets for a visual presentation, with framework-specific toolbars for actions like inserting sections, lists, tables, images, and multimedia.[35] Entity resolution is handled through XML catalogs to manage external references, ensuring seamless validation and content completion based on DocBook schemas.[36] Transformation presets are provided via built-in XSL stylesheets for converting DocBook to HTML, PDF, or PostScript, including support for MathML rendering and CALS/HTML table operations such as joining or splitting cells.[35] Similarly, TEI (Text Encoding Initiative) editing benefits from included DTDs, XML catalogs, and XSL stylesheets for immediate setup, with Author mode offering WYSIWYG capabilities and toolbars for text emphasis, image insertion, and table management.[37] Entity resolution via catalogs supports complex TEI structures, while predefined templates and transformation scenarios enable outputs to PDF, XHTML, or EPUB.[38] Specific actions in the TEI menu and contextual menus assist with elements like discontinuous selections for multi-range editing.[39] Oxygen also supports other XML formats with dedicated features. For XHTML, the Author mode provides visual editing akin to a word processor, with content completion and actions for inserting images in formats like GIF, JPG, PNG, and SVG.[40][41] SVG editing integrates the Apache Batik library for rendering and validation via XML catalogs, including a standalone viewer and preview pane for XSLT-generated graphics.[42] WSDL (Web Services Description Language) editing features schema-driven content completion, a specialized Outline view for structure navigation, and refactoring tools, though it primarily uses text-based editing with SOAP schema integration.[43][44] Custom frameworks can be configured in Oxygen using CSS for visual styling in Author mode and XSLT for custom actions or transformations, allowing users to extend support for proprietary or specialized XML vocabularies.[30] Across these frameworks, features like profiling attributes in DITA and reusable content modules promote modular authoring and conditional content handling.[31]Non-XML and Hybrid File Editing
Oxygen XML Editor provides robust support for editing JSON documents through specialized views that enhance productivity beyond traditional text editing. The editor offers a Text mode with syntax highlighting, content completion, and formatting actions such as pretty-printing to improve readability. Additionally, a Grid mode presents JSON data in a tree-based, tabular structure, allowing users to expand and collapse nodes for intuitive navigation and editing of nested objects and arrays. An Author mode enables visual editing with contextual actions, while schema validation against JSON Schema ensures structural integrity during authoring. Querying capabilities include XPath-like expressions for extracting data, and built-in transformations support converting JSON to XML or HTML via XSLT or XQuery.[45][46] For YAML files, Oxygen includes a dedicated editor with syntax highlighting that recognizes key elements like scalars, sequences, and mappings, along with customizable color schemes for tokens. Validation is performed against associated JSON Schemas, providing real-time error detection for well-formedness and compliance. Editing features encompass auto-completion for keys and values, outline views for document structure, and folding for collapsible sections to manage complex hierarchies. Markdown support extends this with a text editor featuring live preview panels that render content in real-time, syntax highlighting for elements like headers and lists, and validation against custom Schematron rules applied to converted HTML output. Publishing options allow transformation to formats such as WebHelp or PDF directly from Markdown sources.[47][48] Hybrid editing workflows in Oxygen facilitate handling files that mix XML with embedded non-XML content, such as JSON payloads in REST API specifications. Users can edit these embedded sections inline using the appropriate specialized views, like switching to Grid mode for JSON within an XML context, while maintaining overall document validation. Diff and merge tools support comparing changes across hybrid files with multiple algorithms, including three-way merges for collaborative revisions, ensuring accurate tracking of modifications in mixed-format documents.[49][50] Conversion utilities streamline interoperability between formats, with built-in tools for transforming XML to JSON and vice versa, preserving hierarchical structures and attributes for applications like API development. These include batch processing for multiple files, generation of sample instances from schemas, and bidirectional YAML-to-JSON conversions to support diverse data exchange needs.[51]Transformation and Publishing Tools
Document Transformation Scenarios
Oxygen XML Editor provides built-in and custom transformation scenarios to facilitate the processing of XML documents through various engines, including XSLT, XQuery, and FOProcessor.[52] Built-in scenarios are preconfigured for common operations such as XML to HTML via XSLT or XQuery updates, while custom scenarios allow users to define inputs like XML source files and stylesheets, along with output mappings to specified directories or files.[53] Parameter passing is supported through a dedicated tab in the scenario configuration dialog, where users can set key-value pairs that are injected into the transformation engine, enabling dynamic control over processes like variable substitution in XSLT stylesheets or XQuery modules. Input and output mapping further refines these setups by allowing editor variables, such as${currentFileURL} for the active document or ${outputdir} for result placement, ensuring flexible handling of file paths across transformations.[54]
Batch processing in Oxygen XML Editor enables the application of transformation scenarios to multiple files or entire directories without opening each one individually, primarily through the Project view.[55] Users select files or logical folders, then configure scenarios via the contextual menu, supporting both single-scenario batches and multiple scenarios per item, with editor variables automating input/output adjustments for each file.[55] Logging occurs in the Information view, which captures timestamped status messages, progress updates, and completion details for the entire batch.[56] Error handling is integrated via this view, displaying failure notifications and partial results, allowing users to identify and address issues like invalid inputs or engine exceptions without halting the overall process.[56]
XProc support in Oxygen XML Editor allows for pipeline orchestration, where complex workflows combine multiple steps such as validation, transformation, and filtering into a single script.[57] Scenarios for XProc are configured similarly to XSLT or XQuery, specifying the pipeline script as input and defining parameters for ports and options to chain operations like sequential XSLT applications or integrated database queries.[52] The bundled Calabash engine executes these pipelines, with results viewable per output port, and batch execution extends this to directories for scalable orchestration.[57] Version 27.1 added support for XProc 3.1 schemas, improved error messaging, and AI-enabled XSLT stylesheets within pipelines.[11]
Integration with external engines enhances transformation capabilities in Oxygen XML Editor, particularly through add-ons and preferences. For XSLT and XQuery, the Saxon transformer add-on installs versions such as Saxon 12.4, selectable in scenario configurations to leverage advanced features like higher-performance processing over the built-in engine.[58] Antenna House integration for FOProcessor is configured via preferences, where users specify the executable path (e.g., AHFCmd.exe) and environment variables, enabling its use in scenarios for handling complex formatting operations within batch or single-file transformations.[59] Transformation errors from these engines can be debugged using the built-in profiler for tracing execution paths.[52]