Prometheus Bulk Validator

The Bulk Validator will validate combinations of XML instances against several types of schemas: XML Schema, ISO Schematron, Schematron 1.5, and RELAX NG. It can also perform XSLT transformations. There are three panels in the application, listed below from top to bottom:

  • A tree of schema files or XSLT transformations
  • A list of XML instance files
  • Validaton output

Prometheus Bulk Validator screen shot

Validation is done by dragging onto the tables schemas and instance files. The application allows the user to arrange the schemas in a tree structure. This is useful where there are multiple schemas that an instance document must adhere to, and maybe one is a broader version of another. If the broader version fails validation, the more specific version will too.

Bulk Validator will validate instance/schema pairs once the “run” button is clicked. You can click on an instance/schema pair to see the validation results.


NOTE: Instructions on this page refers to the files eStabilityValidator*.jar and BulkValidatorEngine*.jar. The asterisk (*) is only a placeholder for your version of the jar files, and not intended to be a part of the file names.

  1. Download and extract the zip file for your operating system. There should be the following files: eStabilityValidator*.jar, BulkValidatorEngine*.jar, and a lib directory. The lib directory contains all third-party libraries used by BulkValidatorEngine*.jar. If you keep BulkValidator*.jar and the lib directory in the same parent directory, you will not need to specify any classpaths.
  2. To launch the desktop application, double click the eStabilityValidator*.jar file. The application does require Java to be installed on your system. Mac users: Launching the app via double click does not currently work. You must launch it via the Terminal. Navigate to the directory the downloaded files are, and type:
    java -XstartOnFirstThread -jar eStabilityValidator*.jar
  3. From your file browser, drag schema files (to be validated against) into the first panel, and drag XML instance files (to be validated) onto the second panel from the top. ISO Schematron schemas must end in .sch, Schematron 1.5 schemas must end in .sch15, RELAX NG must end in .rng, and XML Schemas must end in .xsd. XSLT files end in .xml if they are to be treated as instance files, and must end in .xslt or .xsl if you want them to transform instance files. You can also drag-and-drop a directory (or directories) onto the window and all files contained in the directory will be recursively processed. If an unrecognized file type is detected, you will be asked if you would like to add it anyway.
  4. The validation of all schema/instance pairs will begin once the “Run” button is pressed. The progress bar will notify you when the validation is complete. Once complete, you can view the results from a XML instance & schema validation by clicking on a row in the schema table and a row in the instance table (at least one row from each table needs to be selected). The output is displayed in the bottom text panel.
  5. The desktop application includes a bundled schema set, for the FDA’s eStability format. A schema set is a collection of schemas that can be instantly loaded using the user interface. To load the eStability schemas, select the eStability > Load eStability Schema Set menu item. The Schema panel of the user interface will be instantly populated.

The Prometheus Bulk Validator by Prometheus Computing, LLC is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Component License
isorelax.jar MIT
jing.jar Jing license
jruby-complete*.jar EPL 1.0, GPL 2 and LGPL 2.1
saxon9he.jar Mozilla Public License version 1.0
substance.jar BSD
Xerces Apache License 2.0