Flexible question routing, validity checks, conditional errors and computations
A Blaise questionnaire may contain complex routes for conditional questioning (in the rules of the data model). It is easy to organise that Fields or Blocks are either activated or skipped depending on a combination of answers to previous questions. Data validity, as defined in the data model, can be checked at each stage of the survey. Range checks can be performed automatically. Conditions can be defined to check plausibility and to avoid data entry mistakes. A hard error dialog may prompt for correction if your defined conditions are not met. Soft errors can be defined that may prompt for rejecting or accepting a less critical error. Field values can be computed online, for example, an Age field can be computed as soon as a birth date has been answered. Begin and end times of an interview can be computed and stored in the data. Like in other program languages, many functions are available for online computations.