Design 5.5.3

Design 5.5.3


Non selectable response, response hierarchy, headers

We have added the possibility of defining a hierarchy of responses (right now only 2 levels) and to indicate that a response is a header - in other words that it's not selectable.


Thanks to this, you can easily define rotations per group - and indicate if you want the headers to move but not the sub-levels (see BMW and Mercedes) or if everything can move within it (see Renault).

We have also added a property in AskiaScript to indicate if a response is a header or not:

 Response.IsHeader -> boolean

Question.AvailableResponses does not return the header responses if the ADC is old or does not have the setting manageHeader to true in the questions constraints in the config.xml.

So it means the functionality is available with the adcs version 4.

We also added AskiaScript keywords to manage grouped responses and headers:

  • .Roots - new property on the responses object which returns only the root list of responses/items so level 1
  • .Children - new property on the response object which returns the list of child responses for a given response
  • .Parent - new property on the response object which returns the parent response for a given response.

Create links on "level 1" responses

We have added the possibility to indicate that a link only makes level 1 responses "available". If the responses are headers (eg non selectable), the system transforms them into normal responses in the linked question:


So if you link to a question like this one and select the highlighted checkbox,


You will get a response with the following responses BMW, Mercedez, Renault, Aston Martin.

Simplified Semi-opens


We have fields in the database associated to modalities which allows us to have automated semi-opens:

We added a combo box in the list of responses for a semi-open that once set (No, Yes in the Open column) would create an open question below and indented to the closed question. For a loop, it's created after as you do not want the open-eneded to be repeated.

An implicit (not visible) routing is created for the questions accordingly. The open-ended question is not visible therefore its screen is not generated by default. You can change the type of the open-ended question (make it numeric or date) and make it mandatory or not.

If you use links, then a text substitution happens for subsequent questions. BUT if the semi-open response is not selected in the first question, these responses are not available for subsequent questions (even if all or non selected type of links).

The askiascript: we have a property on the response object to know if it’s a semi open response (called .IsOpen boolean) and a property which return a question object (.OpenQuestion). Thanks to these we can access to all the properties and methods of the related question so we can retrieve the value too to use it later, the inputValue etc... to use it on ADCs...

It's important that an ADC indicates if it can support semi-opens or the user would be stuck on the source question if a response is expected. So we added a question constraint to the ADC config.xml: manageSemiOpen as a boolean

So it means the functionality is available with the adcs version 4.

New routing Custom AJAX response

We added a new routing Custom AJAX response This routing have a textbox where we define the desire returned response value

    "action"   : "custom",

Like that we can build the format of the response

It works like Ajax events for live routings so action custom and a response where we include the content of the textbox of the routing.

You should tick during for this routing else nothing happen.

Save a test interview and reopen it


We can now save a test interview and reopen it even if design was closed. We have added the two buttons to load and save an interview in XML - this would be useful to also understand why a real interviews was not running as forecasted.


We have added Interview.SetPosition() method in the AskiaScript for the run an AskiaScript routing. It redirects the respondent to the specified question. This method differs from GoTo, as it will preserve all answers.

Interview.ApplicationName (

We have added Interview.ApplicationName property in the AskiaScript which return the name of the askia application.

The possible values are:

  • “designoffline” for design offline in the preview or test in design offline including jupiter test
  • “designonline” for design online in the preview or test in design online
  • “web” for the survey in the cca so for web survey
  • "voice" for the voice survey
  • "facewindows" for the survey in face for windows
  • "unknown" for the others.

Interview.PercentPosition (

We have added Interview.PercentPosition property in the AskiaScript which return the position level (as a percentage) of the current interview.

It returns a number between 0 and 100.

Difference between .PercentPosition and .Progress: the .PercentPosition take into account the rest of the questions to ask. The .Progress take into account the rest of the variables to ask and also the previous questions with missing answers.

Userdata field in questions

We have had a field called "Userdata" in the database for which we have never provided an interface. We have now! First to enable the interface, go into the options and select yes for whow user data:


Then in your question, loop, chapter pages a new field will be available:


You can enter any string (or JSON) It's available in the Askia Script by calling:


Add tag en masse for questions or responses

We have allowed the user to set a tag to lots of questions (or responses) in one go:




Add new randomisation option Apply to similar questions (

We have added the following options in the rotation dialog box which gives you the possibility to apply the same randomisation seed by default for all similar questions (question object with the same number of defined categories)


And in the settings, we added a new option to select it by default:


Run design through command line to merge or update surveys (

askiadesign can now be used via Command line to merge two surveys (QEX or XML) or update a portion of a survey using a second survey. If you want to know more of the possible options, it's here.

Have more questions? Submit a request