A perl script using the autodia modules to create uml class diagrams or documents. from code or other data sources.
AutoDia takes source files as input and using a handler parses them to create documentation through templates. The handlers allow AutoDia to parse any language by providing a handler and registering in in autodia.pm. The templates allow the output to be heavily customised from Dia \s-1XML\s0 to simple \s-1HTML\s0 and seperates the logic of the application from the presentation of the results.
AutoDia is written in perl and defaults to the perl handler and file extension matching unless a language is specified using the -l switch.
AutoDia requires Template Toolkit and Perl 5. Some handlers and templates may require additional software, for example the Java \s-1SDK\s0 for the java handler.
AutoDia can use GraphViz to generate layout coordinates, and can produce di-graphs (notation for directional graphs) in dot (plain or canonical) and vcg, as well as Dia xml.
Helpful information, links and news can be found at the autodia website - http://www.aarontrevena.co.uk/opensource/autodia/