Benchmark Editor

Current Status: Benchmark Editor is no longer actively maintained and has some known issues when processing the latest Open Vulnerability and Assessment Language (OVAL®) schemas, and therfore has been moved to Archive Status.

For those interested in a free tool for creating SCAP content we recommend MITRE’s actively maintained Recommendation Tracker™, which uses a wizard-like interface to create Extensible Configuration Checklist Description Format (XCCDF) and OVAL content.


Benchmark Editor™ (See status note above.)

Main Screen High-Level Editing Window (click to enlarge)

Main Screen High-Level Editing Window (click to enlarge)

Free for public download and use, Benchmark Editor is a Java-based tool that enhances and simplifies the creation and editing of benchmark documents written in standard languages such as Extensible Configuration Checklist Description Format (XCCDF) and Open Vulnerability and Assessment Language (OVAL™).

Benchmark Editor helps authors:

  • Gain an overall understanding of a benchmark's structure
  • Navigate a benchmark's contents
  • Understand how a change will propagate through a benchmark
  • Mitigate the difficulties of learning the various benchmark languages


Use of languages such as XCCDF and OVAL to write benchmarks often results in large, complicated XML documents. This makes creating and editing difficult, complicating the development of automatable security guidance.

Benchmark Editor solves these problems by dividing benchmarks into logical elements, displaying this information in an easy-to-understand manner, and allowing for authoring and editing without extensive knowledge of XML or the languages.


Logical Elements Displayed in a Hierarchical Tree

Benchmarks can be divided into logical elements such as XCCDF Rules and OVAL Definitions that can relate to each other through complex, many-to-many relationships. Benchmark Editor shows these relationships clearly by arranging elements in hierarchical trees that reflect the structural (physical layout within a file) or logical (references) relationship of elements. The trees can then be used for direct drag-and-drop editing of a benchmark and to aid in navigation.

Clearly Defined Relationship Chain

Benchmark Editor tracks the complete relationship chain of references between all logical elements and displays it in a special window so that authors can understand how a given change will impact individual relationships as well as the overall functioning of the benchmark.

Creation and Editing of Logical Elements without XML

Benchmark Editor lowers the technical threshold for authoring and editing with a High-Level Editing Window that allows users without extensive knowledge of XML or benchmark language schemas to create, view, and edit logical elements using fields organized into a simple structure. The structure of the XML is abstracted and the High-Level Editing Window automatically ensures that the content produced by Benchmark Editor conforms to the appropriate schemas.

Schema Neutrality

Both XCCDF and OVAL are living languages continually evolving to meet the needs of the benchmarking community, and other languages may be developed in the future. To address this, Benchmark Editor employs complete schema neutrality. It does not hard-code any information about the structure of the languages but instead reads their appropriate XML schemas along with small auxiliary files, called metafiles, and uses them to construct a template of the language. With this template the tool can parse, organize, and present the contents of a benchmark. Any changes to a schema will require, at most, a slight change to the metafile. This allows Benchmark Editor to remain continuously usable even as benchmark languages evolve.

Quickly Locate Preexisting Content

The Benchmark Editor can quickly search all loaded content using simple text searches, regular expressions, and XPath searches. Searches return logical elements that can be incorporated into references. This allows authors to quickly locate and re-use existing content.


Benchmark Editor is released free of charge under the OpenBSD license.

Source and Binaries
Please see for all archived source, binaries, and documentation.


Please send comments or questions to

Page last updated: September 8, 2011

Back to top