Define Field Properties
When marking up a document, there are two aspects of the markup you must be aware of—how the answer will appear in the final document and how the answer will appear in the HotDocs interview used to create the final document. You can define these properties in two different places—directly in the field or in properties tables at the end of the document.
This topic includes the following sections:
- Creating Properties Tables for Storing Properties
- Specifying How Answers Are Merged in the Final Document
- Specifying How Questions Appear During the Interview
Creating Properties Tables for Storing Properties
When assigning multiple properties to a variable, rather than include the properties directly in the field, you can include them in a properties table. Using a properties table lets you specify multiple properties for each of your variables without cluttering the actual text of the document.
Properties tables are Word tables that are located at the end of the document, after a special [EndDocument] marker. While you can format the look of the table any way you choose (for example, by making text in the table bold or by shading cells), the actual content of the table must be organized a specific way:
- The first row of the table must identify the variable type. (In the example below, this is Text Variables.) Nothing else should be specified in this row.
- The second row of the table lists the most common properties you assign to all your variables (for example, prompts). This row must include the Name column, but all other columns are optional and can represent the properties you assign most frequently to your variables. If there are more properties for some variables than can be displayed reasonably in the table, you can include an Additional column, where you list the additional properties. (Separate the properties in this column using a semi-colon.)
- The third and all following rows list the individual variables with their associated property values.
Properties are separated by semi-colons. Properties are identified in name/value pair combinations. For example, if you want to create a number variable, you would define the following properties:
format=9,999.00;currency=$;decimal=2
When you use variable tables, you must specify the place in the document where the document text ends and the tables begin. You do this using the [EndDocument] field marker. It appears after the last section of document text but before the first variable table.
Here is an example of an [EndDocument] marker, followed by a variable table:
[EndDocument]
TEXT VARIABLES
Name | Title | Prompt | Additional |
EmployeeName | Name of Employee | Enter the employee's name | format=upper; resource="All employees must submit to a background check to verify their eligibility to work for Hobble Creek Publishing." |
JobTitle | Job Title | Enter the employee's job title | |
JobDescription | Job Description | Complete the following sentence: Job duties shall include: | height=3 |
When you assemble the HotDocs Model using HotDocs (or when you create a HotDocs template from the HotDocs Model), HotDocs looks for variable tables and uses the information in them to create and set properties for HotDocs variables. If no tables are found, HotDocs uses the properties defined in the markup fields of the document.
See Complex Markup Example with Tables (Last Will and Testament) for an example of a HotDocs Model that uses variable tables.
Specify How Answers Are Merged in the Final Document
You can assign properties to a variable that will affect how a user’s answer will appear in the final document. For example, you can assign a format for the answer (such as uppercase or spelled out), whether the answer should break across lines of text or not, and how the field should look if the user chooses not to answer it, just to name a few.
These properties can be defined in one of two places—in the variable field (described just below) or in a properties table (described earlier).
Properties are separated by semi-colons and are identified in name/value pair combinations. For example, the following would represent a text variable and how it should be formatted in the document:
[ClientName;te;format=upper;nonbreak=yes]
Specifically, this markup field will merge the client's name in uppercase, and it will be non-breaking (meaning the name won't break across lines in the document).
When a property is assigned at the field level, it will apply to that field only. If a property is defined in a table, it will be used for all variable references. Where a property is defined both in the field and in a table, the field-level property will take precedence.
The following table describes all of the available field properties with their associated names and values. Default property values are in parentheses. When a property is not specified in a variable field, the default value is assumed. You can include as many properties as necessary, as long as you separate each property with a semi-colon.
Property Name | Description | Value |
type | This specifies the variable type | (text) or (te) number or nu date or da true/false or tf multiple choice or mc computation or co |
format (text fields) | This is the format for text fields, including text variables, multiple choice variables, and computation variables that produce a text answer. It specifies how the answer will be formatted in the final document. | (none)
When you don't specify a format, text is formatted as the user enters it. upper lower title sentence |
format (number fields) | This is the format for number fields, including number variables and computation variables that produce a number answer. It specifies how the answer will be formatted in the final document. | (none)
9,999.00 Nine 9th etc. |
format (date fields) | This is the format for date fields, including date variables and computation variables that produce a date answer. It specifies how the answer will be formatted in the final document. | (none)
d/m/yy dd/mm/yyyy Mn, D, Y etc. |
format (true/false fields) | This is the format for true/false fields, including true/false variables and computation variables that result in true/false. It specifies how the answer will be formatted in the final document. If the value is true, the text to the left of the "/" will be merged. If the value is false, the text to the right of the "/" will be merged. | (none)
true/false yes/no truetext/falsetext |
format (multiple choice fields) | This is the list format, which is used with multiple-select multiple choice variables. It specifies how the answer will be formatted in the final document. | For single-select options:
upper lower title sentence For multiple-select options: A, B and C a; b; and c etc. |
nonbreak | This property can be used to keep users' answers from breaking across lines in the final document. | (no)
yes |
unanswered | This property specifies the text that will be merged into the final document when the variable is unanswered. | any text |
font | This property specifies the font that will be used when the user’s answer is merged into the final document. | (default font used in document)
font name |
comment
com |
This is a comment for the field. It does not affect assembly and will not be merged into the final document. It is used to make in-line notes in the document. | (none)
any text |
For the full value lists and explanations see Format Answers in the Document
Specify How Questions Appear During the Interview
If you assemble the document using HotDocs, the fields you create in the document will appear as questions in a HotDocs interview where you will enter your answers. As such, you can define how the questions will be formatted during this interview.
Again, properties are separated by semi-colons. They are identified in name/value pair combinations, like this:
format=9,999.00;currency=$;decimal=2
The following table describes properties common to all variable fields. Subsequent tables then discusses variable-specific properties:
Common Field Properties
Property Name | Description | Value |
title | Designates an alternate name for the variable, which is used in the HotDocs interview outline. | any text |
prompt | Specifies the text that guides users in knowing how to answer the question during the HotDocs interview.
If you specify a prompt, it will be used as the interview "question." If you do not, HotDocs will attempt to generate a prompt based on the field name. It does this by inserting a space wherever it finds a capital letter. So, for example, the field name ClientAddress would generate the prompt Client address. |
any text |
resource | Provides additional help text for answering the question. This text appears in the resource pane of the HotDocs assembly window | any text |
irrelevant (or irrel) | Specifies how a variable that isn't used in the document (for example, because it's conditioned and the condition resolves to false) should be treated—whether it's grayed out, hidden, or always shown. | (gray)
hide show |
ask | Specifies whether a variable or dialog is asked automatically during the interview. | (yes)
no |
save | Specifies whether the answer the user enters can be saved to an answer file at the end of an interview. | (yes)
no |
warn | Causes HotDocs to display a warning if the variable is left unanswered during the interview. | (yes)
no |
Text Fields
Property Name | Description | Value |
height | Determines the height of the answer field that appears in the interview, allowing it to show more than a single line of text | (1)
Any number between 1 and 12 |
maximum
(or max) |
Determines how many characters can be used in the answer | (as many as the user enters, up to 15,000) |
pattern | Determines a specific pattern that will be used for entering the answer (such as a telephone number or time of day) | (none)
(999) 999-9999 999-99-9999 etc. |