Introduction to clauses

An introduction to ClauseBase clauses.

Introduction to concepts

An introduction to ClauseBase concepts.

Clause structure

This article explains how to structure your clause, i.e. how to use clause numbering, blank lines, bullets, etc. This article does not go into styling of headings/paragraph numbering and bullets, which is explained elsewhere. Numbering Paragraphs Any new clause will automatically i...

Writing conditions

This article explains how conditions should be written and how ClauseBase evaluates them.

Examples of conditions

The value must be equal to any of a set of predefined values Example: assume you only want to show some text when a property is located in any of the following cities: Antwerp, Amsterdam, Paris or Barcelona. The long way to write this is: {#property^location = "Antwerp" OR #property^loca...

Using codes instead of text fragments

Issue at stake When inserting predefined values in a datafield or predefined answers in a Q&A question, it can be very tempting to use wording that can be inserted as such in the text of a document. For example, when a transport contract allows a delivery to be made in three different countr...

Bold, italic and underline

It is not encouraged to force bold, italic or underline formatting, because this hampers reusability. But when necessary, you can include special codes in ClauseBase that achieve just that.

Special codes

This article provides a summary of codes that can be added to a clause for specific types of formatting, signature lines or to force input into a datafield that is used in a condition.

Document toolbar

The document toolbar is used to customise your document, enabling you to add or remove clauses, change the order, language, numbering, etc.


An enabled?-condition can be used to have a clause optionally enable or disable itself upon a certain condition (not) being fulfilled.


ClauseBase links allow you to make certain connections between files. This article explains what links are, how they are used and how to create them.


How cross-references work in ClauseBase and how to create them.

Special functions

Exhaustive list of all special @functions available.

Introduction to tables

An introduction to tables in ClauseBase: how they are created, formatted, repeated and made conditional.

Deviating table styling

How to insert custom-styling for tables

Legal comments

Legal comments can be added to certain file types to give tips to their users or to clarify the legal impact of their content/use.

Shrinking clauses

Text marked as 'shrinkable' by the clause author can be easily removed/added by using the shrinking slider. This article explains how shrinking works.

Action buttons

Action buttons provide ways of making your clause more powerful: adding a list of preselected subclauses, browsing to a specific folder, etc.


Explains how lists of items ("enumerations") operate in ClauseBase: either as "inline" item lists, or as separate bullets.

File position

A clause can be assigned a preferred position within a document which is suggested to the user when inserting it.


Snippets are ways of making writing new clauses more efficient and/or more readable. They are re-usable pieces of text that can either be used inside one clause (internal snippets) or as part of all clauses (external snippets). Snippets work similar to variables in mathematics or programming lan...


Parameters are an advanced subject that is only relevant to users who frequently have to draft complex clauses & documents. Parameters are a tool that can be used in ClauseBase grammar to make the use of snippets even more flexible. They function as a kind of placeholder. Whereas sni...


One of the most powerful features of ClauseBase is its grammatical knowledge, which allows you to automatically conjugate articles, verbs, adjectives and nouns to accommodate changes in conceptlabels. This page explains how to use these conjugations within the ClauseBase grammar. https://v...

Mixing data types

While drafting clauses in ClauseBase is certainly not "programming" in the traditional sense, ClauseBase borrows some best-practices from traditional programming languages. Legal experts who have never done any traditional programming are often confused by these practices. One such issue is the...


Using the @for and @for-calc functions, you can generate a list of items (snippets of text, numbers, dates, ...) by iterating through another list of values. Programmers will be very familiar with this idea, as for-loops are essential ingredients of most programming languages. For legal professiona...

Clause hierarchies

A clause hierarchy is a file type that contains a set of clauses in a fixed structure. Clause hierarchies can come in handy when you want one clause with its different levels of subclauses to be available in your clause library as one set. Users can then insert the hierarchy with one single click i...

Clause versioning

Why? Thanks to ClauseBase's centralised approach, any change in a library clause will immediately show up in all documents and binders that make use of that clause. Usually, this is exactly what you want, because it avoids that you would have to apply the same change in many different files, as...

Abstract article references

ClauseBase allows you to easily create automatic cross-references to other parts of your document. However, there are a few situations when you want to refer in an abstract way to an "article" or "section" of your document. Examples: The buyer shall buy the assets in the manner set forth in the...

Advanced multi-language features

One of ClauseBase's strongest assets, is how it handles multiple languages. In this article, you can learn all about advanced features. The basics: printing a document in multiple languages When all the clauses of a document are available in multiple languages, you can easily export a docume...