Welcome to AXgen  
  AXgen is a code generator using XMI as input and Velocity templates for transformation. Searching Sourceforge for "generator" or "XMI" results a list of more then 25 projects dealing with code generation. You may ask yourself why there is the need for another generator.  
  The power of AXgen is it's simplicity. You do not need to understand the complex structure of the XMI file or to write complicated XSLT stylsheets. AXgen accesses the model metadata through an UML abstraction layer with implementations based on Nsuml or NetBeans MDR providing an objectoriented view to the model. Consequently, AXgen is easy to use without restricting flexibility.  
  Further AXgen makes use of Jakartas Velocity. Velocity is a very sophisticated Java-based template engine. This means that inside your templates you can call Java methods. Feel free to write templates that generate anything you want.  
  Our motivation to develop AXgen was to generate Java Classes and other artefacts for use with an O/R Mapping tool that allows transparent persistence for Java Objects against relational databases. Therefore AXgen comes with a bundle of ready to use templates for generating ObJectRelationalBridge (OJB) specific stuff like:
  • Entity Classes
  • XML Repository
  • SQL script to build the DB scheme
 
  Main features of AXgen  
  AXgen consists of three major parts:
  1. An UML abstraction layer. Providing it's own abstraction layer, AXgen is independent of a specific UML implementation. Currently Nsuml and NetBeans MDR are supported. Furthermore, AXgen can merge several models referencing one another with the UML abstraction layer resolving the references online.
  2. An ANT task used to perform generation.
  3. A set of templates and predefined configurations to generate OJB artefacts. If you want to use OJB and model your entities with an ULM case tool, AXgen is made for you.