Smooks is an extensible framework for building applications for processing XML and non XML
data (CSV, EDI, Java etc) using Java.
While Smooks can be used as a lightweight platform on which to build your own custom processing logic for a wide
range of data formats, "out of the box" it comes with some very useful features that can be used individually,
or seamlessly combined together: