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 '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;
 }