public function getQuestionType()
 {
     /* @var QtiOrderInteraction $interaction */
     $interaction = $this->interaction;
     if (!$this->validate($interaction)) {
         return null;
     }
     $list = [];
     $this->orderMapping = [];
     /** @var SimpleChoice $simpleChoice */
     foreach ($interaction->getSimpleChoices() as $simpleChoice) {
         $this->orderMapping[$simpleChoice->getIdentifier()] = count($this->orderMapping);
         $list[] = QtiMarshallerUtil::marshallCollection($simpleChoice->getContent());
     }
     $question = new orderlist('orderlist', $list);
     $question->set_stimulus($this->getPrompt());
     // Build `validation` object
     $validation = $this->buildValidation();
     if ($validation) {
         $question->set_validation($validation);
     }
     return $question;
 }
 private function buildOrderlist(array $choices, $stimulus = '')
 {
     $list = [];
     foreach ($choices as $value) {
         $list[] = $value;
     }
     $question = new orderlist('orderlist', $list);
     if (!empty($stimulus)) {
         $question->set_stimulus($stimulus);
     }
     return $question;
 }