Questions - introduction

=Introduction=

Once you created your question groups, you can start adding questions within each group. There are multiple ways through which you can do that. Two solutions are presented below:


 * You may add questions from the survey structure menu;




 * Access a question group and look for the add question quick action button;



=Field descriptions=

When adding a question, you will be asked about the question code, question and help texts, and the general question options:




 * Question code: It represents the ID, number or code for the question that is used for quick identification. This field is normally not displayed to people taking the survey unless specified in the Presentation panel - Show question number and/or code. It is especially useful if you wish to use the LimeSurvey assessments feature and/or the ExpressionScript.

Note: The question code must be unique across the same survey, must start with a letter, and can only contain alphanumeric characters. If you ever try to export your data to SPSS or R, you will discover that the "qcode" becomes the value label, so you have to make the code unique. For the time being, LimeSurvey will support legacy code values, but the Show logic file button will color-code such questions so that you know you should change their names.
 * Question: This is the actual question being asked. There is no real limit to the length of the question here, however if you want to explain how to fill out the question, leave that for the "Help" field. HTML-code can be used, e.g., for including images:

Hint: You can also use the HTML WYSIWYG editor, which offers a GUI to perform the most important tasks such as using different fonts or sizes, including images, etc. To find out more about it, read the following wiki section.


 * Help: This is an optional field. It is useful if a question needs some explanation or you want to explain how it should be answered. When you put text in this field, a "question mark" icon appears on the survey entry screens with the help text right beside it.

Note: The General options tab is accessed by default when you wish to add/edit a question (on the right side of the panel). The most important attributes can be found here such as the question type, question theme, as well as the mandatory attribute. However, you can edit further your question by making use of all the other attributes located under the rest of the tabs (see the below screenshot). To find out more about the multitude ways of designing questions in LimeSurvey, please continue reading the following wiki section.



=General options=

Different tabs are displayed on the right part of the screen. The most basic and important one is the General options tab. The following question settings can be changed from here:


 * Question type: This determines the type of response the survey allows. View the question types section for a description on the various available options;
 * Question group: To change the question group of a question, select from the dropdown list the desired group;
 * Validation: This feature is available in all text- and numeric- type questions. You can use standard regular expressions in this field to validate the responses to the question, and if the responses don't validate against this expression, the user will be prompted to try again before he or she can progress further;


 * Other?: This option can be used only with certain question types. If enabled, the question will include as a possible answer an extra "other" option/answer box, which can be selected by the survey participant if he or she is not satisfied with the predefined answer options;
 * Mandatory?: This setting allows you to require survey participants to answer all the mandatory questions before they can move on to the next question. Note that for ranking question, all items have to be ranked;


 * Relevance: This is the Boolean equation that specifies the question conditions. If it evaluates to true, the question will be displayed to the survey participant; otherwise it is hidden and since it is irrelevant, data for that question is NULLed in the database. Details about how to use this option can be found in the ExpressionScript wiki section.

Note: As it can be observed in the above screenshot, many other options can be used besides the general options tab to customize your question. These more advanced question settings are different for each question type! Therefore, please consult the documentation for your particular question type.

=Importing a question=

You may find on the top of the Add question page a toolbar with different options, one of them being the import one:



The following options will be displayed:




 * Browse: Select the .lsq file (the LimeSurvey question-type format);
 * Destination question group: Select the question group you wish to add the imported question to;
 * Automatically rename question code if already exists: If the question code already exists, enable this option to use another question code. You can also have two questions that use the same question code. However, some issues might appear if you use more complex LimeSurvey options such as the ExpressionScript or when you work with the exported data in R or SPSS (qcode becoming a value label).

Hint: To check if the question codes are unique across your survey, use the Show logic file LimeSurvey function to highlight the similar question codes.


 * Convert resource links: It is usually used together with the ExpressionScript to create advanced question types. If you use them together, complex branching, assessments, validation, and/or tailoring can be done.

To import the question, click on the Import button located on the upper right part of the screen. If succeeded, the question import summary should look like this:



=Information from survey participants table=

Please note that the token tables are called now survey participants tables.

You can insert information or text from the survey participants table into your question so that it can show context related information. For LimeSurvey to do this, the survey needs to be set as not anonymous (i.e: tracked) and it needs to have a survey participants table created.

The following placeholders can be used within a question:

To use any of the placeholders from above, you must type it/them as written above in the question field text. For example:

''Hello {TOKEN:FIRSTNAME}. We sent an email to you using this address {TOKEN:EMAIL}.''



You may also use JavaScript to achieve further question customization. First, you have to allow JavaScript to be used when setting up questions. This can be achieved by deactivating the XSS filter from the global settings of your LimeSurvey installation. However, deactivating this option is not always a good idea - read the following wiki section for further information. Question tailoring via JavaScript:

=Information from previous answers=

LimeSurvey allows survey administrator to insert answer(s) from the previous question(s) into the text of a question:
 * You can refer to answers on the same page and even dynamically update tailored messages as responses change on the page.
 * You can use question code naming - for more details, see the ExpressionScript documentation.

A wizard has been integrated in the WYSIWYG HTML editor (FCKeditor), so that you can easily insert previous question/answer codes. This plugin is called LimeReplacementFields. In order to use this feature in the FCKeditor, click on the "lime between brackets" icon and select a question from the select box. Only answers from previous pages are displayed.



LimeReplacementFields notice: When you want to delete a reference to a {name} tag, please select all chars from the openning bracket to the closing bracket and press delete: DO NOT erase it char by char with the Delete or Backspace key otherwise the field will appear again.

=Styling Questions=

It is possible to generally edit the question layout/design with CSS using the theme editor.