webmacro templating engine

webmacro is the templating engine that is used by node to render the documents that it generates.

The java API to the node and mirror frameworks has been optimised to make it easy to write relatively complex operations in quite a concise manner which leads to templates that have as much of the "coding complexity" as hidden away as possible.

The current approach to rendering a page follows the idea of a nested tree of regions as mentioned on Grid Systems where we have a default set of templates defined for a "generic page", but any actual page implementation can override these definitions as required and then the resulting set of template is rendered. This let you inject custom layout and styles at any point in the hierarchy and have the customisations inherited by pages within a given sub-tree of the URL structure.

The end result of this is that it is possible to describe and extend templates quickly and with the minimum of re-implementation. node and InForm come with a default template implementation for every included functionality, but any of these can be overridden as required.