Data types

These data types are at the core of the template engine. Understanding what each of these types means and how to access and manipulate the data is essential when using template syntax in your pages.

Primitive types

These 4 primitive types contain the raw data and can be rendered directly using a variable tag.

Type Value range Rendered value Tested value
Boolean True or false. "True" or "False". Returns the same as the value.
Date 00:00:00 (midnight), January 1, 0001 Anno Domini (Common Era) through 11:59:59 P.M., December 31, 9999 A.D. (C.E.) in the Gregorian calendar. The short date pattern and the long time pattern. Always returns true.
Number 0 through +/-79,228,162,514,264,337,593,543,950,335 (+/-7.9...E+28) with no decimal point.

0 through +/-7.9228162514264337593543950335 with 28 places to the right of the decimal.

The smallest non-zero number is +/-0.0000000000000000000000000001 (+/-1E-28)
The fixed-point notation with full precision. Returns false when the value is exactly zero, otherwise it returns true.
Text 0 or more Unicode characters. Text values are the same when rendered. In some instances they may be auto-escaped. Returns true for any string with a non-zero length, otherwise returns false.

Composite types

These 3 composite types are used to contain or group together pieces of data. They can not be rendered directly.

Type Value range Tested value
Dictionary A collection containing 0 or more key/value pairs.

Permitted key types are boolean, date, numeric and text. Values can be of any type.
Returns false if empty, otherwise true.
Object An object allowing access to any number of child properties. Always returns true.
List A collection containing 0 or more values of any type. Returns false if empty, otherwise true.