39     public function toXML($a_include_header = 
true, $a_include_binary = 
true, $a_shuffle = 
false, $test_output = 
false, $force_image_references = 
false): string
    42         $ilias = $DIC[
'ilias'];
    46         $a_xml_writer->xmlHeader();
    47         $a_xml_writer->xmlStartTag(
"questestinterop");
    49             "ident" => 
"il_" . 
IL_INST_ID . 
"_qst_" . $this->
object->getId(),
    50             "title" => $this->
object->getTitle(),
    51             "maxattempts" => $this->
object->getNrOfTries()
    53         $a_xml_writer->xmlStartTag(
"item", $attrs);
    55         $a_xml_writer->xmlElement(
"qticomment", null, $this->
object->getComment());
    56         $a_xml_writer->xmlStartTag(
"itemmetadata");
    57         $a_xml_writer->xmlStartTag(
"qtimetadata");
    58         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    59         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"ILIAS_VERSION");
    60         $a_xml_writer->xmlElement(
"fieldentry", null, $ilias->getSetting(
"ilias_version"));
    61         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
    62         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    63         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"QUESTIONTYPE");
    64         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getQuestionType());
    65         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
    66         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    67         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"AUTHOR");
    68         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getAuthor());
    69         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
    77         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    78         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"textrating");
    79         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getTextRating());
    80         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
    89         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    90         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"matchcondition");
    91         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getMatchcondition());
    92         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
    94         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
    95         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"termscoring");
    96         $scores = base64_encode(serialize($this->
object->getAnswers()));
    97         $a_xml_writer->xmlElement(
"fieldentry", null, $scores);
    98         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
   100         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
   101         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"termrelation");
   102         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getKeywordRelation());
   103         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
   105         $a_xml_writer->xmlStartTag(
"qtimetadatafield");
   106         $a_xml_writer->xmlElement(
"fieldlabel", null, 
"specificfeedback");
   107         $a_xml_writer->xmlElement(
"fieldentry", null, $this->
object->getKeywordRelation());
   108         $a_xml_writer->xmlEndTag(
"qtimetadatafield");
   110         $a_xml_writer->xmlEndTag(
"qtimetadata");
   111         $a_xml_writer->xmlEndTag(
"itemmetadata");
   115             "label" => $this->
object->getTitle()
   117         $a_xml_writer->xmlStartTag(
"presentation", $attrs);
   119         $a_xml_writer->xmlStartTag(
"flow");
   125             "rcardinality" => 
"Ordered"   127         $a_xml_writer->xmlStartTag(
"response_str", $attrs);
   129             "fibtype" => 
"String",
   132         if ($this->
object->getMaxNumOfChars() > 0) {
   133             $attrs[
"maxchars"] = $this->
object->getMaxNumOfChars();
   135         $a_xml_writer->xmlStartTag(
"render_fib", $attrs);
   139         $a_xml_writer->xmlStartTag(
"response_label", $attrs);
   140         $a_xml_writer->xmlEndTag(
"response_label");
   141         $a_xml_writer->xmlEndTag(
"render_fib");
   143         $a_xml_writer->xmlEndTag(
"response_str");
   144         $a_xml_writer->xmlEndTag(
"flow");
   145         $a_xml_writer->xmlEndTag(
"presentation");
   149             "scoremodel" => 
"HumanRater"   151         $a_xml_writer->xmlStartTag(
"resprocessing", $attrs);
   152         $a_xml_writer->xmlStartTag(
"outcomes");
   154             "varname" => 
"WritingScore",
   155             "vartype" => 
"Integer",
   157             "maxvalue" => $this->
object->getPoints()
   159         $a_xml_writer->xmlStartTag(
"decvar", $attrs);
   160         $a_xml_writer->xmlEndTag(
"decvar");
   161         $a_xml_writer->xmlEndTag(
"outcomes");
   163         $feedback_allcorrect = $this->
object->feedbackOBJ->getGenericFeedbackExportPresentation(
   167         $feedback_onenotcorrect = $this->
object->feedbackOBJ->getGenericFeedbackExportPresentation(
   171         if (strlen($feedback_allcorrect . $feedback_onenotcorrect)) {
   172             if (strlen($feedback_allcorrect)) {
   176                 $a_xml_writer->xmlStartTag(
"respcondition", $attrs);
   178                 $a_xml_writer->xmlStartTag(
"conditionvar");
   180                     "respident" => 
"points"   182                 $a_xml_writer->xmlElement(
"varequal", $attrs, $this->
object->getPoints());
   183                 $a_xml_writer->xmlEndTag(
"conditionvar");
   186                     "feedbacktype" => 
"Response",
   187                     "linkrefid" => 
"response_allcorrect"   189                 $a_xml_writer->xmlElement(
"displayfeedback", $attrs);
   190                 $a_xml_writer->xmlEndTag(
"respcondition");
   193             if (strlen($feedback_onenotcorrect)) {
   197                 $a_xml_writer->xmlStartTag(
"respcondition", $attrs);
   199                 $a_xml_writer->xmlStartTag(
"conditionvar");
   200                 $a_xml_writer->xmlStartTag(
"not");
   202                     "respident" => 
"points"   204                 $a_xml_writer->xmlElement(
"varequal", $attrs, $this->
object->getPoints());
   205                 $a_xml_writer->xmlEndTag(
"not");
   206                 $a_xml_writer->xmlEndTag(
"conditionvar");
   209                     "feedbacktype" => 
"Response",
   210                     "linkrefid" => 
"response_onenotcorrect"   212                 $a_xml_writer->xmlElement(
"displayfeedback", $attrs);
   213                 $a_xml_writer->xmlEndTag(
"respcondition");
   217         $a_xml_writer->xmlStartTag(
"respcondition");
   218         $a_xml_writer->xmlStartTag(
"conditionvar");
   219         $a_xml_writer->xmlElement(
"other", null, 
"tutor_rated");
   220         $a_xml_writer->xmlEndTag(
"conditionvar");
   221         $a_xml_writer->xmlEndTag(
"respcondition");
   222         $a_xml_writer->xmlEndTag(
"resprocessing");
   226         if (strlen($feedback_allcorrect)) {
   228                 "ident" => 
"response_allcorrect",
   231             $a_xml_writer->xmlStartTag(
"itemfeedback", $attrs);
   233             $a_xml_writer->xmlStartTag(
"flow_mat");
   235             $a_xml_writer->xmlEndTag(
"flow_mat");
   236             $a_xml_writer->xmlEndTag(
"itemfeedback");
   238         if (strlen($feedback_onenotcorrect)) {
   240                 "ident" => 
"response_onenotcorrect",
   243             $a_xml_writer->xmlStartTag(
"itemfeedback", $attrs);
   245             $a_xml_writer->xmlStartTag(
"flow_mat");
   247             $a_xml_writer->xmlEndTag(
"flow_mat");
   248             $a_xml_writer->xmlEndTag(
"itemfeedback");
   253         $a_xml_writer->xmlEndTag(
"item");
   254         $a_xml_writer->xmlEndTag(
"questestinterop");
   256         $xml = $a_xml_writer->xmlDumpMem(
false);
   257         if (!$a_include_header) {
   258             $pos = strpos($xml, 
"?>");
   259             $xml = substr($xml, $pos + 2);
 
addQTIMaterial(ilXmlWriter $a_xml_writer, string $a_material, bool $close_material_tag=true, bool $add_mobs=true)
 
Class for question exports. 
 
addAnswerSpecificFeedback(ilXmlWriter $a_xml_writer, $answers)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
toXML($a_include_header=true, $a_include_binary=true, $a_shuffle=false, $test_output=false, $force_image_references=false)
Returns a QTI xml representation of the question Returns a QTI xml representation of the question and...
 
addGeneralMetadata(ilXmlWriter $xmlwriter)
 
addQtiMetaDataField(ilXmlWriter $a_xml_writer, $fieldLabel, $fieldValue)
adds a qti meta data field with given name and value to the passed xml writer (xml writer must be in ...
 
addAdditionalContentEditingModeInformation(ilXmlWriter $a_xml_writer)
adds a qti meta data field for ilias specific information of "additional content editing mode" (xml w...
 
addSuggestedSolution(ilXmlWriter $writer)
 
addSolutionHints(ilXmlWriter $writer)