Question options

General section

Datafield

One of the most central options is the datafield that is assigned to the question.

Which datafields are shown in the dropdown list, depends on the type of question and (for text questions) the number of answers.

One / multiple answers

Unlike all the other types of questions, text questions can receive multiple answers:

  • a text question with only one answer corresponds to a “text” datafield

  • a text question with multiple answers corresponds to a “list of texts” datafield

Different answer per language

For each type of question, you can indicate that different answers should be possible per language. For example, while the name of a company will (usually) be the same across languages, the same will probably not hold true for the name of a city or the name of a product. In the latter situation, you will want to enable the different answer per language option, to allow the end-user to fill in different answers for each of the languages.

Answer is not mandatory

You can make a question mandatory by un-checking the answer is not mandatory option (which defaults to true).

Tip: when you hold down Shift when adding a question or card, the question will be immediately set to mandatory (instead of the default non-mandatory).

This will effectively cause a red dot to be shown next to the title of the question:

When at least one mandatory question is not filled in, Clause9 will show a warning message to the end-user at the top of the right-side document:

Note that, even when mandatory questions are unanswered, users can still save answers and/or export the document. If this is not desired, you can insert an export options change that disables certain types of export, and is subject to the condition Mandatory questions — One or more unanswered.

The red dots can be collectively disabled through the Q&A options.

Layout section

Answer area

Text questions can optionally be shown in a large answer box.

Unlike the regular box, such large answer box will allow end-users to insert newlines in the text. However, you will have to wrap the datafield in the special function @to-paragraphs if you want those newlines to also appear in your document’s text.

Hide title

Any question’s title can be made to disappear. A typical scenario in which you would like the title to disappear, is in a card with a single question, because the card’s title and the question’s title will then tend to overlap.

Compact

This setting allows you to show both the question and the title horizontally next to each other (if space is available). This can be particularly useful for typical forms for administrative information (name, address, email, etc.), where otherwise a lot of vertical space would be used.

Title color

In addition to setting a card’s border and title color, you can also set a card’s title color. When used sparingly, this may for example help in alerting attention to some questions.

Show unavailable predefines

When enabled, this option will show all predefines of the question, even those that do not meet the conditions attached to them.

This can be useful if you want to show the end-user an exhaustive list of options, even when some of those options happen to be currently unavailable for some reason.

Indent

Within a card, you can indent a question up to three levels. This can sometimes be useful to subdivide related questions.

Merge with previous / next

By default, Clause9 will insert a grey horizontal divider line between each question. You can optionally remove this line by checking the “merge with previous” or “merge with next” checkboxes. (It is sufficient if either of those is set between two questions.)

Suffix

For some questions — typically numerical questions involving units — it can be helpful to insert a suffix in the answer, to clarify how the end-user is expected to answer the question.

Using such suffix, you can avoid a help text or comment such as “assumed to be a percentage” or “please provide in centimeters”.

Help section

Answer hint

Text questions can optionally receive an answer hint, i.e. a text in a subtle grey color that will be shown inside the text box to guide the user’s answer. As soon as the end-user starts typing an answer, the placeholder text will disappear (and will not re-appear until all text would be deleted).

Help text and Memo

See the separate documentation for the various ways in which you can provide help texts.

Interaction section

When filling in complex documents, it is often helpful to allow end-users to click on a certain question to see which clauses are affected by that question and (in the other direction) to click on a placeholder in the contract text to see which question deals with that placeholder.

When a question is linked to a certain datafield, the software can automatically establish such a connection, by calculating which clause contains the first instance of that datafield. In such scenario, the software will convey that an implicit association was found:

In many other scenarios, the connection between the question and the relevant clause is ambiguous or unknown. For such situations, you can use the Link to clause setting, to explicitly select a clause and link it to a certain question.

This can for example also be useful to override the software’s implicit connection — e.g., because the very first clause that happens to use a certain datafield, is actually not the most relevant clause from the end-user’s perspective. To establish a connection

Embedding

This setting allows you to specify whether and how a question should (also) be shown in the document itself. This topic is exhaustively covered on another documentation page.

Visibility

This setting allows you to specify that a question should be made invisible. We cannot stress enough that this only means that this setting will cause the question to be made invisible on the screen. Making a question invisible does not disable the question, so the visibility setting will have no impact whatsoever on whether or not its answer will be taken into account.

For example, a question A can be set to “invisible”, but if it does not get disabled in some way (e.g., through its own condition, or a condition of its hosting card) then that question A will be considered “enabled”. If a question B would thus only be shown if question A is set to enabled, then the visibility setting will have no impact whatsoever on that calculation.

If empty

This setting allows you to specify that (all or a subset of) subsequent questions must be disabled until the current question gets answered. See the separate documentation page for more information.

Validation

Text questions can optionally be validated. Invalid answers will then be rejected until corrected by the end-user.

Validations can be very useful in specific situations, but please do not go overboard with them, because can easily frustrate users.

Think, for example, about all those situations you have probably encountered online where your phone number was not accepted by some form — some websites insist on “+32476123456” while others will require “0032476123456” and yet others allow for “0476/12.34.56”.

If you merely want the phone number to be printed in a party’s contact details, you should probably avoid strict validations.

Clause9 provides a list of pre-programmed validation structures — phone numbers, VAT numbers and national & international IBAN bank account numbers that you can choose from. In addition, you can specify a warning message in each of the languages, that will be shown every time the user enters an incorrect value.

In addition to the predefined validations, you can also easily define your own validations — either from scratch, or by starting from an existing validation structure. These validations are written in a standard mini programming language called “regular expressions” (sometimes abbreviated as regex) that defines what a piece of text should look like.

For example, in the screenshot below, the weird stuff at the right should be interpreted as follows:

  • (+|00) start with either a “+” or the numbers “00”

  • [1-9] next should be a single digit between 1 and 9 (i.e., not a zero)

  • [0-9 -().] next comes either a number, or a hyphen, or one of the parentheses, or a dot

  • {7,} there should be at least 7 repetitions of the character defined in the previous bullet

There are many websites online that allow you to learn about, and interactively experiment with, these regular expressions. A good example is http://www.regex101.com/ (the regex “dialect” used by Clause9 is the JavaScript Regex). Many introduction tutorials exist — see, for example, https://regexone.com/.

If you need even more advanced validation options, or if you want to apply validations to other types of questions, you can program custom functions. Please be aware, however, that this involves a separate programming language.

Integration section

In this section, you can configure several advanced parameters:

  • Send tags and Receive tags allow you to configure how questions should interact with spreadbases and third party services.

  • Other tags allows you to assign special tags to a question. Currently the following tags are supported:

  • Identifier allows you to assign a specific “name” to a question, so that you can easily refer to that questions in certain advanced functions of the software (e.g., when you want to reuse Question A’s answer for Question B).

  • Customize allows you to insert custom programming code.

Productivity tips for setting question options

  • When a question is selected, you can also press Ctrl-Shift-O to either attach the options to the question and show them on the screen (or to hide the options if they were previously visible).

  • Many options can be set at once, by Shift-clicking multiple questions, and then applying a certain setting in batch to the selected questions.

  • You can show a separate pane that will always show (some specific parts of the) options of the currently selected card or question. When you are serially configuring options, you can keep this pane permanently visible.

Last updated