OnTask_UNSW, filtering OR condition

Skip to first unread message

Ngonidzashe Choga

Aug 2, 2019, 4:23:19 AM8/2/19
to OnTask Project Forum
Hi All,

I'm working with the UNSW version of OnTask.
When creating an action, on the compose tab, it doesn't seem obvious how to add an OR condition to the filter.
For example how would one filter on role = 'Tutor' OR grade > 50 on a dataset. The default appears to be an AND condition.

It is possible that I am missing it, however it doesn't appear to be obvious.

Thanks in advance for the help,
Kind regards,

Ngonidzashe Choga

Aug 6, 2019, 7:44:58 AM8/6/19
to OnTask Project Forum
Picture uploaded for additional context.
Screen Shot 2019-08-06 at 13.42.03.png

Abelardo Pardo

Aug 6, 2019, 6:25:29 PM8/6/19
to OnTask Project Forum
Thanks for the new post with the capture. The query builder in UNSW's version is different from the one in the other versions. Perhaps UNSW's developers can clarify this for you?

lorenzo vigentini

Aug 11, 2019, 6:13:04 AM8/11/19
to OnTask Project Forum
hi everyone, 

apologies, we replied directly to Ngoni, but this will be useful to others in the forum too.

Following the workshop at UTS  (https://cic.uts.edu.au/event/ontask-learning-analytics-api-workshop/) where Carlos Prieto ran a session on the practical approaches to giving feedback (not sure if we can pull out the material from the session?), it became apparent that the use of AND/OR in rules was not as straightforward for people not having an IT background.

We removed the ‘OR’ in rules from the UNSW version intentionally to simplify the thinking process and eanble teachers to think one rule at a time which are created without any other dependency, but can be nested in the editor (this functionality has not been pushed in the main repo yet). 

This means something like the following in which only one statement per 'block' will show to students:

If <attended=yes> then [statement1]

else If <attended=no> then [statement2]

If <completedX between value1 and value2 > then [statement3]

else If <completedX between value2 and value3 > then [statement4]

else [statement5]

the 'Tutor' value can be moved at the 'filter' level, so:
- only send message 1 to students with tutor 'Peter'
- only send message 1 to students with tutor 'Tom'

which will have the same or similar structure, but can be individually customised. this will achieve the same effect by creating a filter for each tutor (which would be the same as create a rule with OR conditions) with the bonus of being able to customise the details of each statement.

by treating the variables separately, you don’t need to worry about filling all the conditions as each statement is only affecting the cases in which the conditions are true or matching values.


As the conditions you are showing below are separate it is easier to think about it as a matrix in which the different options are treated separately. I'll make a post with a longer explanation to illustrate the approach and logic.


Best regards



Reply all
Reply to author
0 new messages