The Question class and its subclasses are used to implement all rubric items, quiz questions, and survey questions in Expertiza. Here is the hierarchy.
Choice question
Scored question
a. Scale [√]
b. Criterion [√]
Unscored question
a. Dropdown [√]
b. MultipleChoice
c. CheckBox [√] [should this be a Scored question?}
TextResponse
a. TextArea [√]
b. TextField [√]
UploadFile [√]
Dropdown, MultipleChoice, and Scale questions have a lot in common: you display the alternatives and let the user choose one of them. They also differ, in that only Scale is required to have a numeric sequence of choices; Dropdown and MultipleChoice may, but also may have selections that don’t correspond to anything numeric. We would like to write a single piece of code to display all three types of questions.
The Question class and its subclasses are used to implement all rubric items, quiz questions, and survey questions in Expertiza. Here is the hierarchy.