Table of Contents
Preface
I. Designer's Guide
1. Quick Start
Template + data model = output
The data model
The template
2. The Data Model
Basics
Scalar variables
Hashes, sequences and collections
Methods
Macros and transforms
Nodes
3. The Template
Overall structure
Directives
Expressions
Interpolations
4. Miscellaneous
Defining your own directives
Defining variables in the template
Namespaces
White-space handling
Alternative (square bracket) syntax
II. Programmer's Guide
1. Quick Start
Create a configuration instance
Create a data model
Get the template
Merging the template with the data model
Putting all together
2. The Data Model
Basics
Scalars
Containers
Methods
Transforms
Node variables
Object wrappers
3. The Configuration
Basics
Shared variables
Settings
Template loading
Error handling
4. Miscellaneous
Variables
Charset issues
Multithreading
Bean wrapper
Logging
Using FreeMarker with servlets
Configuring security policy for FreeMarker
Legacy XML wrapper implementation
Using FreeMarker with Ant
Jython wrapper
III. XML Processing Guide
1. Preface
2. Exposing XML documents
The DOM tree
Putting the XML into the data model
3. Imperative XML processing
Learning by example
Formal description
4. Declarative XML Processing
Basics
Details
IV. Reference
1. Built-in Reference
Built-ins for strings
Built-ins for numbers
Built-ins for dates
Built-ins for booleans
Built-ins for sequences
Built-ins for hashes
Built-ins for nodes (for XML)
Seldom used and expert built-ins
2. Directive Reference
if, else, elseif
switch, case, default, break
list, break
include
import
noparse
compress
escape, noescape
assign
global
local
setting
User-defined directive (<@...>)
macro, nested, return
function, return
flush
stop
ftl
t, lt, rt
nt
attempt, recover
visit, recurse, fallback
3. Interpolation Reference
${...}: Universal interpolation
#{...}: Numerical interpolation
4. Special Variable Reference
5. Reserved names in FTL
6. Deprecated FTL constructs
List of deprecated directives
List of deprecated built-ins
Old-style macro and call directives
Transform directive
Old FTL syntax