!!! 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