public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'matchInteraction' map to our 'choicematrix' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#choicematrix'>\n http://docs.learnosity.com/assessment/questions/questiontypes#choicematrix</a>.\n <br/><br/>\n We currently only support validation template `map_response` and `match_correct` for this interaction.\n ", '@attributes' => ['shuffle' => QtiDoc::none('This feature is not supported'), 'maxAssociations' => QtiDoc::none('We do not rely on this attribute.'), 'minAssociations' => QtiDoc::none('We do not rely on this attribute.')], 'prompt' => QtiDoc::support(), 'simpleMatchSet' => ['simpleAssociableChoice' => ['@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'matchGroup' => QtiDoc::none(), 'matchMax' => QtiDoc::none('We do not rely on this attribute.'), 'matchMin' => QtiDoc::none('We do not rely on this attribute.')]]]]); $documentation['simpleMatchSet']['simpleAssociableChoice'] = array_merge($documentation['simpleMatchSet']['simpleAssociableChoice'], QtiDoc::defaultFlowStaticRow()); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'textEntryInteraction' map to our 'clozetext' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#clozetext'>\n http://docs.learnosity.com/assessment/questions/questiontypes#clozetext</a>.\n <br/><br/>\n Currently support `exactMatch` and `map_response` validation.\n ", '@attributes' => ['base' => QtiDoc::none('We always assume base to be 10.'), 'stringIdentifier' => QtiDoc::none(), 'expectedLength' => QtiDoc::none('We ignore this value for now. We do support `max_length` as a validity constraint.'), 'patternMask' => QtiDoc::none(), 'placeholderText' => QtiDoc::none('Our `clozetext` question type does not support placeholder text.')]]); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'inlineChoiceInteraction' map to our 'clozedropdown' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#clozedropdown'>\n http://docs.learnosity.com/assessment/questions/questiontypes#clozedropdown</a>\n <br/><br/>\n Currently support `exactMatch` and `map_response` validation.\n ", '@attributes' => ['shuffle' => QtiDoc::none('Unfortunately `clozedropdown` does not support shuffling possible responses.'), 'required' => QtiDoc::none('`clozedropdown` does not enforce a choice to be selected')], 'inlineChoice' => ['@notes' => 'Attributes are ignored and elements are simply marshalled as HTML content and mapped to value in `possible_responses`', '@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::none(), 'fixed' => QtiDoc::none('We do not support partial shuffle.'), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none()], 'printedVariable' => QtiDoc::none()]]); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'orderInteraction' map to our 'orderlist' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#orderlist'>\n http://docs.learnosity.com/assessment/questions/questiontypes#orderlist</a>.\n <br/><br/>\n We currently only support validation template `match_correct` for this interaction.\n ", '@attributes' => ['shuffle' => QtiDoc::none('This feature is not supported'), 'minChoices' => QtiDoc::none(), 'maxChoices' => QtiDoc::none(), 'orientation' => QtiDoc::none()], 'prompt' => QtiDoc::support(), 'simpleChoice' => ['@attributes' => ['identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none()]]]); $documentation = array_merge($documentation, QtiDoc::defaultBlockStaticRow()); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'gapMatchInteraction' map to our 'clozeassociation' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#clozeassociation'>\n http://docs.learnosity.com/assessment/questions/questiontypes#clozeassociation</a>\n <br /><br />\n Currently support `exactMatch` and `map_response` validation.\n ", '@attributes' => ['shuffle' => QtiDoc::none('No support for `shuffle` on `clozeassociation`')], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.'), 'gapText' => ['@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'matchGroup' => QtiDoc::none(), 'matchMax' => QtiDoc::none('This is ignored, `clozeassociation` can only match to a maximum of 0 response'), 'matchMin' => QtiDoc::none('This is ignored, `clozeassociation` allow zero responses')], 'printedVariable' => QtiDoc::none(), 'textRun' => QtiDoc::support()], 'gapImg' => ['@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'matchGroup' => QtiDoc::none(), 'matchMax' => QtiDoc::none('This is ignored, `clozeassociation` can only match to a maximum of 0 response'), 'matchMin' => QtiDoc::none('This is ignored, `clozeassociation` allow zero responses'), 'objectLabel' => QtiDoc::none()], 'object' => QtiDoc::support()]]); $documentation = array_merge($documentation, QtiDoc::defaultBlockStaticRow()); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'hottextInteraction' map to our 'tokenhighlight' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#tokenhighlight'>\n http://docs.learnosity.com/assessment/questions/questiontypes#tokenhighlight</a>\n <br /><br />\n Currently support `exactMatch` and `map_response` validation.\n ", '@attributes' => ['maxChoices' => QtiDoc::support('This map to `max_selection`'), 'minChoices' => QtiDoc::none('By default this would be zero since we allow no response.')], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.')]); $documentation = array_merge($documentation, QtiDoc::defaultBlockStaticRow()); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'hotspotInteraction' map to our 'hotspot' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#hotspot'>\n http://docs.learnosity.com/assessment/questions/questiontypes#hotspot</a>\n <br /><br />\n Currently only support `exactMatch` validation.\n ", '@attributes' => ['maxChoices' => QtiDoc::partial('Learnosity does not support specifying the count of choices. If this value is more than one, then mcq `multiple_responses` is set to true.'), 'minChoices' => QtiDoc::none('By default this would be zero since we allow no response.')], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.'), 'object' => QtiDoc::support('We map this to the background image. MIME type should be set correctly. Say "image/png"'), 'hotspotChoice' => ['@notes' => 'Attributes are ignored and coordinates are converted to percentage based so they can be mapped to `x`(s) and `y`(s) in `areas`', '@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::none(), 'fixed' => QtiDoc::none('We do not support partial shuffle.'), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'shape' => QtiDoc::partial('Rectangle, circle, and poly shape support only'), 'coords' => QtiDoc::partial('See attribute shape'), 'hotspotLabel' => QtiDoc::none()]]]); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'extendedTextInteraction' map to our 'longtext' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#longtext'>\n http://docs.learnosity.com/assessment/questions/questiontypes#longtext</a>.\n ", '@attributes' => ['base' => QtiDoc::none('We always assume base to be 10.'), 'stringIdentifier' => QtiDoc::none(), 'expectedLength' => QtiDoc::support('The number defined is used to determine `max_length` with the assumption of 5 characters per sentence and set `submit_over_limit` to `true` since it is not a validity constraint.'), 'patternMask' => QtiDoc::none(), 'placeholderText' => QtiDoc::support(), 'maxStrings' => QtiDoc::none('Always assumed to be 1. `longtext` question type does not support multiple separate strings.'), 'minStrings' => QtiDoc::none('Always assumed to be 1.'), 'expectedLines' => QtiDoc::none(), 'format' => QtiDoc::none('We capture response as plain text.')], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.')]); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'choiceInteraction' map to our 'mcq' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#mcq'>\n http://docs.learnosity.com/assessment/questions/questiontypes#mcq</a>\n <br /><br />\n Currently only support simple `exactMatch` validation.\n ", '@attributes' => ['shuffle' => QtiDoc::support('Learnosity does not support partial shuffle, thus ignoring simpleChoice @fixed attribute.'), 'maxChoices' => QtiDoc::partial('Learnosity does not support specifying the count of choices. If this value is more than one, then mcq `multiple_responses` is set to true.'), 'minChoices' => QtiDoc::none('By default this would be zero since we allow no response.'), 'orientation' => QtiDoc::support('By default mcq would be displayed vertically. We support do `horizontal` orientation and map to the question `ui_style`, ie. `type` of `horizontal` and `columns` will be number of the multiple choice options')], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.'), 'simpleChoice' => ['@notes' => 'Attributes are ignored and elements are simply marshalled as HTML content and mapped to `value` in `options`', '@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::none(), 'fixed' => QtiDoc::none('We do not support partial shuffle.'), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none()]]]); $documentation['simpleChoice'] = array_merge($documentation['simpleChoice'], QtiDoc::defaultFlowStaticRow()); return $documentation; }
public static function getInteractionDocumentation() { $documentation['@attributes'] = QtiDoc::defaultCommonInteractionAttributeRow(); $documentation = array_replace_recursive($documentation, ['@notes' => "\n The element 'graphicGapMatchInteraction' map to our 'imageclozeassociation' question.\n Read the documentation: <a href='http://docs.learnosity.com/assessment/questions/questiontypes#imageclozeassociation'>\n http://docs.learnosity.com/assessment/questions/questiontypes#imageclozeassociation</a>\n <br /><br />\n Currently support `exactMatch` and `map_response` validation.\n ", '@attributes' => ['responseIdentifier' => QtiDoc::support()], 'prompt' => QtiDoc::support('We map this to our question `stimulus`.'), 'object' => QtiDoc::support('We map this to the background image. MIME type should be set correctly. Say "image/png"'), 'gapImg' => ['@attributes' => ['id' => QtiDoc::none(), 'class' => QtiDoc::none(), 'xmllang' => QtiDoc::none(), 'label' => QtiDoc::none(), 'identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'matchGroup' => QtiDoc::none(), 'matchMax' => QtiDoc::none('This is ignored, `clozeassociation` can only match to a maximum of 0 response'), 'matchMin' => QtiDoc::none('This is ignored, `clozeassociation` allow zero responses'), 'objectLabel' => QtiDoc::none()], 'object' => QtiDoc::support()], 'associableHotspot' => ['@attributes' => ['identifier' => QtiDoc::support(), 'fixed' => QtiDoc::none(), 'templateIdentifier' => QtiDoc::none(), 'showHide' => QtiDoc::none(), 'matchGroup' => QtiDoc::none(), 'shape' => QtiDoc::partial('Rectangle shape support only'), 'coords' => QtiDoc::partial('See attribute shape'), 'hotspotLabel' => QtiDoc::none(), 'matchMax' => QtiDoc::none('We calculate this value based on responseDeclaration data'), 'matchMin' => QtiDoc::none('We calculate this value based on responseDeclaration data')]]]); return $documentation; }