conditions
clause), assigns the results of these tests to variables and combines these variables in logic expressions to obtain a result for the logic rule. This is just like an expert troubleshooter performing a series of diagnostic tests and combining the results to arrive at a conclusion.conditions
clause. The first condition is a special variant condition, which we'll ingore for now because it's covered in Variants. The second messaging type test returns the kind of messaging app being used and assigns it to the variable ?type. The third messaging subsymptom test asks the user for messaging-related symptoms and stores the result in the variable ?subsymptom. result
of the cell activity text synthetic test combines the second and third test conditions
using a logic expression that refers to the ?type and ?subsymptom variables. The great thing about logic expressions is that they are quite readable. The cell activity text synthetic test deduces that there must be cell activity if the problem relates to text messages (?type equals the string "msg_text") AND the messaging-related symptom is NOT no messages at all.exists
is
not
and
or
eq
is
or not
for boolean variables.neq
is
or not
for boolean variables.any
eq
any of the literals.none
neq
all of the literals.condition
. ?browse is a boolean logic variable so an equivalent but preferred way of writing this logic expression would be (is ?browse). The function is returns "TRUE" if the variable ?browse is boolean and "TRUE", which is easier to read.