Clause structure

This article explains how to structure your clause, i.e. how to use clause numbering, blank lines, bullets, etc. Numbering Paragraphs Any new clause will automatically include a paragraph number (1.) in its content body. The number 1. denotes the first numbered paragraph. Similarly, the ...


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...

Introduction to clauses

An introduction to ClauseBase clauses.

Document toolbar

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

Introduction to concepts

An introduction to ClauseBase concepts.

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^locat...


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.

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.

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.

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.

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

File position

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

Special functions

Exhaustive list of all special @functions available.

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...


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 snippets already enable you to replace a piece of text that is used multiple times across a clause or across several clauses/documents, ...

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...


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 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...