1. Overview of MiST Engine

MiST Engine stands for Minimal String Template Engine. It is a lightweight system that allows to generate data based on special templates and on the values of parameters these templates refer to.

In the most simple case, these templates are little more than just documents with holes where the engine sticks appropriate data. Each hole, or placeholder, has a name and can be assigned one or more values (or even none at all). A more complex template can refer to other templates (subtemplates) - this is as if the subtemplates were substituted to the corresponding location in the template.

MiST Engine makes no assumptions about what the templates and the data to stick in are intended for. The templates define how the resulting document (a string, actually) will look like. The same data passed to the different sets of the templates results in different output documents. That is, the templates define the view of the data.

For example, suppose we have statistical data about how many people visited a particular web site each day of a given period of time. A set of templates may allow us to arrange this information, say, in a table on a HTML page. If we apply another set of templates to the same data, we could prepare a simple report in a plain text format, and so on.

A description of various aspects of template processing can be found here: http://en.wikipedia.org/wiki/Template_processor.

There is a number of string template engines of various kinds existing today. Some of these may be much more powerful than MiST Engine. Still, MiST Engine has its niche.

Key features of MiST Engine:

The core parts of MiST Engine are used in Template–to–Code (T2C) system that facilitates development of parameterized tests and uses template-based techniques to generate the source code of the tests as well as other necessary files.

The latest stable version of MiST Engine as well as the development versions can be found at Template–to–Code project site at SourceForge.net