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.


The basic idea is that you wrap both the #concept and the word that potentially needs adjustment in <angular brackets>. When the concept-label of the concept changes, the adjustments will then be automatically made (if no ambiguity exists).

For example:

  • <#Buyer> <negotiates> a deal will be printed as “The Buyer negotiates a deal” in singular, and as “The Buyers negotiate a deal” in plural
  • <#Buyer> <sells> <his> assets will be printed as “The Buyer sells her assets” in singular female, and “The Buyers sell their assets” in plural.

There is no need to wrap a verb/article/adjective/… in angular brackets when you can determine in advance that it will never change, either because of grammatical reasons of because of contractual/legal reasons. For example:

  • In English, a verb in the infinitive or the present continuous tense will not change when the subject (noun) it is associated with, would change. For example, “He is singing” and “They are singing” both use exactly the same present continuous “singing”. Similarly, an auxiliary such as “will” — unlike has/have — does not need to change when its subject changes from singular to plural, so does not need to ever be wrapped in angular brackets.
  • In many contracts, it will not make sense to anticipate that a certain concept will ever be put in singular or plural (or male or female). For example, if a company always delivers at least 100 kilogram of apples, there is no need to anticipate the singular version of “apple” in the delivery-clause.

It is probably useful to understand what ClauseBase is doing behind the scenes.

When the time has arrived to print the final version of a conjugation, ClauseBase will first check the currently chosen concept-label for the associated concept and note its number and (for languages that depend on this) its gender — e.g., singular noun, male.

ClauseBase will then check which grammatical function and conjugation you had written down between angular brackets — e.g., verb, present tense. It will then lookup all the conjugations for that word (lemma) in its dictionary, and choose that conjugation that corresponds to the concept-label’s setttings, in casu the singular, male version of the present tense.


For language such as German and Lithuanian that support cases — nominative, genitive, dative, accusative, instrumental, locative — you can add the case after the concept.

For example <#Buyer: g> or <#Buyer: genitive> would indicate that the concept’s noun should be conjugated in the genitive case. Similarly, you can also write <adjective: #buyer g> to associate a certain adjective with the concept #buyer, but also put the adjective in the genitive form. Third example: <pronoun: #buyer a 2> would put a certain pronoun in the accusative plural, taking the gender from the #buyer concept.

If you want to spell out the cases completely, please consult the following table:

Arabicnominative – accusative – genitive
Bulgariannominative – dative – accusative
Czechnominativ – genitiv – dativ – akuzativ – lokal – instrumental
Danishnominativ – genitiv
Germannominativ – akkusativ – dativ – genitiv
Greeknominative – genitive – accusative
Estoniannominatiiv – genitiiv – partitiiv – illatiiv – inessiiv – elatiiv – allatiiv – adessiiv – ablatiiv – translatiiv- terminatiiv – essiiv – abessiiv – komitatiiv
Finnishnominatiivi – genetiivi – akkusatiivi – partitiivi – inessiivi – elatiivi – illatiivi – adessiivi – ablatiivi – allatiivi – essiivi – translatiivi – instruktiivi – abessiivi – komitatiivi
Croatiannominativ – genitiv – dativ – akuzativ – lokativ – instrumental
Hungariannominative – accusative – dative – instrumental – causal – translative – terminative – essive – inessive – superessive – adessive – illative – sublative – allative – elative – delative – ablative
Lithuaniannominative – genitive – dative – accusative – instrumental – locative
Latviannominativs – genitivs – dativs – akuzativs – lokativs – instrumentalis
Norwegiannominativ – genitiv
Polishmianownik – biernik – wolacz – miejscownik – celownik – dopelniacz – narzednik
Romaniannominativ – genitiv – acuzativ – dativ
Russiannominative – genitive – dative – accusative – instrumental – prepositional
Slovaknominativ – genitiv – dativ – akuzativ – lokalny – instrumental
Sloveniannominativ – genitiv – dativ – akuzativ – lokalni – instrumental
Swedishnominativ – genitiv
Turkishnominative – accusative – dative – locative – ablative – genitive – instrumental

For most languages, it is not necessary to fully spell out the name of the case: usually the first letter is enough, because the cases usually happen to have different starting letters. However, there are some languages where you need type in more letters — e.g. in Finnish you would have to type at least three letters, in light of the presence of the adessiivi, ablatiivi, allatiivi and abessiivi cases.

Instead of using the angular brackets to enforce a certain case, you can also use the @case special function. For example, @case(#Buyer, "g") or @case(#Buyer, "gen") will roughly have the same effect as <#Buyer: g> or <#Buyer: genitive>. However:

  • Unlike the <...>, the @case special function can be combined with other special functions, while still ending up as a defined term that can serve as the input for other special functions. For example, you can write either @plural(@case(#Buyer, "g")) or @case(@plural(#Buyer), "g")) to ensure that a certain concept-label is forced into the genitive plural. You can then “feed” that construction into yet other special functions — e.g. @uppercase(@case(@plural(#Buyer), "g"))) would cause the concept-label to be shown in genitive, plural, uppercase.

    While it is possible to write <#Buyer: g 2> to force the buyer’s concept label into the genitive plural, it is not possible to feed that structure into other special functions, such as @uppercase

Looking up the grammatical case

Native speakers often do not know the grammatical case of words in their mother tongue. To help you finding the grammatical case of a certain word, ClauseBase offers an artificial intelligence (AI) based grammatical function estimator.

In languages with cases, you can click on the Grammatical estimation button, and then position your cursor on any word. Below the input box, you will then see the estimated grammatical case (and gender, number, etc.) of the word.

Please take into account that this estimation is based on artificial intelligence, which has “learned” grammatical features by studying hundreds of thousands of sentences in each language. Even so, it will regularly make mistakes in its assessment. Also, the quality of the estimation will differ per language.

Forcing singular or plural

You can force the use of singular or plural by inserting the number 1 (for singular) or 2 or 3 (for plural) after the colon.

For example, <#buyer: 2> would force the buyer to be put in plural (similar to what @plural(#buyer) would achieve), while <#buyer: gen 2> would force the buyer to be put in both plural and the genitive case. You can also apply this to verbs/adjectives/pronouns — for example, <#buyer: 2> <has: buyer 2> would force both the concept and the verb (to have) to be put in plural.

Associating words

Real-life clauses are usually more complex than the two simple examples above.

A first obstacle is that multiple concepts may be present in the same clause, which cause ambiguity: does the verb causes have to conjugate with buyer or seller in the example If <#buyer> <causes> <#seller> to ... ?

ClauseBase offers two different solutions to group words together:

  • You can use multiple angular brackets to associate a concept with other words — e.g. If <<#buyer>> <<causes>> <#seller> to ....

    You can theoretically use any number of angular brackets, but in practice you probably want to limit this to three levels at most.
  • You can explicitly type in the concept after each associated word — e.g. If <#buyer> <causes: buyer> <#seller> to ...

It is possible but not necessary to type in the hashtag. So both <causes: #buyer> and <causes: buyer> are OK in the second example above.

Conjugating word types besides verbs

Conjugating a verb is the most typical scenario. However, depending on the language, conjugating other types of words can also be useful:

  • Articles — while ClauseBase allows you to configure, at the level of the concept-label, which article to use (a / the / this / no article), there are situations when the article and the concept are separated from each other — e.g. <this> considerable <#defect> shall be fixed will become these considerable defects shall be fixed” in plural.
  • Adjectives (currently only supported in French) — e.g. <ce: objet> <grand> <#-objet> will be printed as “cette grande Table” for concept-label “Table”.
  • Pronouns — e.g. <#Employee> shall convert <his> assets
  • Nouns — e.g. #Supplier shall deliver the goods to <#employee>. <This> <person> shall then subject the goods to a quality-inspection. will print as:
    • singular employee: “Supplier shall deliver the goods to the Employee. This person shall then subject the goods to a quality-inspection.”
    • plural employees: “Supplier shall deliver the goods to the Employees. These persons shall then subject the goods to a quality-inspection.”

Grouping words together

If multiple words that require conjugation are next to each other, then you can group them together.

For example, instead of writing the following in German:

... wenn dies wegen <des: #käufer> <zweiten: #käufer> <Käufers: #käufer> geschieht, dann ...

you can also write the following, shorter version:

... wenn dies wegen <der zweite Käufer: #käufer g> geschieht, dann ...

Specifically for German, where certain prepositions always invoke a certain case in certain constructions, you can also include the special proposition within the group, and leave out the trailing case marker (“g” in the example above):

... wenn dies <wegen der zweite Käufer: #käufer> geschieht, dann ...

In both examples, the result will be conjugated with the genitive case: … wenn dies wegen des zweiten Käufers geschieht, dan …

Avoiding ambiguity

The grammatical function of a word is often ambiguous. For example, in English, the word “table” can be both a noun and a transitive verb (“to place on the agenda”). <#Employee> shall sell <her> car

Unfortunately, software cannot determine a word’s grammatical function with 100% certainty. As even the most advanced artificial intelligence makes mistakes in this area — particularly in languages other than English — you will need to help ClauseBase to determine the word function.

Tip: often you can avoid ambiguity by putting a non-ambiguous conjugation of the word between the angular brackets. For example, stating <#Employee> shall sell <her> car is ambiguous, because the word “her” can be both an indirect object (female equivalent of “him”) and a possessive pronoun (female equivalent of “his”).

It is easier to use the non-ambiguous male versions: <#Employee> shall sell <his> car and <#Buyer> shall give <him: employee> the keys of the house.

Similarly verbs in languages other than French, it can be easier to simply use the opposite number (singular instead of plural) or different gender to avoid the ambiguities, even when grammatically speaking this does not make sense in the editor. For example, instead of writing <#Employé> <demeure> (which is ambiguous because “demeure” can be both a noun and a verb), you can simply write the plural version of the verb <#Employé> <demeurent> , which is not ambiguous, even though it may look weird that the singular employé is combined with the plural verb demeurent.

When a word’s function is ambiguous according to ClauseBase’s internal dictionary, ClauseBase will highlight problems in red:

… following which you can resolve inspect the problem, by positioning your cursor on the word in red:

Custom conjugations

ClauseBase uses a dictionary with hundreds of thousands of lemmas for each language. However, some words will simply not be present in the dictionary. For those exceptional situations, you can however, add custom conjugations to a clause.

Those custom conjugations can be added in two ways: either with a mini-dictionary, or inline.

Mini-dictionary custom conjugations

(currently only available for Danish, Dutch, English, French, German, Italian, Lithuanian, Norwegian, Polish, Portuguese, Spanish and Swedish)

You will automatically be invited to add a word to the custom dictionary of a clause when you wrap an unknown word in angular brackets. For example:

After you choose the right grammatical function (in casu verb), ClauseBase will then switch to the conjugations pane and allow you to enter the various conjugations for the relevant verb.

Depending on the grammatical function and the language considered, you may see many conjugations that can be completed. Do not feel obliged to exhaustively complete everything — e.g., for a verb, probably one tense in singular & plural (perhaps also in male & female in some languages) will be enough for a typical contractual clause.

Inline custom conjugations

Instead of the mini-dictionary approach, you can also add custom conjugations “inline” (i.e., in the clause itself), by separating the conjugated forms by pipes.

Several inline conjugations are available:

  • <singular | plural>
  • <singular male | singular female | plural both genders>
  • <singular male | singular female | plural male | plural female>
  • <MF | male | female>

Some examples:

  • <#Employee> <agrees | agree> will be printed as “The Employee agrees” in singular, or as “The Employees agree” in plural.
  • <#Employee> <is|are> <a man | a woman | men | women> will be printed as “The Employee is a man” in singular male, as “The Employees are men” in plural male, as “The Employee is a woman” in singular female, and as “The Employees are women” in plural female.
  • <#Employee> is <MF | a man | a woman> will be printed as “The Employee is a man” in male, and as “The Employee is a woman” in female.
Was this article helpful?
Mixing data types