 ====================================
 Apache XMLSchema 2.2.4 Release Notes
 ====================================

This is the release of Apache XMLSchema 2.2.4.

XMLSchema is a lightweight schema object model that can be used to manipulate 
and generate XML schema representations. It has few external dependencies
and can be easily integrated into an existing project.

You are welcome to kick the tires and get XMLSchema on the move.  Any
contribution in the form of coding, testing, submitting improvements
to the documentation, and reporting bugs are always welcome.

This release fixes the following defects:

** Bug
* [XMLSCHEMA-53] - Illegal reflective access by org.apache.ws.commons.schema.utils.DOMUtil 


Thanks for your interest in XMLSchema!

- The XMLSchema Development Team (dev@ws.apache.org)

