VisiRule Question Types
VisiRule contains a wide range of question types which can be asked interacively using a web page or chatbot, or used to fetch some data from a data source.
In both cases the value is used to evaluate the expressions attached to the question.
Question Types
Single Choice Questions
Single-choice questions have two or more mutually exclusive options ranging from simple Yes/No, Male/Female to more Hot/Medium/Cold or Alpha/Beta/Gamma/Delta.
Each option typically has a branch associated with it. Two different answers can share the same branch ... this is the equivalent of 'A or B'..
​
Yes No Flow Chart Solutions
The simplest decision tree flowchart contains just Yes No questions. With just a few of these binary questions, a small yes no flowchart with decision based branching can cover many possibilities (2 ^ N). With 6 such questions, there are 64 unique combinations of answers ranging from YYYYYY to NNNNNN; a bit like flipping a coins 6 times. In reality, many of these share the same partial path or outcome. In fact, in some cases, a No early on rules out any need to explore the tree further.
​
3-way Question FlowChart Solutions
By adding an extra option to each question (say Yes, No, Unsure or Hot, Cold, Medium), you can cover a lot more possible outcomes (3 ^ N). So now, asking 6 such questions could result in 729 possible sets of answers.
Multiple Response Questions (i.e. multiple answers)
A multiple response or multi-answer question allows the user to select more than 1 item. VisiRule provides a powerful set language to test for partial inclusions and exclusions of items and combinations of items. This is vital in being able to manage the combinatorial explosion associated with larger answer sets. For instance, if there are 6 items, the number of combinations (singles, doubles, triples etc) is 57 (a Heinz).
​
Automatic Harvesting of Answers
For both single response and multiple response questions, VisiRule 'harvests' values from the relevant expressions, and builds the menus using the items found. This reduces the potential for typographical errors and also saves a lot of typing.
​
Numerical Input Questions
Number entry questions ask the user to enter a value which is to be used in some calculation.
​
Text Input Questions
Open-ended text input questions allow the user to enter some text or look for some text in a database. VisiRule includes a dedicated text processing sub-system to enable responses to be parsed, analysed and logged using a wide range of text-oriented routines.
​
Statement Boxes
Statement boxes act like computable questions. They calculate values using answers from previous questions by executing some mathematical formuale or conditional logic, or some combination of the two. Like questions, statement boxes produce results to be tested using expressions which hang off the statement box.
​
Expression Evaluation
The VisiRule expression language examines and evaluates answers to both questions and statement boxes.. Expressions can range from simple tests such as "Age > 21" or "Status = Married" to more complex tests such as "Residence < [House, Flat] and Value > 100K".
​
The evaluation of the expressions generally takes place immediately after the question or statement concerned but can also be 'deferred' till later. Being able to refer backwards to previous questions and statements by name means you can ask questions when you want them to be asked, and use the answers later.
​