DimDom
DimDom fully separates web site design from code by providing a semi-intelligent engine that merges a XHTML compliant template with the DimDom commands provided in a very simple Java class. The DimDom engine processes those nodes of the template that are specified with the common "id" attribute. Therefore, no code at all is in the template itself. The engine is very flexible: It supports different skins as well as different command classes, dynamic template reloading and the processing of templates structures within the template, so-called "micro-templates".