1: Attributes for Field Settings
allowDupe - Set to Enable Multiple Submissions
allowDupe attribute allows you to control whether a respondent can resubmit their results using the same UUID. Once the respondent has submitted their answers, if
allowDupe="1" is specified, they can use the back button to change their responses and resubmit any number of times.
Upon submitting the data again, a new entry in the dataset will be created with the their new responses using the same record and UUID. Their previous responses will not be overwritten.
This attribute is VERY RARELY useful and more common in phone-based surveys.
There is a 60-second period in which duplicate responses are discarded. After 60 seconds, a respondent may submit their responses again.
allowedCountries - List of Allowed Countries
allowedCountries attribute controls exactly which countries should be allowed to take the survey. Specify the allowed countries using their lower-case ISO 3166-1 alpha-2 country code (e.g.
All countries not specified and IP addresses which cannot be resolved will be excluded from the survey.
As shown below, you may override the system error message that is shown to excluded respondents:
<res label="sys_invited.geoip">You are not permitted to take this survey from your location.</res>
alwaysSaveData - Set to Allow Data Load at Page Submission
alwaysSaveData attribute allows you to refine the functionality of
loadData below so that respondent data is loaded upon page submission, rather than survey completion. If alwaysSaveData="1" is specified, respondent data is continuously saved and new data is applied to each record after each survey page.
Requires use of
autosave - Set to Auto Save Respondent Progress
autosave attribute controls the ability to save a respondent's state into a database file after every page. If
autosave="1" is specified, a respondent may leave the survey and come back later to the same page where they left off. They will have the option to continue from that point or restart the survey. Information about how a survey is restored from an
autosave is recorded in the
This only works if the respondent has cookies enabled and enters the survey using the same browser. To customize this behavior, see
autosaveKey - Set the Auto Save Key Variable
autosaveKey attribute allows you to create a variable to save a respondent's progress by.
By default, the
autosave attribute uses a cookie to store the necessary information and the respondent must enter the survey using the same browser to continue from the last known position. You can, however, use one or more
extraVariables to store this progress information by (e.g.
autosaveKey="source,GID"). A respondent will be able to enter the survey and continue where they left off using this variable (e.g.
/proj1234?source=asdf1234). If more than one variable is provided, the first one (e.g. source) is checked before the second one (e.g. GID).
autosave script to clear saved progress for respondents. For example:
autosave SURVEY_PATH list (view autosaved keys)
autosave SURVEY_PATH delete list.txt (delete keys in list.txt)
[user@server proj1234]$ autosave . list Assuming . refers to selfserve/9d3/proj1234 source:asdf1234 1 keys total [user@server proj1234]$ echo "source:asdf1234" > delete_keys.txt [user@server proj1234]$ autosave . delete delete_keys.txt Assuming . refers to selfserve/9d3/proj1234 1 keys deleted, 0 missing
browserDupes - Set to Disable Browser Duplication
browserDupes attribute can be set to "cookie", "safe", "strict", or "" (blank) and allows you to control how duplicates are checked. When set, respondents can only complete the survey once and the system stores a cookie to remember them for 1 year.
browserDupes="" is specified, the browser is not checked for duplication.
|cookie (default)||uses a cookie to store and check duplication data|
|"" (blank)||no browser duplication checks are made|
|safe||enables duplication checking by cookies, HTML5, ETag and Flash methods|
|strict||enables duplication checking by experiment fingerprinting technology|
Learn more: How to Implement Digital Fingerprinting System
closed - Set the State of Survey to Closed
closed attribute controls the status of the survey. If
closed="1" is set, then no further respondents will be allowed into the survey.
Instead of using this attribute, you may want to set the state attribute to "closed".
builder:cname - Add a CNAME to the Survey
builder:cname attribute allows you to add a pre-configured CNAME to your survey. For example:
CNAME's must be configured within a company directory prior to use in a survey. Click here to learn more about CNAME configuration and setup.
fingerprint - Specify What Fingerprinting Information to Capture
fingerprint attribute can be set to "none", "all", "etag", "browser", "flash", or "html5" and controls which variables are captured for fingerprinting respondents.
fingerprint="all" is specified, 4 new variables will be captured in the dataset:
fp_html, fp_etag, fp_flash and
fp_browser. These variables will be readily available for processing during the survey or in a virtual question. (Requires a compat level of 109+)
Learn more: How to Implement Digital Fingerprinting System
forbiddenCountries - List of Countries Not Allowed
forbiddenCountries attribute controls which countries should be forbidden from taking the survey. Specify the forbidden countries using their lower-case ISO 3166-1 alpha-2 country code (e.g.
All respondents from the specified countries or with an IP address which cannot be resolved will be excluded from the survey.
Learn more: allowedCountries
loadData - Specify Variable Key to Load Existing Data
loadData attribute allows you to load a respondent's data based on a variable so that they can modify their existing answers.
For example, if
loadData="source" is specified and a respondent enters the survey with a
source that has previously completed the survey, all of the responses from that previous session are loaded.
browserDupes="" and that the variable being used is not set to be unique.
loggedInCanSubmit - Set to Allow Logged-In User Submission
loggedInCanSubmit attribute enables staff members and logged-in users to submit data. If
loggedInCanSubmit="1" is specified, staff and logged-in users will be able to record their data into the survey.
markerTimeout - Specify the Time until Markers Are Released
markerTimeout attribute is an integer value that controls the number of seconds before a partial respondent's markers stop counting in the quota system.
The default, 900 (15 minutes), means that a respondent who enters the survey and qualifies for some markers (e.g.
/Gender/Male) and walks away from the computer for some time, the quota will become available for another respondent after the timeout period.
markerTimeout timeout also affects the "in progress" marker that is set on the respondent once they enter the survey. For example, if a respondent enters the survey on a computer using
?source=1234, then the respondent will have to wait
markerTimeout number of seconds before being allowed back in on another computer.
persistentExit - Prevent the Wrong Exit URL from Being Displayed
persistentExit attribute is a boolean value the affects only duplicate UUIDs and prevents a respondent from being redirected to the wrong exit page if a survey is resubmitted. If this attribute is set to:
presistentExit="0", the status that matches a respondent's current completion status is used for the the redirect. This is the default.
persistentExit="1", a respondent is redirected using their most recently used exit status (assuming the <exit> tag has not been removed).
persistentExit="1" is not compatible with the
requires attribute applies to surveys with a compat level less than 111. If
secure - Set to Force HTTPS Connection
secure attribute is a boolean value that allows you to force respondents to use HTTPS at all times when taking the survey. If
secure="1" is specified, then all respondents will be forced to use a secure connection..
setup - Setup the Survey Boilerplate
setup attribute is a comma-separated list of options to configure your project. This attribute accepts any of the following:
quota, time, decLang and term.
setup="term, quota, time, decLang" is specified, the survey, just like mutators, will create virtual questions to capture information related to terminates, quotas, interview time and language, respectively. You can view this information from the virtual question tables displayed on reports.
Note: Compat level 133+ is required for the default
ss:disableBackButton - Set to Disable Browser Back Button
ss:disableBackButton attribute is a boolean value that controls whether the browser's back button should be enabled for respondents.
ss:disableBackButton="1" is specified, then respondents will not be allowed to use their browser's back button.
Note: It is recommended that you use the survey back button rather than your browser's back button to move backward through a survey.
state - Set the Survey's State
state attribute sets the survey status.
state can be any one of the following:
dev, testing, live or
closed. Each state has unique capabilities:
|dev||This is the initial state of a project for Decipher cloud users when starting a new project. This state is only visible to cloud users. Running simulated data is OK. Fatal errors are suppressed.|
|testing||This is for client testing. Simulated data is OK. Fatal errors are suppressed.|
|live||This is for actively collecting respondent data. Simulated data is not OK. Fatal errors generate notifications to team members.|
|closed||This is when the survey is not actively collecting data. Simulated data is not OK. Once set, respondents will have one hour to finish.|
truesample - Specify TrueSample Validation & Data Capture
truesample attribute controls the validation settings for TrueSample surveys.
The attribute may be set to one or more of the following:
real, unique, engaged, qualified or
off. These will enable the TrueSample system and generate non-virtual questions that will capture the data returned from TrueSample.
unique - Specify a Required Unique Variable
unique attribute is used to limit access to the survey.
extraVariable (e.g. source) as an argument and when a respondent enters the survey, the system will check this variable passed in the URL (e.g. /proj1234?source=0zYxtl4) against the
invited.txt file located in the survey directory. If the variable's value is present in this file and a respondent using that value hasn't already completed the survey, the respondent will be allowed to take the survey. The
unique attribute ensures that there will not be any duplicate respondents to the survey and that only authorized users will take the survey.
This is similar to specifying a sample source
<var> element with
<var name="source" unique="1" filename="invited.txt"/>
unique="1" to a survey will create an additional database which stores respondents' unique variables.
Learn more: Locking Down a Survey by Unique Variables
uniqueOnly - Set to Prevent Validating With invited.txt
uniqueOnly attribute is a boolean value that enables you to use the
unique attribute mentioned above without the use of the
uniqueOnly="1" is specified, the variable provided in the
unique attribute must still be unique but will not reference the
This is similar to specifying a sample source <var> element without specifying a filename.
<var name="source" unique="1"/>
Learn more: Locking Down a Survey by Unique Variables
ss:enableNavigation - Add a Back Button to the Survey
ss:enableNavigation attribute is a boolean value that enables you to add a "Back" button to the survey.
ss:enableNavigation="1" is specified, then a "Back" button will be displayed next to the Continue/Finish buttons. This button will only be shown if there is previous data to go back to.
When the "Back" button is clicked, the previous survey page will be loaded with the data that was submitted and the respondent will have an opportunity to modify their responses and proceed forward (or backward, again).
2: What's Next?
More information about all of the <survey> element's attributes are provided in the documents below: