Start page / Template development / Template syntax

Overview of the FirstSpirit template syntax


All template syntax terms are described in detail in the following chapters under the respective navigation point in the left-hand navigation area:


In the context of programming languages an instruction is understood to be a formulated individual regulation to be executed while working through the program. Instructions are usually allocations, control instructions (such as jumps/skips, loops and conditional instructions) and procedure invocations.

Within FirstSpirit, special tags are used for this purpose which begin with an introductory


and end with a


These instructions can be used for all kinds of different outputs in all areas of the Template Store.

See Chapter Instructions.


In general an expression is understood to be a construct which can be evaluated within a context and which delivers a value. A prescribed semantic must be adhered to.

The expressions include, among other things, working with operators or the Invocation of methods.

Operators are used to control command sequences. For example, a differentiation is made between comparative operators (relative operators), arithmetical operators and logical operators, which can also be used for template development in FirstSpirit.

In addition, special string operators and lambda expressions are explained.

See Chapter Expressions.

Data types

In general a data type is understood to be the summary of a specific object set (for example character strings) and the methods allowed on this set (for example conversion methods). Each data type can be assigned a quantity or set of variables or constants which must correspond to the semantics of the data type and on which specific methods assigned to the data type can be invoked.

See Chapter Data types.


In FirstSpirit functions are always defined in the HEADER area of a template. Functions, unlike Methods, are not invoked on an object and are only executed once, during the generation of a page.

See Chapter Functions.

System objects

System objects can be used to access information, data and objects within the templates. This is useful, for example, in the generation and creation of a preview. Such information can be, for example, the starting time of the generation, the ID of the section or the page or the language currently being generated.

See Chapter System objects.

Database queries

Queries can be created to limit the number of datasets of a data source in the output or to output them sorted. Special syntax is used for this.

See page Database queries.

Execution Environment

Part of FirstSpirit's product strategy is to provide numerous extensibility opportunities. The easy implementation of project-specific modifications and extensions may be done via scripts, plug-ins and executables. Depending on the use case, extensions require further information. For example, when calling a script within a workflow, the script must be aware of its execution environment - ContentCreator or SiteArchitect. This information may be polled either directly via a BaseContext object or via the system object #global. This call uses constants of the Enum BaseContext.Env as a parameter.

For syntax see page Execution Environment.

© 2005 - 2024 Crownpeak Technology GmbH | All rights reserved. | FirstSpirit 2024.8 | Data privacy