This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

HL7 XML Validation Engine Manual

From HL7Wiki
Jump to navigation Jump to search

The HL7 XML validation engine is a Windows-based application that serves as a "test harness" for validating XML files. The test harness provides an environment in which individual file selections or "patches" of file selections can be validated using Xerces - a standard Java-based parser from the Apache Foundation.

The validation engine is based on previous application from Ramsey Systems of the UK. In its original form, the test harness supported a variety of different validators. The source code for the test harness was donated by Ramsey Systems, and has been placed in open source using the OHT license. If users wish re-extend the engine, should contact the HL7 Tooling Work Group.

Primary Window

When the HL7 XML Validation Engine, the opening screen scene at right is displayed. (Without, of course, the red and yellow annotations that are superimposed here.) The display is a standard Windows dialog, with a title bar and menus at top; a textual overview of the application the middle; entry boxes for the target files and target schemas; and execution buttons at bottom right.

Specifically:

  1. The application menus will be discussed in the following section
  2. The entry box for selecting the target files are displayed as a text box with a "Browse" button to the right. The file extensions for selected files selection will, by default, be any of "xml", "mif", and "coremif". When dealing with validation of HL7 V3 work products, these extensions cover almost all required files.
  3. The entry box for schemas, along with its "Browse" button are sensitive primarily to files whose extension is "xsd".
  4. The "checklist" in the lower left allows selection of three different releases of Xerces, although the first labeled "XERCES_2_11_0" is the most recent release.
  5. At lower right are two buttons to select for validation of:
    1. the selected schema alone, validated against the W3C schema specification; and
    2. the selected instance file, validated against the schema designated.
Newly started XML Validation Engine with notes

Menu Selections

XV03-MenuFile.gif
XV04-MenuOptions.gif
XV05-MenuReport.gif
XV06-MenuBatch.gif

The various menu options for this application are shown in the diagrams above.:

  • The File menu is primarily related to the definition of project data. Projects permit a limited amount of tailoring of the application, and had not been fully explored.
  • The Options menu provides for "tailoring" the application. Specifically:
    • the "Validator config" option permits the modification (by directory selection) of the third Xerces validator. (Manipulation of the other two Xerces entries his disabled.)
    • the "Schema locator config" option provides limited shortcuts to specific directories in the user space.
  • The Report menu allows the selection of the current error report (as a result of either a batch or a single file validation) to be saved as either HTML, or XML.
  • The Batch menu provides for the definition of a set of files to be validated in a batch; and for the execution of an existing batch file. These are considered in subsequent sections of this manual.

Validating a Single File

When the HL7 XML Validation Engine, the opening screen scene at right is displayed. (Without, of course, the red and yellow annotations that are superimposed here.) The display is a standard Windows dialog, with a title bar and menus at top; a textual overview of the application the middle; entry boxes for the target files and target schemas; and execution buttons at bottom right.

Specifically:

Example of Single File Validation
  1. The application menus will be discussed in the following section
    1. the selected instance file, validated against the schema designated.
Popup Indicating Java Execution
  1. The application menus will be discussed in the following section
    1. the selected instance file, validated against the schema designated.
Newly started XML Validation Engine with notes

Saving Validation Results

Creating Batch Validation Sets

Adding XML Instance Files to Batch

Adding Schemas to be Validated to Batch

Reviewing Batch Definition Content

Saving and Executing Batch Sets

Results from Batch Processing

Installation

The HL7 XML Validation application is delivered as a GForge download with package anem "XMLValidationEngine". The download is a single Microsoft installer (MSI) file. Installation has been tested on Windows XP, Vista, and Windows 7. By default, it will attempt to install in directory "Program Files\HL7\hl7XMLvalidation".

Owing to the fact that the program invokes Java-based parsing from the command line, it needs to create and read temporary files from the file system. In order to do so, it also creates a directory named hl7-XMLvalidation in the directory "[User]\Application Data" (in Windows XP) or "[User]AppData\Roaming (in Windows 7). (Note:If files accumulate in this directory, they may be deleted once the application is closed. A BUG report requesting that the application automatically delete these files has been posted on GForge, but was not implemented as of release 3.0.1.)

Updating the Xerces Release

Although the validation engine installer includes the latest Xerces release, it may be desirable to update that release prior to the next update of the application. The following figure shows the directory structure created by the installation, along with the files in the xerces-2_11_0 sub-directory.

Installation directories for HL7 XML Validation

With the exception of the five files that are highlighted in yellow or gray, all of the files in this directory are part of the standard download/distribution from the Apache Foundation site. In order to update the release, it is simply necessary to download the new Xerces release and replace the files in the designated directory with the updated ones. Although the old release number will continue to be displayed in menus and selection boxes, the validation itself will be performed with the new files, and the validation results will correctly indicate that the new release was used.