XML Hammer Features

The XML Hammer application allows to open, change and run multiple projects. Four different types of projects can be specified, the Transformer project can be used to run XSL Transformations, the Parser project can be used to parse and validate XML files, the Schema validator project is used to validate Schemas and the XPath search project is used to search XML files using XPath.

XML Input

The XML Input page allows to select the XML files that are used as input for the project. The XML files can be either specified one at a time or a filter can be used. The filter allows to filter the input files in the current directory, optionally allowing to recurse through sub directories, using wild-cards or regular expressions.

XML Parser

The XML Parser project can be used to parse and validate XML documents. It is possible to specify whether to use a DOM builder or a SAX parser and whether this builder/parser is validating and/or XInclude-aware or Namespace-aware. To validate the XML, a schema language can be selected and schema documents can be associated.

The project properties or application preferences can be used to set the Document Builder, SAX Parser Factory and/or Schema Factory and specify the features, attributes and properties associated with these factories.

The resulting errors and warnings are grouped together by input XML document, opening an error or warning makes it possible to see all the specific exception details.

XSL Transformer

The Transformer project can be used to transform XML documents using either the associated stylesheet(s), use a default transformer to format the input document or specify specific stylesheets. Parameters and Ouput Properties can be specified for any of these configurations.

Besides being able to specify Transformer specific options, it is also possible to specify XML Parser specific properties.

The project properties or application preferences can be used to set the Document Builder, SAX Parser Factory, Schema Factory and Transformer Factory and specify the features, attributes and properties associated with these factories.

Any errors, warnings and messages generated during the transformations are grouped together by input XML document, opening an error, warning or message makes it possible to see all the specific details.

XPath Search

The XPath project can be used to search XML documents using a XPath expression.

Besides being able to specify XPath search specific options, it is also possible to specify XML Parser specific properties.

The project properties or application preferences can be used to set the Document Builder, SAX Parser Factory, Schema Factory and XPath Factory and specify the features, mappings, attributes and properties associated with these factories.

Any errors, warnings and XPath results generated during the transformations are grouped together by input XML document, opening an error, warning or XPath result makes it possible to see all the specific details.

Schema Validator

The Schema Validator project can be used to validate Schema documents. It is possible to specify the schema-language.

The project properties or application preferences can be used to set the SAX Parser Factory and Schema Factory and specify the features and properties associated with these factories.

The resulting errors and warnings are grouped together by input Schema document, opening an error or warning makes it possible to see all the specific details for that error or warning.

Sample Java Output

Sample Java output is generated for any specified configuration. This sample Java can be used as a start for a JAXP based application, or just as an example of how the current configuration could be specified using JAXP and Java.

Project Properties

Properties can be specified for every project, the properties that can be specified are factory specific features, properties, mappings and attributes. The project specific properties can override the global application preferences.

XML Hammer Preferences

The global XML Hammer Preferences can be used to provide default values for project specific Properties, specifying factory specific features, properties, mappings and attributes but the Preferences can also be used to specify other application global information, like specifying the class-path.