Creating Wizard Output Templates

The Wizard Markup Language (WIZML) enables the customization of files produced by the wizards. WIZML is used inside the templates to dynamically create files based on the data provided by the wizard. For example, if a wizard generates a tag called <GIZMO> with a single attribute FILEPATH, the template could look as simple as this:

<GIZMO FILEPATH="$${txtFilePath}">

This example will create a file with a single <GIZMO> tag. Notice the syntax $${variablename} that is used to populate the value of FilePath with the actual value entered in the wizard.

WIZML output templates use a high-level markup syntax that works very much like CFML. Supported tags include WIZSET, WIZELSE/WIZELSEIF, WIZLOOP, and WIZINCLUDE. In addition, a simple expression syntax that is a subset of the ColdFusion expression syntax and function library is supported within output templates.


Output templates are driven by the values of parameters, much like ColdFusion templates are driven by the values of Form and URL parameters. Parameters can be output directly or can be used to customize the type of output generated. The values of these wizard parameters can originate from several locations:

To output the value of a parameter within a template, use a double dollar sign escape sequence. For example, to output the value of a variable named Color you would use the syntax $${Color}. While this is the recommended syntax, you can use a simpler form when for a parameter value within the attribute of a WIZ tag. For example, <WIZIF Color= "black"> is valid.

Expressions and functions

In addition to outputting and manipulating simple parameter values, an expression syntax is also provided. To output the value of an expression, you add a set of curly braces to the $$ and include the expression within the braces, for example:

$${ 'This is the ' & Color }
$$( 'The result of 7 divided by 22 is ' & 7/22 }
$$( Left( 'FooBar', 3 ) }

Strings are delimited using the single quote character. Arithmetic and concatenation operators are supported (+,-,*,/,&). The comparison operators LT, LTE, GT EQ, and NEQ are supported, and logical comparisons using AND, NOT, and OR are supported.

For syntax and usage information, see Expressions and Functions in the VTML Reference.

WIZ Tags

The behavior of wizard output templates is controlled by the use of WIZ tags in the template. These tags are like ColdFusion tags except that they are prefixed with the characters WIZ instead of ColdFusion.

Supported tags

These are the supported tags:

Special considerations

Strings used within an output template tag attribute use the C-language convention (\) for escaping special characters. For example, the following attribute uses a newline character to split the value into two lines:

caption="This is line one\nThis is line two"

Other special characters of note include carriage-return (\r), tab (\t), and slash (\\). For example, the following attribute references a template in a directory two levels above the current directory: