!!! Conditions

At this page you can find the documentation for conditions. Conditions are an essential part of several markups, e.g. [rules | Doc Rules], [covering lists | Doc SetCoveringKnowledge], [abstraction tables | Doc AbstractionTable] and [test cases | Doc TestCaseTable]. Conditions are used to define a logical expression on some findings and/or outcomes of a d3web diagnostic session, to tell d3web how to action under specific circumstances.

!! Simple Conditions

There is a set of simple conditions to directly test values of specific questions and solutions. The most common is the "=" operator to check for a specific value.

%%prettify
{{{
// check for a certain choice
choice-question = choice

// note: for multiple-choice questions this evaluated to "true" 
// if the choice is selected, regardless is any other choice is 
// additionally selected
// thus the following example might become true for those questions
mc-question = choice1 AND mc-question = choice2

// check if the value is "known" (a value of its normal range is 
// answered) or if the value is "unknown" (the "unknown" choice 
// of the question is selected explicitly)
any-question = known
any-question = unknown

// check the state of a solution
solution = established
solution = suggested
solution = excluded

// check a question to match a regular expression.
// the operator evaluates to "true" if the regular expression 
// matches the whole answer given.
// note: the special "/" before and after the regular expression
text-question = /.*regex.*/
}}}
/%

For more details to regular expression, see e.g. [java documentation of regular expressions | http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html].


!! Numeric Conditions

!! Compound Conditions