Together with Placeholders, Conditions are one of the basic functions to be used in automation. They are green containers used to enclose document text that is only to be included into the document if certain rules are satisfied.

Basically, words, phrases, sentences, or entire clauses or paragraphs drop in and out of the contract depending upon if they are required or not. They operate on “if this, then that” logic. For example, we may have a piece of wording (like a probation clause in an Employment Agreement) which is optional (i.e., it is only included if there is a probation period in the first place). So in the system, you highlight the probation clause and apply a condition to it - Conditions are just like rules, which trigger the inclusion or exclusion of clauses or wording.


A) Condition definition: A function allowing users to create a Boolean logic expression in order to trigger the inclusion of certain text in the document. There are two different types of conditionals: “Block” and “Inline” Conditions

B) Block condition definition: A function used to insert entire clause(s) and/or paragraph(s) into the document based on a Boolean logic expression. They will be wrapped in a light green container and include numbering.

Block condition icon:

C) Inline condition definition: A function used to insert individual sentences or words into the document based on a Boolean logic expression. Inline conditions can be inserted into Block Conditions. They will be wrapped in a dark green container.

Inline condition icon:

Worked example of conditions: In a Loan Agreement, if you want to make sure only certain text appears in the document if the lender is taking security over the borrower’s assets, you would assign the “Attribute” as “Security”, the method as “equals” and the value would be “Yes”. The system will create a corresponding item in the questionnaire where you can create a question related to the taking of security. E.g. “Is Security being granted by the Borrower in connection with the loan?”. If the answer to that question is yes, all the text within the “Security” Condition will appear in the contract.


Conditionality allows users to create text which will only be included in the document if certain conditions are satisfied. For example, this text can be contractual provisions which will appear only if certain factual scenarios are present. Placeholders can also be inserted on a conditional basis – something that will be addressed in the next section.

If we take a document and press the Block IF tool (block condition), it will allow users to make this block of text (a clause) conditional on certain criteria being satisfied. As shown below, the selected block of text will be light green in colour, indicating its status as a block condition.

When inserting a block condition a dialogue box will appear. In the example below, a logic condition has been set up whereby if the “Probationary Period” equals "Yes", the clause drops in to the document.


To create a Condition you will need to start by selecting the text with your cursor that you wish to only display in certain scenarios. Once the text has been selected, click on either the Block Condition or Inline Condition icons under the ‘Automation’ tab to create the Condition. Clicking on either the Block or Inline Condition icons will load the “Condition Builder” below:

A) Condition Builder:

The Condition Builder is separated into three distinct parts, allowing users to assemble a Boolean expression:

(i) Attribute dropdown (orange box): This is the anchor point for the condition and it forms the base element that the logic is applied to. For example, if you want the text “Company” to appear in an NDA only when the Recipient is a corporation and not an individual, you can create the attribute “Recipient Type” equals “Corporation”. The attribute created will generate a question in the questionnaire, essentially for the purpose of asking a user whether the condition has been satisfied for this text to be dropped into the document.

You can also select an existing attribute by clicking the dropdown arrow. This can be used when you have already created the attribute (i.e. as a placeholder) or when you wish to create multiple conditions surrounding the same attribute. Using the above NDA example, if you want the text “Individual” to appear in an NDA only when the Recipient is an individual and not a company, you can select the attribute “Recipient Type” that you have already created and create the condition equals “Individual”.

(ii) Method dropdown (blue box): This dropdown displays the list of methods that can occur in relation to the relevant attribute. An example of a method includes “equals, present or contains etc”

(iii) Value (green box): This area is used to assign what value needs to be present for the condition to be satisfied (so that the relevant text in the Block or Inline Condition appears).

In the “Recipient Type” example, the value would be “Corporation” if you want the text “Company” to appear in the NDA. You can create any value you wish.

(iv) Unknowns (red box): When you select “Show if not answered”, the conditional text you set up will appear as a square bracketed text in the generated document if the question for whether its condition is satisfied is left unanswered. An example of this is shown in the screenshots below.


As the last image demonstrated, Placeholders and Conditionality functions can be used in tandem. In this way, users will be able to layer additional input fields into conditions, thus creating more sophisticated templates to meet contracting needs.

As mentioned in the previous section, the Conditionality function can also introduce additional Placeholders into the document. This means that the answer to question A will lead to follow up questions B and C; which in turn could result in additional clauses being included in the document, and so on.

Let’s demonstrate this with a simple example.

Above, Conditionality and Placeholders are used in setting out the terms of the probationary period.

If the probationary period equals yes then the clause will drop into the document. Thus, the user will then be asked questions about the probationary period duration. These answers will then populate the contract.

The answers to these questions will then appear in the final contract.

The combination of these two functions, combined with an understanding of their relationship with the questionnaire which clients/colleagues will receive, allows users to “stack” conditions and questions on top of each other. This functionality is central to Avvoka’s document automation tool.

Below you can find a video that shows you how to add conditions (among other things):

Did this answer your question?